XssFleet-自动化XSS检测利用工具

2026-05-02 18:33:43 1 21
XssFleet介绍
XssFleet是笔者耗时两天做出来的一个脚本,也是笔者真正意义上做的第一个渗透测试工具,本款工具学习了多个实验靶场,高度参照sqlmap的自动化检测与利用的特性,同样实现了Xss的从检测到利用的一体化模式,尽管目前1.0.0版本仍有不足之处,之后会逐渐优化的

工具开源地址:https://github.com/jhli07/XssFleet


工具使用 测试
为验证此工具的可用性,笔者将使用xss-lab进行工具演示(此实验在本地进行)

level1
url:http://127.0.0.1/xss-lab/xss-labs-master/level1.php?name=123


运行如下命令
python xssfleet.py -u "http://127.0.0.1/xss-lab/xss-labs-master/level1.php?name=123"
运行结果如下(本次展示全部内容截图,之后仅展示所需结果截图)

结果显示此处有反射型xss,并给了payload为 "\"><script>alert(1)</script>",以及将例子url也给了出来

访问:127.0.0.1/xss-lab/xss-labs-master/level1.php?name=123"\"><script>alert(1)</script>"



level2
url:http://127.0.0.1/xss-lab/xss-labs-master/level2.php?keyword=test

运行:python xssfleet.py -u "http://127.0.0.1/xss-lab/xss-labs-master/level2.php?keyword=test"

可得结果,测试payload


level5




level8


这里将payload输入进,然后点击“友情链接”

后续不逐个测试了,这里只挑选有代表性的

漏洞利用测试
此功能也是本工具的一大核心功能,可以利用发现的xss漏洞,这里以某一靶场进行测试

成功检测到payload,进行验证


验证成功,进行利用

使用 xssfleet.py --exploit命令,进行漏洞利用模式

(这里需要提前自行下载配置ngrok )

我们测试获取用户cookie值,输入steal_cookie ,后边可以直接选择auto 模式


这样我们就可以利用xss漏洞,进行监听了 ,应用工具给出的payload
当用户访问时,我们就可以捕获到cookie值


至此测试就完成了

附加
此工具还有其他多种功能以及附加参数,例如
普通输出
python xssfleet/xssfleet.py -u "http://target.com"

详细输出 (-v)
python xssfleet/xssfleet.py -u "http://target.com" -v

更详细 (-vv)
python xssfleet/xssfleet.py -u "http://target.com" -vv

最详细 (-vvv)
python xssfleet/xssfleet.py -u "http://target.com" -vvv
GET 请求
python xssfleet/xssfleet.py -u "http://target.com/search?q=test"

POST 请求
python xssfleet/xssfleet.py -u "http://target.com/login" --method POST --data "user=admin&pass=test"
自定义请求头

python xssfleet/xssfleet.py -u "http://target.com/api" --headers "Content-Type:application/json;Authorization:Bearer token123"
详细的信息各位师傅可以去github 上查看,感谢各位师傅。

自评TCV:5

关于作者

Easy07Li5篇文章14篇回复

评论1次

要评论?请先  登录  或  注册
  • 1楼
    2 小时前

    XssFleet 攻击角度分析

    工具定位与实现思路

    XssFleet 采用了与 sqlmap 相似的设计哲学——从检测到利用的一体化闭环。核心工作流为:参数污染测试 → payload 生成 → 漏洞验证 → 实际利用(cookie/session 截取)。这种模式的优势在于减少了工具切换,攻击者可以在同一会话内完成侦察→利用→收获的全流程。

    工具支持 ngrok 反向隧道来接收外带数据(cookie 盗取场景),这是正确的出网思路。盲 XSS 利用依赖外带信道,单纯的内网监听无法处理受害者与攻击者网络隔离的情况。

    攻击流程拆解

    检测阶段: python xssfleet.py -u "target" -v          ↓验证阶段: 工具返回payload + 触发URL          ↓利用阶段: --exploit → steal_cookie (auto模式)          ↓外带阶段: ngrok建立隧道 → 受害者触发 → cookie到达

    POST 请求支持通过 --data 参数传递,这与标准渗透测试流程一致。值得注意的是 --headers 参数支持一次性注入多个头部,对于绕过基础 WAF 的 Content-Type 检测有一定价值。

    实战中的几个观察点

    1. Payload 生成质量

    从 level1 的 payload "><script>alert(1)</script> 来看,工具主要依赖标签注入和属性逃逸。对于存在输入过滤的目标(如 level5 的绕过、大小写混淆),工具的能力取决于其 payload 字典的丰富度。从靶场测试来看,工具至少包含 <script> 标签xi和事件触发器的变种。

    2. 利用模式的实际限制

    ngrok 在国内网络环境下存在稳定性问题,且需要额外部署。如果目标环境存在网络隔离或防火墙拦截出站连接,steal_cookie 功能会失效。此外,HttpOnly 标记的 cookie 无法通过纯 JS 方式读取,工具若未提供绕过思路(如配合社会工程学的表单劫持),则适用范围有限。

    3. 与现有工具链的互补性

    对于成熟的红队场景,XSS 检测通常由 Nuclei、xsstrike、DalFox 等更完善的工具完成,XssFleet 的价值可能在于其 --exploit 模式的一键式利用框架。如果要集成到 CI/CD 或自动化渗透流程,需要评估其 API 接口和批量目标处理能力。

    改进方向建议(从攻击者视角)

    • 增加更多外带数据通道(DNS 隧道、Time-based blind XSS 的延迟判断)
    • 集成常见 CMS 的预制 payload 库,提升已知环境的利用成功率
    • 支持 DOM-XSS 的客户端触发检测
    • --exploit 模式增加 session 劫持、键盘记录等扩展功能

    总体而言,工具在靶场环境表现完整,核心链路通畅。对于实战渗透,建议作为辅助工具配合手动 payload 调优使用。