IIS+PHP模式取值错误任意代码执行漏洞(图)
2021-10-17
描述:
目标具有任意代码执行漏洞。
漏洞原因:PHP默认配置错误,IS+PHP模式解析PHP文件存在缺陷,导致服务器解析任意文件为PHP格式,导致任意代码执行。
验证方法:打开目标页面后,在原网址后添加/test.php
示例:输入/test.php并回车后,使用抓包工具查看响应头信息。如果包含 PHP/xxx,则该漏洞存在。
适用于某些浏览器的免费数据包捕获工具:
360浏览器:工具-->开发者工具
IE浏览器:工具-->F12开发者工具
:搜索下载插件-->F12调出
: 点击右上角菜单-->工具-->开发者工具
伤害:
攻击者可利用该漏洞直接在网站上执行任意代码php代码执行漏洞,可能直接控制网站服务器,窃取网站数据,影响网站正常运行。
最近360提示这个IIS+PHP模式值错误任意代码执行漏洞,这里根据提示修复漏洞php代码执行漏洞,具体方法如下
以下是360给出的解决方案
一、将PHP的默认模式改为mode(只在环境中运行)
1.下载PHP的ZIP文件包,下载地址(注意版本必须对应)
2.复制:sapi目录下的.dll到c:\php目录
3.进入虚拟主机管理平台的“网站管理”-“虚拟主机”-服务器设置,修改PHP映射,改为原来的:
.php,C:\PHP\php.exe,5,GET,HEAD,POST,|
改成:
.php,C:\PHP\.dll,5,GET,HEAD,POST,|
4.(仅IIS 6需要)打开IIS管理器,点击Web服务扩展,点击php的属性,“所需文件”-添加中间-选择“C:\PHP\.dll”,确认之后就可以调用PHP了。
html中文网编辑点评:
一般不建议改模式,效率很低。2003 php5.2.17 可以使用。2008年建议直接修改php.ini配置文件,更改cgi。值为 0。
二、 如果条件允许(咨询网站工程师),修改php.ini中的配置参数cgi。值为 0
推荐使用这个,但是需要服务器管理权限,一般是vps或者host
html中文网编辑点评:
推荐这种方式,不管是iis还是,都很方便
三、iis的解决方案
这里客户端的环境是IIS,这里找到php在' '中双击进入这个界面
转到“请求限制”
确认后就好了。
测试:
在服务器根目录新建一个()JPG文件test.jpg,访问(在test.jpg后面写php名称),如果有漏洞可以查看()的信息,否则返回一个404错误。
四、使用360网站卫士
值错误的任意代码执行漏洞
漏洞原因:由于默认配置错误导致的任意代码执行漏洞。
受影响的版本:
0.5.*
0.6.*
0.7