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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-4-19 19:17:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
说好的第二季来了......, ]* t& f* e% W0 |0 @  X! p
; w: c$ U% D: C3 U  y
   要转摘的兄弟们,你们还是带个版权吧!   
6 p. W4 B% S' ^7 h6 [, K% a- S1 Y. e7 {( g) H
  组织 : http://www.safekeyer.com/   (欢迎访问)
0 M& J, ^1 j9 r$ ?; ~4 C
, I' P1 y5 c- T: _author: 西毒    blog: http://hi.baidu.com/sethc54 Q' R& z  ]& B6 f( b4 k
7 e, i$ z! I0 F. n: T  U
     % T; r+ n2 a- F: m+ D! E8 `

2 h- t# N$ W- S: f" X) f其实还是有蛮多漏洞的,只是我一步步来吧!你们别催,该放的时候自然就会放了.' n! @$ h4 R3 ?5 Y! s3 @2 P! M
' H9 |1 Z2 O* M5 S
过程不明显的我就省略了。) f- @% A" V3 j
! `! R5 X; D1 ]$ V, i9 [6 R7 t) A
在preview.php 中第7行* G% c3 E7 Y  C5 L3 g* z# U0 J

% r# V% w8 v& i1 w0 x' V* s& y5 Q$r = new_stripslashes($info);% m7 F. @2 x* r3 u. W/ K

' S7 N9 q$ h0 F: H% I1 S我们跟踪new_stripslashes这个函数
; L9 g$ Y$ z6 ^: t8 o
$ S. f, A7 C0 Z* D* }在global.func.php中可以找到
" ~8 R8 b* ~  N# ]7 l
9 x* q5 |) L( J! T! A# M; ^12 p* X4 @+ n, c, O' ^  H* [. P+ t1 ^2 t
2
+ ~% W- a  m3 M7 J; t3
& o$ [% z. h/ x7 f4 y4
1 M( }4 y% t7 f5
; u/ _" P4 l$ n* n% _! f, t) l% s6 function new_stripslashes($string)
/ {5 E, g/ k$ |* ]* e{8 G8 J+ x' Q+ h3 K
    if(!is_array($string)) return stripslashes($string);+ |* d/ v6 E/ _( o5 N  |
    foreach($string as $key => $val) $string[$key] = new_stripslashes($val);
. H1 |* i0 b/ R- e3 Y    return $string;: J% f$ _5 ~  ]
}
0 e8 C' R3 W, `% }% F0 z( c
. p3 s3 N% J8 ~/ Z; n( p* u这个函数的功能不用解释了吧. y+ e0 y! u; g
- V" e: k( t$ q$ r" ^6 _
所以我们看具体应用点再哪?
0 p. N8 o* g5 K2 ]$ A8 X7 `0 O' Z" c* ]) `& f
1! w( \9 f7 b# f# F" N; l
21 J- Q' q, `0 u* W% s, i) |
3
. ?. k+ ^. `# t: D45 z. _; r* N( A0 t
5
& n% }, K% T; n! h6
9 }, \: s: L* T  y/ ^% H: v" R- C7
6 o" ~/ n2 r7 F' D9 N! C88 \1 Z& C2 Q0 Y  ~" G4 b
9
  w, b' m% D- }: T# ]# O10# m  `. S0 B% h# \2 C  t% K' R
119 J, P' b) l( h% e9 P1 _' s8 s
12
* I* @' H; N# ^; y0 f13" h" G' ^7 d+ F( l5 W0 e5 w& B
14- v3 I6 Z: r& [0 {* W: A% m
15
. F2 s( k+ o, R* m16
) p8 T8 v$ J" X$ l5 w# Z4 Q176 T( F) L) i* O% ~- Z1 x
18
+ x" B- H/ i4 Z4 x8 l* V8 A190 Z1 X- Z$ s# @
202 {, M9 O4 A1 S: R6 M
211 W5 w8 y, v# n  U  o
220 t$ t2 ~5 |' F' Y: L4 ~
23
3 U0 y3 W* L  ~24
: `7 X- B  o4 Z25
, Q0 @9 ^/ @6 V7 _26* ]6 C8 n$ u- F3 \! b* p
27" d8 G3 t$ Y' R( m' z
284 Q" N& c. l! E; u  Q, y5 B
29
- k0 c* c& P/ {$ w  t, p30: W# J9 G% {' W; w' G
31; M! |" {# {& k2 w  Z  @
32, k" w5 F; D2 H% ]' c! n$ n
33
$ i& R  W- O6 ?/ n) u1 E% D349 K9 x3 I# F7 Z+ P4 D
35 require dirname(__FILE__).'/include/common.inc.php';# N/ k8 |/ ]+ }7 y
if(!$_userid) showmessage('禁止访问'); // 所以前提是我们注册个会员就ok了.
  Z/ v' f; ?  t. ]6 Q/ [require_once CACHE_MODEL_PATH.'content_output.class.php';
. c1 s) x# L: V7 R# @require_once 'output.class.php';
. q: b  F7 B! u. Q' hif(!is_array($info)) showmessage('信息预览不能翻页');//这里将要带进来我们的危险参数了
. W0 g( d6 _3 b4 }0 Z9 s; P0 V$r = new_stripslashes($info);   //反转义了.....关键
( f$ v& {0 v. c, S* I$C = cache_read('category_'.$r['catid'].'.php');# H4 I3 _. t+ e  t0 c/ t
$out = new content_output();) d; x( k) N8 b  f( x
$r['userid'] = $_userid;
! E3 L( J; V4 x$ X1 s$r['inputtime'] = TIME;' T: }, U( I+ H1 V* Q# s
$data = $out->get($r);
# ?$ e2 ]) D' @9 aextract($data);- Z1 G1 k* {& w; Y! e' T3 V4 h
$userid = $_username;) `$ H  _6 V) J9 o) {  R
for($i=1;$i<10;$i++)( B" |$ z, `# ]
{6 @# q: ^2 P: C3 n, e% F% U3 V
    $str_attachmentArray[$i] = array("filepath" => "images/preview.gif","description" => "这里是图片的描述","thumb"=>"images/thumb_60_60_preview.gif");- ~' W2 j. f* i/ P5 b
}1 @2 H3 d9 j4 F
        
2 w& }' s  }! l1 S3 G$array_images = $str_attachmentArray;2 s, Z  `, j. }1 M: h
$images_number = 10;
9 o! f$ U6 k% f1 q! ^$allow_priv = $allow_readpoint = 1;& o, M, z. a$ y7 k" K. e0 r) X% W
$updatetime = date('Y-m-d H:i:s',TIME);- I  m% I; G! l1 s* ~0 t
        
3 g3 `( F8 v- ]5 c$ ]6 \; T: k$page = max(intval($page), 1);
- b; \9 P2 e5 W# `$pages = $titles = '';
5 c8 i) `0 u8 Dif(strpos($content, '
回复

使用道具 举报

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

本版积分规则

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