本文始发于微信公众号(飓风网络安全):慢连接攻击的原理和防范
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
聚合网络安全,存储安全技术文章,融合安全最新讯息
所谓的慢攻击就是相对于ddos而言的,大家都知道ddos,海量的数据包从各个地方蜂拥而来,把服务器打死,但有时候慢连接攻击也能达到这个效果,在http协议当中
最基本的过程是:
1 客户端连接一个主机
2 服务器接收连接
3 客户端请求一个文件
4 服务器发送一个应答
它的原理就是让服务器等待先于目标服务器建立连接,再服务器再保持连接等待的时候就消耗了资源,在kali linux里有一款针对服务器进行慢连接攻击的软件slowtset。
它包含了几种攻击方式,有Slow headers,Slow body,Slow read,slow POST
对于头部:
在http请求报文当中,它的后面存在一个空行,包括回车符和换形符。。
换行,他的意思是告诉服务器在请求头部结束,后面就不再有请求头。
如果服务器没有收到这个回车符或者换行符。。。他就一直在那等着。。很忠心哈然后攻击者就利用这点,发送一个http头部,一直不停的发,然后服务器就在那等啊等,结果你懂的,消耗了服务器的资源,对于这种攻击的防范,只需将这个ip地址加入黑名单就行了。。。
还有slowpost
这是post的请求,攻击者向服务器发送post请求报文这个时候的数据长度设置很大。但在随后的数据发送中,只发送很小的数据。然后,导致目标服务器一直等待攻击者发送数据。然后慢慢的。服务器就满了。
这是我对学校网站(授权测试)的一个慢连接攻击可以看到,攻击方式是slowread,它的攻击方式是客户端与服务器建立连接并发送了一个HTTP请求,客户端发送完整的请求给服务器端,然后一直保持这个连接,然后以很低的速度读取回复。它让服务器误认为客户端很忙。到连接快超时的时候它才读取数据,消耗服务器的资源,但这样效果不是很大。如果要使效果增大的话,请求的资源必须要大。至于如何去防御慢连接攻击,可以从服务器本身入手,如nginx和lighttpd不容易受满攻击的攻击,还有使用nginx当apache的反向代理。有兴趣的,可以去了解
本文始发于微信公众号(飓风网络安全):慢连接攻击的原理和防范
评论