(1)SYN 洪水攻击的过程
在服务器返回一个确认的 SYN-ACK 包的时候有个潜在的弊端,如果发起的客户是一个不存在的客户端,那么服务端就不会接到客户端回应的 ACK 包。这时服务端需要耗费一定数量的系统内存来等待这个未决的连接,直到等待超关闭,才能释放内存。
如果恶意者通过 IP 欺骗,发送大量 SYN 包给受害者系统,导致服务端存在大量未决的连接并占用大量内存和 TCP 连接,从而导致正常客户端无法访问服务端,这就是 SYN 洪水攻击的过程。
实战拓扑图:
(2)实验环境介绍
操作系统 | IP地址 | |
服务器 | CentOS 7 | 192.168.1.11 |
客户机 | CentOS 7 | 192.168.1.6 |
(3)安装 awl 软件
下载地址:https://gitlab.com/davical-project/awl/tags
(4)上传 awl-0.2.tar.gz 文件,并解压缩
(5)检测系统配置
(6)编译,安装
make -j4
make install
(7)在服务器端安装 web 服务器,开启 http 服务,清空防火墙规则
yum -y install httpd
systemctl start httpd
iptables -F
(8)ping 服务器,获取服务器的 MAC 地址
(9)客户机清空防火墙规则后,进行 SYN 攻击
(10)在服务器上查看端口状态,发现有很多伪装成公网的 IP 在攻击服务器
PS:本实验可能会导致死机,用一台电脑操作前请备份好数据!实验成功的前提是必须保证服务器端 HTTP 服务是开启的,客户机和服务器之前互相能 ping 通,防火墙规则必须清空!