而存在CVE-2013-4547的情况下,我们请求1.gif[0x20][0x00].php,这个URI可以匹配上正则.php$,可以进入这个Location块;但进入后,Nginx却错误地认为请求的文件是1.gif[0x20],就设置其为SCRIPT_FILENAME的值发送给fastcgi。 fastcgi根据SCRIPT_FILENAME的值进行解析,最后造成了解析漏洞。
漏洞利用 上传一个含有php代码的图片,在文件后缀名后方加入\x20空格,这是就会在Linux机器中就会拥有一个test.png空格的文件 上传后,因为这个文件后缀名含有空格,在url中需要加入%20访问该文件,测试该文件是否上传成功 可以看到这里文件成功上传,接着我们进行漏洞利用,访问test.png在文件后方加入\x20\x00.php ...
漏洞点在何处? 正常情况下(关闭pathinfo的情况下),只有.php后缀的文件才会被发送给fastcgi解析。而存在CVE-2013-4547的情况下,我们请求1.gif[0x20][0x00].php ,这个URI可以匹配上正则 .php$,可以进入这个Location块;但进入后,由于fastcgi在查找文件时被\0截断,Nginx却错误地认为请求的文件是1.gif[0x20],就设...
fastcgi根据SCRIPT_FILENAME的值进行解析,最后造成了解析漏洞。 所以,我们只需要上传一个空格结尾的文件,即可使PHP解析之。 漏洞影响 Nginx 0.8.41 ~ 1.4.3 / 1.5.0 ~ 1.5.7 漏洞复现 环境:/vulhub/nginx/CVE-2013-4547 靶机ip:192.168.1.137 攻击机ip:192.168.1.1 环境启动后,访问http://your-ip:8080/即...
前提:准备好docker环境,下载好vulhub,进入目录 ,开始复现漏洞 docker-compose build//可选 docker-compose up -d 完成试验后,记得删除漏洞环境哦~~ docker-compose down docker system prune -a -f//可选 简单访问一下,说明Nginx 文件名逻辑漏洞(CVE-2013-4547)环境搭建成功了 ...
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2013-4547 https://blog.werner.wiki/file-resolution-vulnerability-nginx/ http://www.91ri.org/9064.html 漏洞原理 这个漏洞其实和代码执行没有太大关系,其主要原因是错误地解析了请求的URI,错误地获取到...
Nginx CVE-2013-4547漏洞复现 Nginx CVE-2013-4547漏洞是一个文件名逻辑漏洞,允许攻击者通过特定文件名绕过限制,执行任意代码。以下是复现步骤: 搭建Nginx环境: 使用Docker或其他方式搭建Nginx环境,确保Nginx服务正常运行,且版本在受影响范围内(Nginx 0.8.41 - 1.4.3 / 1.5.0 - 1.5.7)。 上传恶意文件: 上传一...
我在复现这个漏洞的时候我用的是新版本(3.4)的burp,到最后一步执行 php 的时候浏览器会一直加载中,到最后会出现如下报错,如果有大佬知道的希望能给弟弟解答一下
利用此漏洞,只需上传一个空格结尾的文件,即可导致PHP解析。漏洞影响范围广泛,具体复现步骤如下:1. **环境配置**:使用/vulhub/nginx/CVE-2013-4547环境启动Nginx服务器,靶机IP为192.168.1.137。2. **攻击机配置**:攻击机IP设置为192.168.1.1。3. **访问测试**:访问http://your-ip:...
如2000)来间接实现php代码的执行。访问时务必加上.php,以触发漏洞。最后,通过一系列POST和GET请求,我们成功实现了反弹shell,这标志着漏洞利用的最终目标已经达成。在实验结束后,别忘了清理漏洞环境,以确保安全。通过这个过程,我们可以直观地理解CVE-2013-4547漏洞的原理及其利用方法。