目录
Apache 文件名解析漏洞(5.2.x以下)(info.php.x 绕过)
PHP-CGI 解析漏洞(IIS 7.0(info.png/.php))
1. 空字节漏洞(nginx/0.7.65)(/info.png%00.php)
2. 文件名逻辑漏洞-CVE-2013-4547(1.4.2)(info.png[0x20][0x00].php)
这些漏洞配合文件上传漏洞使用,绝配。
Apache 文件名解析漏洞(5.2.x以下)(info.php.x 绕过)
5.2.x 版本下存在解析漏洞 ,以第upload-labs第四关为例,这个漏洞对绕过文件上传限制特别有用
将文件后缀名改为 info.php.x 时上传成功。如观察到响应包apache版本为2.2.25,存在解析漏洞
将后缀改为.x即可绕过
IIS6.0解析漏洞
文件名解析漏洞(time.asp;1.jpg)
IIS 6.0 分号后面的不会被解析 。即 time.asp;1.jpg 当成了time.asp 文件执行。
我们在网站wwwroot下建立文件夹 upload,在文件夹中建立文件 time.asp内容为 <%=time()%> 脚本执行时会显示时间,我们再建立一个内容相同的文件,time.asp;1.jpg。访问time.asp;1.jpg时发现它被执行了
它对我们的脚本进行了运行
目录解析漏洞(1.asp/time.jpg)
IIS6.0 ,在网站下建立文件夹的名字为*.asp、*.asa、*.cer、*.cdx 的文件夹,那么其目录内的任何扩展名的文件都会被IIS当做asp文件来解释并执行。例如创建目录 1.asp,那么 1.asp下面的文件time.jpg 将被当做asp文件来执行
PHP-CGI 解析漏洞(IIS 7.0(info.png/.php))
这不是属于iis的漏洞是属于 CGI的漏洞,info.png/.php ,在访问的文件名后加上/.php时能够执行。如当我们访问 info.png/.php 时竟然就可以解析了
Nginx解析漏洞
1. 空字节漏洞(nginx/0.7.65)(/info.png%00.php)
/info.png%00.php
1. 影响版本
- 0.5 <= 版本 <= 0.7.65
- 0.8 <= 0.8.37
2. 文件名逻辑漏洞-CVE-2013-4547(1.4.2)(info.png[0x20][0x00].php)
这个可以利用vulhub进行复现
访问路径info.png[0x20][0x00].php 即可以进行解析