找回密码
 立即注册
查看: 2495|回复: 0
打印 上一主题 下一主题

PHPCMS 2008 最新漏洞(第二季)附EXP

[复制链接]
跳转到指定楼层
楼主
发表于 2013-4-19 19:17:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
说好的第二季来了......2 e( x, Q7 c  R& @
4 _" b4 Z8 u1 A5 N
   要转摘的兄弟们,你们还是带个版权吧!   
# d/ C& v# I0 X
# {" E2 p* s0 p, `: a  组织 : http://www.safekeyer.com/   (欢迎访问)
/ v( s. d) F8 O; Y; |) u4 [* m$ O( E/ x# |5 m) Z- W6 D8 q
author: 西毒    blog: http://hi.baidu.com/sethc5
' s1 M! f) G* R! C; g4 e0 x$ P
2 j0 I( S: L, Y2 w3 v     1 O9 ~" n. o0 l/ f) T+ b( @

2 d" d: C7 ^; d: p# M, f- B9 I/ e; G其实还是有蛮多漏洞的,只是我一步步来吧!你们别催,该放的时候自然就会放了.7 k( b" d0 z7 R' a+ Q

2 L4 Y# H  D) E, G# e过程不明显的我就省略了。
6 S  c/ i6 x0 y1 c; ~& H9 J4 l4 X7 T, N5 v- i
在preview.php 中第7行
, e. ~3 |( s& c: G( O. C- J1 H7 Q/ h7 @
$r = new_stripslashes($info);
) w" i- ^8 f, g# J, \$ p" g* B. M9 `$ P3 E$ [. i8 L/ S' Z+ Y
我们跟踪new_stripslashes这个函数" j5 q2 [/ }- Z/ b& b  z8 l
5 R, V1 f: U1 W2 T# F& w% {& u
在global.func.php中可以找到6 c/ @9 a4 F6 d4 Q& O2 C- X

. B; r$ b" U& x# ?4 w& c1
( c5 ~- l; u$ ^, C29 d9 w+ u8 p/ }7 S) N
31 i7 y5 W* L: O$ Z! j
49 ^8 O1 k8 n% o! n
5
* f3 ?0 H1 ?6 g& K) v7 f9 ^/ I6 function new_stripslashes($string)/ z# M1 p! |; }, W, D
{, b8 A' ?* \7 g" h& l2 [" p; H' |# Q
    if(!is_array($string)) return stripslashes($string);
9 j7 \/ K8 R" V3 ?7 w* z; F! j9 v5 y    foreach($string as $key => $val) $string[$key] = new_stripslashes($val);- d' L# E+ R2 c$ Q2 S8 E+ x
    return $string;2 Z' A) s) X- ~" j; q7 ?2 T5 {8 I
}
& F4 m) m) {, r* e9 Q3 ~# G. J5 z7 Y% C/ J4 W; C
这个函数的功能不用解释了吧+ {/ j' o* w' `8 f* N
& k* W3 s) _. [
所以我们看具体应用点再哪?
" R7 |. }; B+ A) y' Q  {1 f0 k; T. `3 @4 U3 C, ]
18 p+ h% {$ k( u2 p
2
3 Y* ?1 T$ }0 a9 B0 _5 O( L% \33 D  `; l6 r8 P# m
40 D* f7 a! e. y3 T
5
8 z- Z( f8 M6 M$ `/ J6
" o: b' A, c9 F& ?9 A3 K7; o# ?6 L: J; o
8
5 ?9 w/ z0 X, @" u9) R: _8 k, d5 ?* v+ V; T
10/ T( c9 I- l" ?8 {' f0 w( `
11
; X2 D" |1 |1 u( ?' O$ a8 F6 d12
' S% @: o9 H/ p$ E6 g13
9 Z1 I( Y% I5 `% y& `1 k$ A14
& j* I6 N4 }/ ?4 r: v) d15
& v6 _4 T5 i' G% ^" J( l16
* ~' `! P' s3 I0 C17
2 F4 D; Z# l# P7 n4 K( `18
0 P0 O) H' k4 Q7 L/ A9 Q192 E& p* `( K3 E
20
) V) K. b" w. u, d5 P& o' c3 b21
" d% @! [8 V$ g7 N6 J22+ i6 d# |6 d: E9 M& U4 V
23
, R) O* G0 N7 J3 Y% }) h& ^24" @$ r& z# W& O' l+ ]1 d* N+ x% o
257 i; b3 \, B6 k0 d& p
264 K* R0 u8 J/ l
279 G: K+ x5 ]% m- M6 x7 P
289 I/ q2 `/ Z' l2 ?. o7 h2 j
29
: e1 K0 r$ }- Q% R30
) ]/ O! G. C, k5 L+ n& |31
" k# C2 A2 V* c! j32; O- o' s1 }  t% {) W  R+ }" T
33, C% K+ n* y" X4 ^, `
340 U- O4 h! A! s: ?& O3 l
35 require dirname(__FILE__).'/include/common.inc.php';9 j8 g* r1 ~5 V
if(!$_userid) showmessage('禁止访问'); // 所以前提是我们注册个会员就ok了.* S, S4 ~: p/ W0 i( h# M$ y
require_once CACHE_MODEL_PATH.'content_output.class.php';6 ?. Z6 t/ C2 Y/ y4 w" h5 j& x* q1 V
require_once 'output.class.php';+ O& r; r& }) p& {4 V) g- T
if(!is_array($info)) showmessage('信息预览不能翻页');//这里将要带进来我们的危险参数了
. P/ @: X# _5 Z+ v" g3 E, ~! }- V$r = new_stripslashes($info);   //反转义了.....关键- W2 m9 |% ]/ d; O7 y
$C = cache_read('category_'.$r['catid'].'.php');! L: z. J/ R$ D$ F: {  n6 F
$out = new content_output();% j9 h' s! O) \
$r['userid'] = $_userid;
& [, @+ U) ]/ R2 p+ H2 v$r['inputtime'] = TIME;
6 `6 ]4 @$ v$ Y( ~$data = $out->get($r);
, k% f4 x, F- T; Bextract($data);3 w8 v. @3 k& ?, i' Z
$userid = $_username;+ q% b  Q! F/ M- b' j
for($i=1;$i<10;$i++)
: j9 X" J% \6 \9 p  f{9 |7 B' J! c# Z6 f' N! f
    $str_attachmentArray[$i] = array("filepath" => "images/preview.gif","description" => "这里是图片的描述","thumb"=>"images/thumb_60_60_preview.gif");
/ A$ v1 g+ N8 I$ G$ h# q}# j8 g! A- `( r- F
        
; K2 n1 A' G. [/ p$array_images = $str_attachmentArray;" G# `8 L3 j0 S5 w
$images_number = 10;
6 N4 s. L+ z: @$allow_priv = $allow_readpoint = 1;
& j3 ~% I  x5 X5 n3 c$updatetime = date('Y-m-d H:i:s',TIME);; f7 h% v# V$ u) N. g' R* K& s
        
; c. X& `: @' o0 q6 G7 H$page = max(intval($page), 1);
: W2 a+ v* ~& J. Q, w$pages = $titles = '';+ h2 X. {6 K6 P% w9 `
if(strpos($content, '
回复

使用道具 举报

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

本版积分规则

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