cpu 所有的值
1、被攻击前查看自己空闲百分比为99.7
2、在被攻击主机关闭防火墙 或设置防火墙策略允许攻击主机访问 服务和端口
开启http服务 命令 systemctl start httpd
这里就不演示
在kali开启攻击
命令:hping3 -c 10000 -d 120 -w 66 - p 80 --flood -S --rand-source +被攻击主机ip
4、抓包 看到只有两次握手,说明攻击成功
5、写出脚本
#!/bin/bash
#writer:liyaoodong
#dos 攻击: 拒绝服务攻击,使服务器不能提供服务
#常见的类型有 : icmp flood 、 syn flood 、udp flood 、cc
#syn flood: 利用tcp三次握手原理 ,客户机发送syn报文 ,服务器回应ack 和syn 和ack 报文,客户机不回应服务器,它们之间形成 半链接状态,被攻击服务器需要一部分资源保持半链接状态,消耗服务器资源。
#cc攻击:合法的访问量 急剧增加(已经完成了三次握手,正常的http请求)
#!/bin/bash
#两次取出 空闲CPU百分比 并赋值
a=$(top | head -3 | tail -1 | awk -F ',' '{print $4}' | awk -F '.' '{print $1}' | awk '{print $2}')
b=$(top | head -3 | tail -1 | awk -F ',' '{print $4}' | awk -F '.' '{print $1}' | awk '{print $2}')
#取出半链接数据并赋值给c
c=$(netstat -natp | grep SYN_RECV | wc -l)
#比较半链接数据和空闲CPU百分比
if [ $a -le 90 ] && [ $b -le 90 ] && [ $c -ge 130 ]
then
echo "主机可能正在被DOS (tcp flood)攻击,请处理"
else
echo "主机没有被 DOS (tcp flood)攻击"
fi
~
验证
~
~