![]() |
Java开发网 |
注册 |
登录 |
帮助 |
搜索 |
排行榜 |
发帖统计
|
您没有登录 |
» Java开发网 » Web Server & Linux
![]() ![]() ![]() |
![]() ![]() ![]() ![]() ![]() ![]() |
作者 | “Apache杀手”一种利用Range HTTP头域的DDoS |
阿熊
![]() 阿熊 元老 ![]() 发贴: 5644 ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() 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来实现缓解措施。 |
话题树型展开 |
人气 | 标题 | 作者 | 字数 | 发贴时间 |
6902 |
![]() | 阿熊 | 1269 | 2011-09-23 09:19 |
9508 |
![]() ![]() | YuLimin | 325 | 2011-09-30 19:44 |
![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() |
![]() |
![]() |
Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1 客服电话 18559299278 客服信箱 714923@qq.com 客服QQ 714923 |