跨站脚本攻击(Cross Site Scripting)是一种将恶意Javascript代码插入到其他Web用户页面里执行以达到攻击目的的漏洞。今天主要详细讲述如利用Burp+PhantomJS进行XSS检测。
环境准备
- BP插件安装
在burpsuit的Extender模板下,找到BApp Store,搜索XSS Validator,进行安装即可。如下图所示:
- phantomjs安装
去phantomjs官网(http://phantomjs.org/download.html)下载对应计算机版本的phantomjs。这里以windows为例。下载完成后,解压即可。验证phantomjs是否成功,在D:\phantomjs-2.1.1-windows\bin目录下执行
phantomjs.exe
如果出现如下图所示,即为安装成功:
- 下载xss.js
xss.js是phantomJS检测xss漏洞的具体实现。下载地址为:https://github.com/nVisium/xssValidator
- 使用插件
- 利用phantomjs运行xss.js
phantomjs.exe D:\xssValidator-master\xss-detector\xss.js
- 抓包并使用Intruder
- 配置xss选项
为了简单地说明使用方法,其他的参数我们都采取默认配置,只修改Grep Phrase和JavaScript functions两个参数: Grep Phrase修改为xxs_result,作为检测标志和列表头。 JavaScript functions中我们仅使用alert,其他的都暂时去掉。便于我们从控制台观察结果。我们最终的配置结果如截图所示:
- 配置Intruder选项
- 指定Grep Phrase的值
- Intruder的payload生成器需要设置为xssValidator
- 点击左上角start attack开始测试
-
观察结果
如果每一个请求中有对号,则有xss漏洞,如下图所示: