拿Kali去跑DDoS,进行这事儿本身就挺拧巴的攻击。Kali是进行个渗透测试发行版,预装了几百个工具,攻击但它从来不是进行为流量攻击设计的。你拿它去轰某个IP,攻击最可能的进行结果是自己先断网,或者被ISP顺着流量找上门。攻击我见过太多人把Kali当万能钥匙,进行结果连hping3的攻击参数都没搞明白就敢往生产环境上招呼。
先说清楚一个事实:Kali里能用的进行DDoS工具,本质上都是攻击压力测试工具的变体。hping3、进行slowloris、攻击GoldenEye、进行t50,这些名字听着唬人,实际原理就那么几类——SYN flood、UDP flood、HTTP慢连接。它们能起作用的前提是对面没有基础防护。现在随便一个云服务商都有流量清洗,你拿单机跑hping3打SYN,包还没出机房就被扔进黑洞路由了。
hping3:最容易被滥用的那个
hping3在Kali里是默认装的。命令长这样:
hping3 -S -p 80 --flood --rand-source 192.168.1.100-S是SYN标志,--flood让它全速发包,--rand-source伪造源IP。看着挺猛对吧?但伪造源IP意味着你收不到任何回包,TCP三次握手永远完不成,目标服务器的半连接队列会被塞满。问题是,现代内核的SYN cookie机制早就能扛住这个。你发的包越多,你的上行带宽越快耗尽。我实测过,一台普通VPS跑hping3,大概三分钟之后自己就先卡死了。还有个更蠢的做法:不加
--rand-source。那你的真实IP就直接暴露在目标日志里,网警顺着网线来找你只是时间问题。slowloris:慢,但有点用
slowloris走的是另一条路。它不靠流量压垮你,而是靠保持大量半开的HTTP连接,把Web服务器的连接池占满。Python版的slowloris在Kali上跑起来是这样的:
python3 slowloris.py -s 500 example.com500个socket,每个每隔几秒发一个不完整的HTTP头。Apache的
MaxRequestWorkers默认是256,理论上500个连接就能让它拒绝服务。但Nginx不吃这套,它的异步架构处理这种慢连接跟玩似的。而且Cloudflare免费版就能挡——它会把慢连接直接掐掉。我拿自己的博客做过测试。Kali虚拟机跑slowloris,目标是一台没上CDN的Apache服务器。前30秒确实有效,网站打不开了。但服务器那边一开
mod_reqtimeout,把请求头超时设成5秒,攻击立刻失效。整个过程不到两分钟。真正的问题不在工具
单机DDoS在2024年基本是个笑话。带宽不对等——你家里100M上行,对面机房10G入口,你拿什么打?反射放大攻击倒是能放大几十倍,但那是另一回事了,需要开放DNS、NTP、Memcached服务器配合,Kali里没有现成的傻瓜工具。
更现实的是,Kali官方文档从来没把DDoS列为用例。它的定位是渗透测试——发现漏洞、验证漏洞、写报告。你拿它去轰流量,就像拿手术刀去砍树,不是不行,但工具用错了地方,而且大概率伤到自己。
真要测抗压能力,用专业的负载测试平台,或者至少租几台VPS分布跑。单机Kali跑DDoS,除了进局子快一点,没别的优势。
顶: 12812踩: 6241






评论专区