5 DDos攻击
请勿用于恶意攻击,仅限学习使用,否则后果自负
什么是DDoS?
DDoS:Distributed Denial of Service(分布式拒绝服务)。
DDoS攻击被认为是安全领域最难解决的问题之一,迄今为止也没有一个完美的解决方案。
它是利用合理的请求造成资源过载,导致服务不可用。
比如停车场有100个车位,当100个车位全部停满车后,再有车进来,就必须等已有的车先出去才行。如果已有的车一直不出去,那么停车场的路口就会排起长队,停车场负荷过载,不能正常工作了,这种情况就是“拒绝服务”—Dos。
发出这种攻击就是DoS攻击。DDos当然就是很多很多的Dos攻击同时进行。
常见的DDoS攻击有SYN flood、UDP flood、ICMP flood等。
其中SYN flood是最为经典的DDoS攻击。
因为它非常猖獗的利用TCP协议设计中的缺陷。
TCP协议的三次握手
(1)客户端向服务器发送一个SYN包,包含客户端使用的端口号和初始序列号x;
(2) 服务端收到客户端发送来的SYN包后,向客户端发送一个SYN和ACK都置位的TCP报文,包含确认号x+1和服务器端的初始序列号y;
(3)客户端收到服务器返回的SYN+ACK报文后,向服务器返回一个确认号为y+1、序号为x+1的ACK报文,一个标准的TCP链接完成。
SYN flood攻击,首先伪造大量的源IP地址,分别向服务器端发送大量的SYN包。此时服务器会返回SYN/ACK包,因为源地址都是伪造的,所以伪造的IP根本就不会回答,服务器端没有收到回应,会重拾3-5次并且等待一个SYN time(30-2分钟),如果超时则丢弃这个链接。 攻击者大量发送这种伪造源地址SYN请求,服务器就会消耗非常多的资源(CPU和内存)来处理这种半连接,同事还要对这些假链接重试,最后无暇处理正常的链接请求,导致拒绝服务。
攻击工具
简单攻击工具 ufonet、slowhttptest、slowloris 等等。
其他这里不再深入介绍