漏洞描述
Apache HTTP Server是Apache软件基金会的一个开放源代码的网页服务器,可以在大多数电脑操作系统中运行,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。
此漏洞源于Apache HTTP Server在处理Range和Range-Request头选项中包含的大量重叠范围指定命令时存在的问题,攻击者可通过发送到服务器的特制HTTP请求耗尽系统资源,导致Apache失去响应,甚至造成操作系统资源耗尽。
漏洞危害
Apache HTTP Server在处理Range和Range-Request选项生成回应时存在漏洞,远程攻击者可能利用此漏洞通过发送恶意请求导致服务器失去响应,导致拒绝服务。
漏洞验证
编写请求包
No Byte Range Header.txt
GET / HTTP/1.1
Host: IP:PORT
Byte Range Header.txt
GET / HTTP/1.1
Host: IP:PORT
Range: bytes=1-1,1-2,1-3
Telnet测试目标端口

输入ctrl+],回车

回车,粘贴编写好的txt请求包文件


验证结果


修复建议
1.使用SetEnvIf或mod_rewrite进行大范围检测,然后忽略Range:标头或拒绝请求;
2.限制请求字段的长度为几百个字节;
可保持Range标头短小,但可能会截断其他标头:如较大的cookie或安全字段。
3.使用mod_headers完全禁止使用Range标头:RequestHeader unset Range
4.安装补丁修复该漏洞(www.apache.org)
参考链接
https://www.cnblogs.com/princessd8251/articles/3853421.html