iis php cgi.exe 漏洞,IIS6.0,Apache低版本,PHP CGI 解析漏洞(示例代码)

IIS6.0解析漏洞

在IIS6.0下存在这样的文件“名字.asp;名字.jpg”

代表了jpg文件可以以asp脚本类型的文件执行。

根据这个解析漏洞我们可以上传这种名字类型的图片,比如

20180728142215587269.png

1.asp;xxx.jpg 他会忽略;后边的内容,所以文件相当于1.asp

asp一句话木马

20180728142215938809.png

找到上传的路径后,可以直接用菜刀连接。如果对文件内容检测,就得使用图片马了。

20180728142216307926.png

有时候他会把这个上传文件的目录设置为不可执行,那样就完了

iis6.0还存在一个解析漏洞,在以“名字.asp”的文件夹里面,里面的文件会以asp脚本运行。管理员不会蠢到建立这么一个文件夹,所以你得能建立并且把马传到这个很蠢的文件夹上边。

至今(2018年7月28日11:38:03),这两个漏洞还没有补丁。

PHP CGI漏洞

访问ip/web目录/1.jpg/1.php(1.php实际不存在,只存在1.jpg)会导致1.jpg以php文件形式执行。

新建个jpg,编辑文档的方式写入php代码,然后访问

20180728142216813753.png

20180728142217150646.png

一切都是因为这个配置,在php.ini里面:cgi.fix_pathinfo=1 ,

等于1即是开启,当访问上边的目录是,Nginx看到最后的/1.php并不会先判断1.php是否存在,会直接交给php处理,php中的cgi.fix_pathinfo的原因,会把1.jpg当做名字叫做1.jpg/1.php这样一个php文件。

这个不是Nginx的漏洞,是php的毛病,解析文件时,IIS7.0也是如此。

解决办法:在php配置文件里,只允许php文件执行。不过在较高版本的php-fpm.conf的security.limit_extensions设置只执行php php3 php4 phtml。我在windows安装的phpstudy上死活没找到这个配置文件,于是到linux上截了个图。

20180728142217304933.png

Apache1.x/2.x解析漏洞

Apache从右向左解析文件,如果不认识就向左挪,比如

1.php.abc是个的文件, abc类型的apache不认识,因此就会被解析为php文件,相当于1.php

Apache认识的文件类型在conf目录下的mime.types文件中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值