这是基于已发布的原始思路 "xssfinder" 的扩展版本。此私有版本允许攻击者不仅执行 GET 请求,还能执行 POST 请求。此外,还可以通过 Burp 或其他隧道代理每个请求。
将 example.app-settings.conf 重命名为 app-settings.conf 并调整设置。开箱即用通常没问题,但根据目标,我建议调整块大小。
此工具不通过 CLI 接受任何参数,因此只需输入:
python3 extended-xss-search.py
可以设置大量选项和设置,以下是一些说明。
主配置文件是 "app-settings.conf",所有操作都必须在该文件中完成!除此之外,还有一些其他文件允许设置更复杂的数据,例如 headers、URL 和 cookies。
config/cookie-jar.txt
使用此文件添加 cookie 字符串。我通常复制在每个 Burp 请求中可以看到的 cookie 字符串。只需复制 "Cookie:" 头的值。默认文件中提供了一个示例输入。
config/http-headers.txt
此文件定义了添加到请求中并会被操纵(每个 header 都会添加 payload)的 HTTP headers。最重要的 headers 已经在该文件中。但欢迎添加更多。
config/parameters.txt
该工具有暴力破解 GET 和 POST 参数的功能。在这种情况下,这些参数(加上查询字符串中的参数)将被使用。每个参数都会将 payload 作为值。最重要的参数已经在该文件中。
config/urls-to-test.txt
这就是你需要使用的文件!请在此处添加要扫描的链接。允许以下格式:
当检测到最后一种情况时,会在前面加上 "http://"。此工具旨在配合一个良好的 URL 列表使用。获取列表的一个好方法是使用 Burp 导出。这样你就会得到一个有效的 URL 列表。你只需添加你的 cookies。
logs/
这是日志文件夹,所有内容都会记录在此!
app-settings.conf 定义了程序工作流。这是最重要的文件,你可以在此激活/停用不同的模块。
基本设置
HTTPTimeout
某些请求可能需要很长时间。你可以在此定义单个请求的最大执行时间。我建议值在 2 到 6 秒之间。
MaxThreads
线程越多,脚本运行越快——但由于我们要处理大量连接,在我的个人电脑上通常保持低于 10,在 VPS 上大约 30。
攻击类型
OnlyBaseRequest
将此设置为 true 将只进行“基础请求”——这意味着只会爬取 URL 列表并提取有兴趣的参数。你可以用这个快速填充你的 Burp 站点地图。
UsePost
将此设置为 "false" 可以跳过 POST 请求。
UseGet
类似地——如果设置为 "false",则跳过 GET 请求。
攻击类型设置
GetChunkSize
每个请求测试多少个 GET 参数?
PostChunkSize
每个请求测试多少个 POST 参数?
隧道化
也可以使用隧道,例如 "127.0.0.1:8080"(Burp 代理),以便在 Burp 中监控所有流量。
Active
将此设置为 "true" 将强制脚本使用隧道连接。
Tunnel
在此设置你的代理服务器 "ip:port"。
结果是,当你在 Burp 中打开时,可以查看 HTTP 历史记录:



请创建一个 issue 并标记为功能请求。
你喜欢这个工具吗?它帮你拿到赏金了吗?想要回报/支持我吗?为什么不呢!