百度空间 | 百度首页 
 
查看文章
 
Slowloris 与基于 Resource Limit 的攻击
2009-06-22 11:11
这几天圈内关于 Slowloris 的讨论比较多,原因是 RSnake 的一篇文章

http://ha.ckers.org/blog/20090617/slowloris-http-dos/

Sowhat 也写了点评论

http://hi.baidu.com/secway/blog/item/c7aca3a28f9521a4cbefd0e2.html

这种攻击是很古老的攻击了,apache的连接数有限(并发),配置文件里可以更改,如果这个连接数到达了上限,就不能接收新的请求了,所以就被dos了。

发起攻击的时候一般是攻击者占住一个连接不让apache释放,就可以累计占用连接数。

Harry同学说,他有更好的方式来达成这个效果,而不是用Slowloris 里的方式
1.- send a content-length header without sending enough data
2.- use the keep-alive header and an incomplete request
3.- send a lot of small headers very slow


应该还有更多的方式。


而apache的人则不认为这个是他们的问题,认为这个是feature,因为这项是可配置的。

http://httpd.apache.org/docs/trunk/misc/security_tips.html#dos

Apache的很多配置选项比如 Timeout, KeepAliveTimeOut, MaxClients 等都可以用于缓解这种dos的。

而我们认为这种攻击容易防御的原因,是在于
1. 攻击者没有abuse IP,所以源IP可查,如果abuse了,就变成DDOS了,就该辅助用防DDOS的手段

2. 这种攻击特征明显,容易block



所以很明显,解决方案有以下几种
1、修改apache的配置文件以缓解

2、写一个apache mod专门处理这种攻击,或者使用现有的比如 mod_evasive, 或者是 mod_security 再辅助其他手段进行block

3、配置 Iptables, 对于连接最多的IP进行block


4、使用WAF,或者其他前置的网络设备,自己配置条规则

其中关于3还是harry告诉我的,以前没用过iptables的这个功能,有兴趣的倒不妨研究研究。

而这些天听说有很多小网站被dos,apache的受害最大。应该是很多人拿了slowloris这个工具在滥用。而 Apache 的 default 配置对此类攻击并没有防御效果,导致了攻击的猖獗。Default Insecure, 也是 RSnake 坚持认为这是 Apache 漏洞的原因。


Resource Limit Attack
在我看来,这属于典型的 Resource Limit Attack的一种。与之前的 Server Limit Dos 类似。

现在的很多应用中,都会有各种各样的 Limit , 如果这些 Limit 的值被恶意填满,就会造成一种DOS。设计者在设计时如果没有考虑到这种情况,随意设置 Limit,就容易造成安全隐患。

RSnake 最新的一篇blog也表明了另一种附带的Resource Limit。

http://ha.ckers.org/blog/20090620/http-longevity-during-dos/

他提到在测试 Slowloris 的时候,不全是返回服务器错误,有时候还返回DB错误,猜测可能是因为DB也限制了连接数,先达到了这个限制导致问题发生。

类似的 Limit 还有 PHP 的 Memory Limit 等等,所以一个 Memory Leak 才会这么可怕,Limit达到后,应用也就被DOS了。

类别:象牙塔 | 添加到搜藏 | 浏览() | 评论 (4)
 
最近读者:
 
网友评论:
1
2009-06-22 17:20 | 回复
纠正一个错误,apache mod不能防御此问题,悲剧啊,mod太弱了,http header不完整,所以无法接管请求。
 
2
2009-06-23 00:25 | 回复
汗····
 
3
2009-06-24 18:15 | 回复
mod_qos可以抵擋slowlris attack
 
4
2009-06-26 17:17 | 回复
iptables可以通过限制IP连接数可以减缓。
有人在sans发布了unoffices的patch,大致原理是,根据apache 连接负载,调整timeout的时间。有需要的可以试一下;
http://synflood.at/tmp/anti-slowloris.diff
 
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
验证码: 请点击后输入四位验证码,字母不区分大小写
      

     

©2009 Baidu