赏金猎人们都该备一个:Turbo Intruder 暴力美学科普
原创
升斗安全XiuXiu
升斗安全XiuXiu
升斗安全
2026年10月29日 18:13
广东
去阅读
【文章说明】
- 目的:本文内容仅为网络安全技术研究与教育目的而创作。
- 红线:严禁将本文知识用于任何未授权的非法活动。使用者必须遵守《网络安全法》等相关法律。
- 责任:任何对本文技术的滥用所引发的后果自负,与本公众号及作者无关。
- 免责:内容仅供参考,作者不对其准确性、完整性作任何担保。
阅读即代表您同意以上条款。
【内容描述】
Turbo Intruder 是 PortSwigger 研究员 James Kettle(也是 Backslash Powered Scanner 的作者)在 Bugcrowd LevelUp #03 上发布的一款研究级开源 Burp Suite 扩展,专为\"发海量请求\"而生。本文用一线赏金猎人的视角,把它讲透:自动化攻击真正的命门为什么是请求量、它凭什么比异步 Go 脚本还快、三分钟怎么上手、速度调优的几板斧、以及它最拿手的竞态条件(race condition)挖掘。面向赏金猎人和安全爱好者,重实战、轻文档。
干众测这些年,我越来越确信一件事:大多数\"没挖到\"的洞,不是你思路不行,是你的工具发不出足够多的请求。
密码爆破差最后几千次没撞上、竞态条件就差那几毫秒没挤进同一个窗口、关键目录就差那么一轮枚举没扫到——这些失败你事后根本无从得知。自动化攻击的命门,说白了就是请求量。谁能在单位时间里把更多请求怼到目标上,谁就离洞更近。
这也是我今天想跟你们唠的工具:Turbo Intruder。
一、它到底是什么来头
它出自 PortSwigger 的研究员 James Kettle,就是写 Backslash Powered Scanner 那位,在 Bugcrowd 的 LevelUp #03 线上会上现场演示并开源的。本质上,它是个从零手写 HTTP 栈、以速度为唯一设计目标的 Burp 扩展,专门补 Burp Intruder 的短板——那些需要极高速度、超长时长、或者特别复杂逻辑的攻击。
作者自己有个特逗的细节:他第一次公开现场演示,是在一家酒吧的地下室,连的还是隔壁咖啡店的 wifi,照样跑出每秒几百个请求。这工具靠的是网络层的效率,不是靠你本地带宽。
它身上贴着四个标签,记一下:
- 快:手写 HTTP 栈,很多目标上能碾压甚至\"时髦的异步 Go 脚本\"。
- 稳(能长跑):内存占用平滑,多日攻击不崩;还能丢到命令行无头跑。
- 灵:攻击逻辑用 Python 配置,签名请求、多步攻击序列都能写;自定义栈还能处理把别的库搞挂的畸形请求。
- 省心:从 Backslash Powered Scanner 搬来的高级差异算法,自动帮你把\"无聊响应\"过滤掉,两下点击就能拿到有用结果。
当然它不完美:上手比 Burp Intruder 难,网络栈没核心 Burp 那么久经考验,而且它是为\"单主机海量请求\"设计的,你要往一大堆不同主机各发一个请求,作者明确推荐用 ZGrab,别硬拧。
二、三分钟上手
装:Burp 里 Extender 标签下进 BApp Store 搜 Turbo Intruder 装好就行;硬核一点也能 gradle build fatJar 自己编,再从 Extender 加载 jar。
用:在请求里高亮你想注入的位置,右键选\"Send to Turbo Intruder\"。弹出的窗口里,你高亮的那段会被替换成 %s,这就是 payload 落点的占位符。默认脚本对简单场景开箱即用,把词表路径改改就能跑,Ctrl+Enter 启动或停止
三、想更快?速度调优几板斧
这部分是赏金猎人最该啃的,因为默认配置远没到极限。
- 把请求削瘦:删掉没必要的 header 和 cookie,出站流量越小越快。
- 把响应压小:试 HEAD 方法、Range header(Agarri 发现的技巧)、Accept-Encoding,响应小了吞吐就上去了。
- 选最快的引擎:优先级大概是
Engine.HTTP2(可用时最快)> 调好的Engine.THREADED>Engine.BURP2>Engine.BURP。 - 调引擎参数:Burp 系列只调
concurrentConnections;前两个引擎要动pipeline、requestsPerConnection、concurrentConnections。目标只有一个,把 RPS(每秒请求数)顶上去,同时让 Retries 接近 0。作者 remote 实测的最高纪录是 30,000 RPS。 - 优化你的回调代码:
table.add()很吃 Swing 线程,能不在结果表里放就别放;别在回调里用正则和字符串循环拼接。 - 上服务器:命令行模式 + 租一台离目标最近的机器,速度还能再榨一截。
补一句保命的:目标本身可能是瓶颈。一台弱服务器每请求要跑 15 条 SQL,你再怎么调也快不了。不过反过来说,这种也容易触发竞态条件。
四、它最狠的活:找竞态条件
默认脚本是\"流式\"发请求的,对找 race 并不友好。要找竞态,得让所有请求挤进同一个极小的时窗口同时命中,这得用 race.py 里那套专门搭的\"gate\"机制。真实案例作者给过:AWS Cognito 的密码重置码暴力破解,就是这么找出来的。
五、长跑与多主机
要打几百万次请求,记住两条:第一,别把响应塞进结果表,每一条都吃内存;第二,流式读词表,别一次性 load 进内存——逐行处理,别 readlines() 全读。
多主机?每个引擎只能跟一个 TCP 端点通信,想打多个站就起多个引擎。但作者反复强调:这工具就是为单主机设计的,多主机少量请求还是交给 ZGrab。
Turbo Intruder 这类工具,本质是把\"请求量\"这个被忽视的命门,交回你手里。它不难,但值得你花一下午把引擎参数摸熟。众测里很多中高危,差的其实就是那几千次请求。
最后郑重一句:只在你明确授权的范围内使用。它设计上用少量并发连接,不太会像传统洪水那样把别人连接池打满,但往资源吃紧的页面猛怼,照样能让站点变慢甚至挂掉。作者原话送给大家:\"祝你好运,玩得开心,尽量别把东西搞垮。\"
如果你觉得这篇把 Turbo Intruder 从\"是什么\"到\"怎么调快\"讲明白了
👍点个赞,让更多挖洞的兄弟看见;
💬关注我,后面还有 Burp 生态里那些\"藏在菜单深处\"的神器;
🔁顺手转发给还在拿 Burp Intruder 硬刚海量请求的队友;
📣推荐给做安全的朋友,这种\"速度怪兽\"多一人会,就少走一年弯路。
咱们下篇接着扒。保持好奇,守住边界。
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论