Nginx越界读取缓存漏洞(CVE-2017-7529)
2021/6/8 7:24:16
本文主要是介绍Nginx越界读取缓存漏洞(CVE-2017-7529),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
漏洞概述:
2017年7月11日,Nginx在官方公告中称发现了一个范围过滤器中的安全问题,并分配了CVE-2017-7529。通过精心构造的恶意请求能造成整数溢出,对范围值的不当处理会导致敏感信息泄漏。当使用Nginx标准模块时,攻击者可以通过发送包含恶意构造range域的header请求,来获取响应中的缓存文件头部信息。在某些配置中,缓存文件头可能包含后端服务器的IP地址或其它敏感信息,从而导致信息泄露。
Nginx在反向代理站点的时候,通常会将一些文件进行缓存,特别是静态文件。 缓存的部分存储在文件中,每个缓存文件包括“文件头”+“HTTP返回包头”+ “HTTP返回包体”。如果二次请求命中了该缓存文件,则Nginx会直接将该文件中 的“HTTP返回包体”返回给用户。如果我的请求中包含Range头,Nginx将会根据我 指定的start和end位置,返回指定长度的内容。而如果我构造了两个负的位置, 如(-600, -9223372036854774591),将可能读取到负位置的数据。如果这次请 求又命中了缓存文件,则可能就可以读取到缓存文件中位于“HTTP返回包体”前的 “文件头”、“HTTP返回包头”等内容。
漏洞条件:
Nginx version 0.5.6 - 1.13.2
该漏洞影响所有0.5.6 - 1.13.2版本内默认配置模块的Nginx只需要开启缓,存攻击者即可发送恶意请求进行远程攻击造成信息泄露。当Nginx服务器使用代理缓存的情况下,攻击者通过利用该漏洞可以拿到服务器的后端真实IP或其他敏感信息。
漏洞复现:
漏洞环境:vulhub docker
启动环境:
访问目标网站即可查看到Nginx默认页面,这个页面实际上是nginx做反向代理的8081端口的
使用poc:
可以看到返回了页面的真实ip
这篇关于Nginx越界读取缓存漏洞(CVE-2017-7529)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-13用Nginx防范DDoS攻击的那些事儿
- 2024-12-13用Terraform在AWS上搭建简单NGINX服务器指南
- 2024-10-29Nginx发布学习:从入门到实践的简单教程
- 2024-10-28Nginx发布:新手入门教程
- 2024-10-21nginx 怎么设置文件上传最大20M限制-icode9专业技术文章分享
- 2024-10-17关闭 nginx的命令是什么?-icode9专业技术文章分享
- 2024-09-17Nginx实用篇:实现负载均衡、限流与动静分离
- 2024-08-21宝塔nginx新增8022端口方法步骤-icode9专业技术文章分享
- 2024-08-21nginx配置,让ws升级为wss访问的方法步骤-icode9专业技术文章分享
- 2024-08-15nginx ws代理配置方法步骤-icode9专业技术文章分享