OWASP
XSS Filter Evasion Cheat Sheet
https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet
翻译
https://github.com/caomulaodao/XSS-Filter-Evasion-Cheat-Sheet-CN
XSS (Cross Site Scripting) Prevention Cheat Sheet
XSS payload cheat sheet
印象笔记已备份
XSS cheatsheet Esp: for filter evasion
http://n0p.net/penguicon/php_app_sec/mirror/xss.html
Basic and advanced exploits for XSS proofs and attacks
http://brutelogic.com.br/blog/cheat-sheet/
XSS 利用框架
BeEF
BeEF (墙裂推荐)
http://beefproject.com/
https://github.com/beefproject/beef
BlueLotus XSSReceiver
https://github.com/firesunCN/BlueLotus_XSSReceiver
Xsser.me
国内常见平台
XSS Shell
XSS Shell
https://github.com/portcullislabs/xssshell-xsstunnell
http://www.freebuf.com/articles/web/24114.html
AttackAPI
AttackAPI (上古项目年久失修)
https://www.darknet.org.uk/2007/01/attackapi-20-alpha-javascript-hacking-suite/
http://netsecurity.51cto.com/art/200902/109480_all.htm
Anehta
Anehta (阿内塔)
作者是 吴翰清/道哥/刺/aullik5
http://anehta.googlecode.com/svn/
http://anehta.googlecode.com/svn/trunk
github 搜索 anehta
https://github.com/jwonline99/anehta
XCon 2008
http://www.slideserve.com/greg/anehta-xss
XSS Proxy
http://xss-proxy.sourceforge.net/
xssf
https://code.google.com/archive/p/xssf/downloads
XSS漏洞攻击测试平台—XSSF v3.0
http://www.freebuf.com/sectool/7902.html
XSS 的危害
- 弹登录框钓鱼,窃取用户凭证
- 获取cookie,登录受害者帐号,进而获取隐私。
- 劫持用户浏览器会话。
- 强制弹框广告,刷流量
- WebSocket 获取客户端 真实IP,开放端口
- 获取用户浏览历史
- 结合CSRF扩大战果
- 劫持大量用户后可以DDoS (分布式扫描器)
- 传播 XSS Worm
XSS 分类
反射型 XSS
容易出现在搜索栏,用户登录口等处。
存储型 XSS
一般出现在网站的 留言,用户反馈,评论,博客日志 等
DOM XSS
一般出现在含#
的URL中。
几种常见的XSS注入位置
属性
构造思路
- 闭合属性
- 伪协议
script 标签内
普通的位置
绕过的技巧
1. JavaScript伪协议
可能支持伪协议的属性包括
举例
2. 空格回车tab (低版本IE)
chrome 回车测试有效,其他无效。
|
|
3. HTML encoding
十进制 ASCII / 十六进制 ASCII 均可
需要注意的是,十六进制编码时不能省略分号,不然可能会被错误识别。
以下两个例子chrome均成功执行。
|
|
4. 事件触发
|
|
可能触发的事件函数包括
5. 利用CSS触发
XSS跨站脚本 P29
chrome 测试无效, 可能低版本IE有效。
|
|
还有
6. 扰乱过滤规则
基本的payload
大小写混淆
双引号/单引号/无引号
畸形payload
全角半角字符混合
掺入浏览器忽略的字符
样式表中浏览器会忽略/**/
,\
,\0
CSS编码绕过方式
HTML注释字符解析异常
HTML encoding
7. eval 的一点姿势
|
|
8. IE 边缘技巧
P36
VBScript.Encode
JScript.Encode
9. 拆分跨站法
略 P37
挖掘邮箱系统XSS可以从CSS入手。
XSS EXP 开发的基本技巧
最基本的
DOM注入
eval + #
XSS Downloader
备选存储技术
cookie
Flash Shared Object
HTML5 localStorage
挖掘XSS的辅助工具
手动工具
- Firebug
- Tamper Data
- Live HTTP Headerss
- Fiddler
- BurpSuite
自动化/半自动化工具
1.AWVS
AWVS
2.XSSDetect (ASP白盒)
Visual Studio .NET插件 白盒方式
3.Ratproxy
https://github.com/wallin/ratproxy
http://sectools.org/tool/ratproxy/
4.Appscan
IBM最新XSS Analzyer将提供700万XSS漏洞利用规则
http://www.freebuf.com/news/4896.html
5.Xelenium
Xelenium, Security Testing with Selenium
https://sourceforge.net/projects/xeleniumsecurit/
XSS漏洞扫描器 – Xelenium
http://www.freebuf.com/sectool/5068.html
6.Ra2 DOM XSS Scanner
https://github.com/dpnishant/ra2-dom-xss-scanner
DOM-based XSS扫描工具-Ra.2发布
http://www.freebuf.com/sectool/5804.html
7.snuck
https://github.com/mauro-g/snuck
自动XSS过滤突破工具—snuck
http://www.freebuf.com/sectool/6009.html
Snuck:一款自动化XSS漏洞扫描工具(含下载)
http://www.freebuf.com/sectool/124845.html
8.X5S
使用Fiddler的X5S插件查找XSS漏洞
http://www.freebuf.com/articles/web/30960.html
9.OWASP_Xenotix_XSS
https://www.owasp.org/index.php/OWASP_Xenotix_XSS_Exploit_Framework
使用Xenotix_XSS框架进行自动化安全测试
http://www.freebuf.com/sectool/42722.html
10.Xsscrapy
https://github.com/DanMcInerney/xsscrapy
快速、直接的XSS漏洞检测爬虫 – XSScrapy
http://www.freebuf.com/sectool/43194.html
11.Xssaminer(PHP白盒)
XSSaminer
如何使用XSSaminer工具在PHP源码中挖掘XSS漏洞
http://www.freebuf.com/sectool/105888.html
12.BruteXSS
https://github.com/shawarkhanethicalhacker/BruteXSS
https://github.com/ym2011/penetration/tree/master/BruteXSS
BruteXSS:XSS暴力破解神器
http://www.freebuf.com/sectool/109239.html
13.GroundControl
https://github.com/jobertabma/ground-control
一款用于发现SSRF、XXE、XSS漏洞的小工具
http://www.freebuf.com/sectool/137367.html
XSS的防御
1. 过滤器
XSS过滤器 – DeXSS V1.2
http://www.freebuf.com/sectool/4056.html
XssHtml – 基于白名单的富文本XSS过滤类
http://www.freebuf.com/sectool/37106.html
Anti_XSS (Microsoft Anti-Cross Site Scripting Library)
2. WAF
云WAF与本地WAF
3. http only
有HTTP Only 标记的cookie字段,在浏览器中是无法通过JavaScript读取的。
一定程度上防御了XSS.
4. 客户端防御 Noscript
Noscript插件
其他参考资料
说一说新手在寻找XSS时所存在的一些误区
http://www.freebuf.com/articles/web/6389.html
XSS跨站脚本 攻击剖析与防御 邱永华
渗透测试视角的XSS
把能跑的自动化挖掘工具都试验一下。
之后再找几个潜在盲打点扔一把payload。
这样对于大多数普通要求的渗透测试而言一般是足够了。
其他漏洞案例
金融系统的XSS挖掘
小猪理财搜索处DOM型XSS
https://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=27457&page=1&extra=#pid370200