【vulhub】Nginx 文件名逻辑漏洞(CVE-2013-4547)复现

这个环境是黑名单验证,我们无法上传php后缀的文件,需要利用CVE-2013-4547。

我们上传一个test.gif空格

注意后面的空格:传入一张图片格式的文件,内容就为phpinfo。
【vulhub】Nginx 文件名逻辑漏洞(CVE-2013-4547)复现_第1张图片

访问http://your-ip:8080/uploadfiles/test.gifaa.php,即可发现PHP已被解析

把aa替换为空格和分隔符

【vulhub】Nginx 文件名逻辑漏洞(CVE-2013-4547)复现_第2张图片
然后成功访问到
【vulhub】Nginx 文件名逻辑漏洞(CVE-2013-4547)复现_第3张图片

既然可以成功解析成php,那么我们现在来上马试试

这里我简单说下思路,通过上面的实验我们知道,如果要绕过黑名单,把文件变成php格式的话,是需要在bp里改编码的,
但是这里就遇到一个问题!!!!!!!!!!!
编码只能在bp里面改!!!!!!

通过想了很久和朋友的指点,想到了,可以写入一个旧马生成新马的方法。

代码如下

<?php file_put_contents('xinma.php','')?>

还是和上面一样,先把旧马上传上去。
在这里插入图片描述

开始上传

【vulhub】Nginx 文件名逻辑漏洞(CVE-2013-4547)复现_第4张图片
这是上传成功的样子
【vulhub】Nginx 文件名逻辑漏洞(CVE-2013-4547)复现_第5张图片
按照上面的思路,我们加个字符(这里我加的aa)

http://192.168.100.23:8080/uploadfiles/jiuma.gifaa.php

【vulhub】Nginx 文件名逻辑漏洞(CVE-2013-4547)复现_第6张图片
放包后,可以看到新马成功生成。
【vulhub】Nginx 文件名逻辑漏洞(CVE-2013-4547)复现_第7张图片
去访问一下新马。

http://192.168.100.23:8080/uploadfiles/xinma.php

成功访问到!!!!
【vulhub】Nginx 文件名逻辑漏洞(CVE-2013-4547)复现_第8张图片

详细文章
https://github.com/vulhub/vulhub/blob/master/nginx/CVE-2013-4547/README.md
https://blog.csdn.net/haha13l4/article/details/95949846
https://www.cnblogs.com/yuzly/p/11221564.html
https://blog.csdn.net/Blood_Pupil/article/details/88565176
https://www.cnblogs.com/bmjoker/p/9838600.html

你可能感兴趣的:(vulhub,nginx)