小菜我又来了,今天给大家制作一款DDOS工具,这个是利用TCP协议实现上的一个缺陷来制作的。代码依旧十多行。依旧像之前那么简单。大家不要那这个干坏事儿呢!!!图1是运行截图,当然啦网卡信息可以自己去掉!
图1
0x01 科普原理(这个是必要的噢!)
攻击者首先伪造地址对服务器发起SYN数据包,服务器就会像
伪造的地址
回应一个ACK+SYN数据包。而这个地址的主机会认为,我没有发送请求,不作回应。服务器没有收到回应,会重试3-5次并且等待一个SYN Time(一般30秒-2分钟)后,丢弃这个连接。
如果攻击者大量发送这种伪造源地址的SYN请求,服务器端将会消耗非常多的资源来处理这种半连接,保存遍历会消耗非常多的CPU时间和内存,还要不断对这个列表中的IP进行SYN+ACK的重试。TCP是可靠协议,这时就会重传报文,默认重试次数为5次,重试的间隔时间从1s开始每次都翻倍,分别为1s + 2s + 4s + 8s +16s = 31s,第5次发出后还要等32s才知道第5次也超时了,所以一共是31 + 32 = 63s。假的syn报文,会占用TCP准备队列63s之久,发送做够多的假syn数据包,就足够撑爆半连接队列,从而使真正的连接无法建立,无法响应正常请求。 最后的结果是服务器无暇理睬正常的连接请求—拒绝服务。
0x02
工欲善其事必先利其器(当然啦,肯定要准备工具呢)
python环境(这个就不用多说啦)。
scapy(这次还用它,安装命令:pip install scapy),这个库封装了好多复杂的东西,咱们直接用就行。
还是提醒一句windows上用的话记得装上Npcap
0x03
编写代码逻辑
这次还是给大家截图,显示的格式看起来舒服。如图2
图2
截图里面的代码给大家写了不少注释。大家稍微修改一下就可以了。
0x04 运行
运行结果如图1 ,没有什么需要显示的,逻辑就是不挺的发送数据包。所以小菜把自己的名字挂了上去。停止的话直接ctrl+c即可。再次告诉大家 不要做坏事儿噢!!!