前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【作者投稿】SOCKSTRESS攻击原理与防御

【作者投稿】SOCKSTRESS攻击原理与防御

作者头像
信安之路
发布2018-08-08 14:34:26
2.4K0
发布2018-08-08 14:34:26
举报
文章被收录于专栏:信安之路信安之路

SockStress攻击正好与Syn-Flood攻击原理相悖,它正是利用建立TCP/IP三次握手连接来实现拒绝服务攻击,而且与Syn-Flood不同它并非通过耗尽服务器的TCP连接数来让正常用户的正常请求无法响应,而是直接耗尽服务端的内存、CPU等资源让受害者宕机,属于非对称的资源消耗攻击,这种攻击方式的危害性极大,而且一旦遭受分布式攻击是几乎不能被抵御的。

0x01. SOCKSTRESS攻击原理


上篇文章已经给大家介绍过TCP/IP的握手过程了,所以这里就只讲一下SOCKSTRESS的攻击原理。

1.首先,攻击者大量请求建立三次握手连接

2.成功建立ESTABLISHED之后,攻击者会将数据包中window的值置为0(window的意思代表client这边一次可以接受的数据大小,置为0之后表示client没有window来接受server发来的数据,然后server就会分配内存来维持TCP连接直到client有空闲的window与之通信),然而攻击者可不会维持什么连接,他只会不断的请求TCP连接耗尽server的资源

3.当server这端维持连接达到一定数量之后,内存、CPU甚至是SWAP分区都会被耗尽,系统命令不能正常执行,想要恢复server唯一的办法就是断网

[*]下面是attacker发向server的一个ACK包,window被置为了0

0x02. SOCKSTRESS攻击实战


这次的实战步骤比较简单,但是危害巨大,笔者会用自己的靶机演示,大家不要去攻击网络上的任何服务器。

环境准备:

SOCKSTRESS攻击脚本 kali linux metasploit靶机 IP=192.168.1.104

攻击流程:

1.下载Github上面的SOCKSTRESS攻击脚本并安装

git clone https://github.com/defuse/sockstress && cd sockstress/ && make

2.设置防火墙规则,过滤发送给server的REST包(不过滤的话server就会断开连接)

iptables -A OUTPUT -p TCP --tcp-flags rst rst -d xx.xx.xx.xx -j DROP

3.运行SOCKSTRESS攻击脚本,攻击靶机的80端口

./sockstress xx.xx.xx.xx:80 eth0 -p payloads/http -d 100

4.查看一下靶机可以看到内存和CPU已经被耗得差不多了,靶机的web服务已经访问不了,如果再多攻击一会可能就直接宕机

0x03. 防御措施


对于SOCKSTRESS这种攻击方式我们可以设置防火墙规则,限制server在一定时间内与同一个IP建立TCP连接的数量,这样即使有大量的连接发过来也不会对server有太大的影响,但是这仅限于DoS,如果是DDoS的话那么就只有升级server的性能了。

iptables -I INPUT -p tcp --dport 80 -m state --state NEW -m recent --set && iptables -I INPUT -p tcp --dport 80 -m state --state NEW -m recent --update --seconds 30 --hitcount 10 -j DROP

可以看到由于我们设置了防火墙规则,一台kali对靶机的攻击效果微乎其微(因为30秒内server只与kali建立10个TCP连接),但是如果是DDoS那么结果也是可想而知。

0x04. 结语


不太懂安全的人会认为发布攻击方法是在破坏互联网的稳定性,但这实在是片面的态度,理解攻击原理才是防御攻击最好的方式。让笔者最后再引用一句SOCKSTRESS作者的话:Pretending a problem doesn't exist won't make it go away.

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-09-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 信安之路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 0x01. SOCKSTRESS攻击原理
  • 0x02. SOCKSTRESS攻击实战
    • 攻击流程:
    • 0x03. 防御措施
    • 0x04. 结语
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档