技术开发 频道

“Apache杀手”:Apache DDoS

    【IT168 资讯】2007年,Google工程师Michael Zalewski在研究了HTTP/1.1 Range头域的实现后,发表了一篇备忘,详细说明了Apache和IIS网页服务器中存在的一个潜在漏洞。

  在我印象中,一个单独的、短的请求就可用来诱使服务器无目的地发出数以GB的伪数据,而不顾服务器文件大小、连接数以及管理员设定的持续(keep-alive)请求数的限制。

  8月19号,“Full Disclosure”安全邮件列表中发布了一段Apache DDoS工具原型的Perl脚本。8月24号,Apache安全小组就此发表了一篇备忘进行解释:

  它最常见地表现在静态内容生成且通过mod_deflate模块进行压缩的时候,但其它在内存中缓存或生成内容的模块也可能会受到影响。这是一种非常普遍的配置方式。

  攻击可以远程进行,并且中等数量的请求就会导致内存和CPU占用率显著提高。

  我们注意到该工具已经得到越来越多的应用。

  目前还没有修复该漏洞的补丁和新版本的apache,因此本公告将在长期修复补丁发布时更新。修复补丁预计将在接下来的96小时内发布。

  星期五,Apache发布了第二则公告,其中他们解释了当服务器处理请求以返回多个(重叠的)范围时,Apache httpd进程和它所谓的内部“桶队列(bucket brigades)”是如何按照请求的顺序进行处理的。单个请求可以请求非常大的范围(例如从字节0到结尾),差距达到100倍。目前,这种类型的请求内部会扩展相当于100次大型的取指令操作,所有这些都以低效率的方式保存在内存中。

  处理方式有两种,要么使事情更有效率,要么清除或者简化被认为过于笨重的请求。在最终修复方案出来前有几种直接选择可缓解这一状况。

  Apache提出的缓解措施包括从完全禁止Range头域到限制请求包的大小及部署定制的Range计数模块。Lori MacVittie详细说明了如何通过使用Big-IP来实现缓解措施

  查看英文原文:"Apache Killer" a DDoS using the Range HTTP Header

0
相关文章