IIS7源码泄露及文件类型解析错误——最新解决方案

来源:互联网 发布:淘宝确认订单页面 编辑:程序博客网 时间:2024/04/30 16:23

漏洞介绍:IIS是微软推出的一款webserver,使用较为广泛,在支持asp/asp.net的同时还可以较好的支持PHP等其他语言的运行。但是80sec发现在IIS的较高版本中存在一个比较严重的安全问题,在按照网络上提供的默认配置情况下可能导致服务器泄露服务器端脚本源码,也可能错误的将任何类型的文件以PHP的方式进行解析,使得恶意的攻击者可能攻陷支持PHP的IIS服务器,特别是虚拟主机用户可能受的影响较大。


漏洞分析:
IIS7支持以FastCGI的方式运行PHP,但是此种模式下,IIS处理请求的时候可能导致一些同80sec提到的nginx安全漏洞一样的问题,任何用户可以远程将任何类型的文件以PHP的方式去解析,你可以通过查看Phpinfo中对php的支持方式,其中如果为CGI/FAST-CGI就可能存在这个问题。

黑盒访问

http://www.80sec.com/robots.txt/1.php


查看文件是否存在和返回的HTTP头就可以知道是否存在此漏洞。

如果存在,则可以将一段php代码改名为jpg或者任意能够通过upload上传的扩展名(如txt,rar,gif,doc等等)

然后寻找一个上传方式(比如论坛中的头像上传功能,或者文章发布的图片上传功能都可以)上传到web空间中,

然后通过如下方式执行

http://www.80sec.com/demo.jpg/1.php

漏洞厂商:http://www.microsoft.com

 

 

 

解决方案:

1、在php.ini中关闭cgi.fix_pathinfo为0 (网上的通用方案)
优点:简单彻底

缺点:会损失PHP的一些功能,比如让URLRewrite功能失效

2、在IIS7的“处理程序映射”中修改PHP-FastCGI条目,
在请求限制中勾选“仅当请求映射到以下内容时才调用处理程序”并选中下面的“文件”项目

优点:不损失PHP功能

缺点:暂时没发现

原创粉丝点击