解析漏洞
0x01 IIS5.x/6.0解析漏洞
IIS6.0解析利用的方法有两种:
-
目录解析
在网站下建立文件夹名字为.asp、.asa的文件夹,其目录内的任何扩展名的文件都别IIS当作asp文件来解析并执行。例如创建目录pamela.asp,那么pamela.asp / 1.jpg将被当作asp文件来执行。
-
文件解析
在IIS6.0下,分号后面的不被解析,也就是说pamela.asp;.jpg会被服务器看成是pamela.asp,还有 IIS6.0默认的可执行文件除了asp还包括这三种:
1 | pamela.asa |
0x02 IIS7.0/IIS7.5/Nginx<8.03畸形解析漏洞
在默认Fast-CGI开启状况下,上传一个名字为pamela.jpg,内容为
1 |
|
的文件,然后访问pamela.jpg/.php,在这个目录下就会生成一句话木马shell.php
0x03 Nginx<8.03空字节代码执行漏洞
-
影响版本:
0.5./0.6./0.7<=0.7.65/0.8<=0.8.37
-
简介
Nginx在图片中嵌入php代码然后通过访问
1
xxx.jpg%00.php
来执行其中的代码
0x04 Apache解析漏洞
-
背景
Apache是从右到左开始判断解析,如果为不可识别解析,就再往左判断。
-
简介
比如pamela.php.owf.rar “.owf”和”.rar” 这两种后缀是 apache 不可识别解析,apache就会把pamela.php.owf.rar解析成 .php
-
利用
如何判断是不是合法的后缀就是这个漏洞的利用关键,pamela.php.rara.jpg.png…(把你知道的常见后缀都写上)去测试是否是合法后缀
0x05 其他
-
在Windows环境下,xx.jpg[空格]或xx.jpg 这两类文件是不允许存在的,若这样命名,Windows会默认去除空格和点,我们可以通过抓包,在文件名后加一个空格或者点来绕过黑名单,若上传成功,空格和点都会被Windows自动消除,这样也可以getshell
-
如果在apache中 .htaccess可被执行,且可被上传,那可以尝试在 .htaccess中写入:
1
2
3<FilesMatch "cimer">
SetHandler application/x-httpd-php
</FilesMatch>然后再上传shell.jpg的木马,这样shell.jpg就可解析为php文件