XSS漏洞-XSS攻击方法总结(六)

1.1 XSS攻击常用编码

1.1.1 URL编码

url的设计者考虑到安全传输问题,防止url字符丢失,所以选用了相对较小的通用的安全字母表。另一方面url的设计者希望url是完整的,有时候需要url中包含除去通用安全字母表之外的二进制数据和字符(比如中文)。所以url引入了一种转义机制,将不安全的字符编码转为安全字符再进行传输。

  • 百分号编码:url 编码包含一个百分号(%),后面跟着两个表示字符ASCII码的十六进制数。例如:空格转为”%20″。

1.1.2 HTML编码

一些保留字符出现在文本节点和标签值里是不安全的,比如”<>”会导致浏览器误认为标签,如果想要正确的显示这些字符需要使用html编码。

  • 实体编码:一般以”&”开头,”;” 结尾,可以不加”;”。如:“<”转为”&lt;”
  • 进制编码:以”&#”开头,加上字符的数值,”;”结尾,可以不加”;”。字符的数值可以是任意十进制ascii码或unicode字符编码,十六进制的数值需要在编码数字前加”x”。

1.1.3 Javascript编码

  • 数字形式:\u后面加4位16进制数字(或\x后加2位16进制数字),按字符的unicode数值编码,不足位数以零填充。如: “<“转为”\u003c”或”\x3c”,其中”\u”开头的Unicode转义方式可以用在字符串之外的位置,其他的不可以。

1.1.4 Jsfuck编码

JSFuck是一种深奥的 JavaScript 编程风格,以这种风格写成的代码中仅使用(、)、+、[、]、! 六种字符,它只使用六个不同的字符来编写和执行代码,这种编码方式在CTF竞赛中非常常见。

http://www.jsfuck.com/

图片[1]|XSS漏洞-XSS攻击方法总结(六)|leon的博客

1.1.5 编码方式总结

图片[2]|XSS漏洞-XSS攻击方法总结(六)|leon的博客

温馨提示:本文最后更新于2022-12-20 20:57:35,已超过436天没有更新。某些文章具有时效性,若文章内容或图片资源有错误或已失效,请联系站长。谢谢!
转载请注明本文链接:https://blog.leonshadow.cn/763482/2653.html
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享