简介 #

XSStrike是一款检测Cross Site Scripting的高级检测工具。它集成了payload生成器、爬虫和模糊引擎功能。XSStrike不是像其他工具那样注入有效负载并检查其工作,而是通过多个解析器分析响应,然后通过与模糊引擎集成的上下文分析来保证有效负载。除此之外,XSStrike还具有爬行,模糊测试,参数发现,WAF检测功能。它还会扫描DOM XSS漏洞。

特性 #

反射和DOM XSS扫描

多线程抓取

背景分析

可配置的核心

WAF检测和规避

浏览器引擎集成为零误报率

智能负载发生器

手工制作的HTML和JavaScript解析器

强大的模糊引擎

支持Blind XSS

完善的工作流程

完整的HTTP支持

来自文件的Bruteforce有效负载

有效载荷编码

python编写

下载安装 #

下载地址:https://github.com/s0md3v/XSStrike

最新版支持python3

windows、linux系统都可以运行

完成下载之后,进入XSStrike目录:

cd XSStrike

接下来使用如下命令安装依赖模块:

pip install -r requirements.txt

使用方法 #

Python3 XSStrike.py -u http://target

参数:

-h, --help //显示帮助信息

-u, --url //指定目标URL

--data //POST方式提交内容

-v, --verbose //详细输出

-f, --file //加载自定义paload字典

-t, --threads //定义线程数

-l, --level //爬行深度

-t, --encode //定义payload编码方式

--json //将POST数据视为JSON

--path //测试URL路径组件

--seeds //从文件中测试、抓取URL

--fuzzer //测试过滤器和Web应用程序防火墙。

--update //更新

--timeout //设置超时时间

--params //指定参数

--crawl //爬行

--proxy //使用代理

--blind //盲测试

--skip //跳过确认提示

--skip-dom //跳过DOM扫描

--headers //提供HTTP标头

-d, --delay //设置延迟

测试 #

下图是通过工具Fuzzing出来的payload:

利用payload进行一下测试,测试结果如下图所示:

1.测试一个使用GET方法的网页:

python3 xsstrike.py -u http://example.com/search.php?q=query

2.测试POST数据:

python3 xsstrike.py -u "http://example.com/search.php" --data "q=query"

python3 xsstrike.py -u "http://example.com/search.php" --data '{"q":"query"} --json'

3.测试URL路径:

python3 xsstrike.py -u "http://example.com/search/form/query" –path

4.从目标网页开始搜寻目标并进行测试

python3 xsstrike.py -u "http://example.com/page.php" –crawl

您可以指定爬网的深度,默认2:-l

python3 xsstrike.py -u "http://example.com/page.php" --crawl -l 3

5.如果要测试文件中的URL,或者只是想添加种子进行爬网,则可以使用该--seeds选项:

python xsstrike.py --seeds urls.txt

6. 通过解析HTML和暴力破解来查找隐藏的参数

python3 xsstrike.py -u "http://example.com/page.php" –params

7.盲XSS:爬行中使用此参数可向每个html表单里面的每个变量插入xss代码

python3 xsstrike.py -u http://example.com/page.php?q=query --crawl –blind

8.模糊测试—fuzzer

该模糊器旨在测试过滤器和Web应用程序防火墙,可使用-d选项将延迟设置为1秒。

python3 xsstrike.py -u "http://example.com/search.php?q=query" –fuzzer

9.跳过DOM扫描

在爬网时可跳过DOM XSS扫描,以节省时间

python3 xsstrike.py -u "http://example.com/search.php?q=query" --skip-dom

10.更新:

如果跟上--updata选项,XSStrike将检查更新。如果有更新的版本可用,XSStrike将下载更新并将其合并到当前目录中,而不会覆盖其他文件。

python3 xsstrike.py --update