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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-4-19 19:17:38 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
说好的第二季来了......
" @0 s' z) O" C; y: W; ?( \- b+ M0 C% F4 k. v0 K) O
   要转摘的兄弟们,你们还是带个版权吧!   
) ^% z/ S$ Z6 K0 Q- e
* {  N8 J. m2 q4 h  组织 : http://www.safekeyer.com/   (欢迎访问)
0 Y3 x9 ~: j. p% m8 I5 @( T$ y4 ~5 N" p( A! X" ?7 t1 }
author: 西毒    blog: http://hi.baidu.com/sethc5* m. r# D' l9 G* W
3 a3 g- L, k/ K5 h- J
     
- F( E5 v+ |3 h' H  U* ?; C% J. J0 k% n8 Z9 R. f5 |
其实还是有蛮多漏洞的,只是我一步步来吧!你们别催,该放的时候自然就会放了.
) D% p. B0 }" L+ A$ ~6 J3 K/ i# ~% k% d: G/ A+ a7 Y* o
过程不明显的我就省略了。0 Z3 Y& n1 U1 l4 M! g) j
+ ~( E* t' o5 _! [7 `) [! E# X
在preview.php 中第7行8 @) D- d) m  Q4 i0 _

, X: Z7 T# |- h& e$r = new_stripslashes($info);9 N1 E0 W* {& H% D6 }
) x; ?& z6 B, c! g1 U
我们跟踪new_stripslashes这个函数
- E# Q$ R7 `# d# u( F0 N' p
* v2 i9 I$ N7 _在global.func.php中可以找到+ @+ Y8 X) p7 t! M2 K& X( j

) p- U$ N) _  [, L% e- z9 Q5 e1/ F- ~8 h: _6 O
2* }' F0 V! y1 q
32 p( v3 u0 R& |2 B' P
4
( l) s- B' R& Z+ H5! S: @" L( L1 p
6 function new_stripslashes($string)- h0 K8 `. k; L
{
( `+ L; ]8 J. E4 J: v    if(!is_array($string)) return stripslashes($string);
) q( Z  r+ K+ H/ O0 @" e7 b    foreach($string as $key => $val) $string[$key] = new_stripslashes($val);
# q" z" k: i( Z3 b5 h; f. D8 s( X& V1 I    return $string;7 Q# o# h' {5 y. o' {
}
8 U& q+ }; M: i9 |1 m
+ S4 D$ u+ A6 r这个函数的功能不用解释了吧
' A  y/ K+ S: e! s
" Q! r8 B) r$ v, S所以我们看具体应用点再哪?
* \3 i- u- w# V- ^. C& l+ K# E. x- R0 V
10 Y! M& B# Y5 D8 x/ Z
2
- X+ v. m- b# `9 ^% s3
9 `9 t2 }) Y* G: U  H; K4$ b) m) {& L7 ^* S& i- `
5& H4 I! {: _$ X) M
6- j( {% d6 \( R- S
73 x2 i* o3 y% s: H# f
8
( S4 _' w$ z# |2 v9 y9
. T. f6 s$ V: C! a10- w/ k5 }* |5 V( Z* s( w3 `: l
11# Y$ q, v3 X0 Z: e7 a; Y
12
- {5 d/ }! Y- u( b( Q% i13
$ [7 M* y7 }% _' K  `14
( ]2 ]0 e3 i2 o/ [& u15
" B0 d4 u0 b6 `, W( B$ r- O% t, D16* F; i# }$ t2 `) ^# M
174 V: u: P9 ?' S# l1 i7 x% y
18! X& m3 u0 ~) ]7 |( v9 b
19
8 c9 N7 a1 u; b) _205 f. ]( C# x* w6 Y5 R4 z
21
7 P  E2 M8 ^% z; x: u/ i3 o6 q227 }% G# e7 V2 H7 \& b$ i5 [
231 U9 g9 C7 T# m* v1 ]' v1 i
247 v8 E. c; F. ]: t, b% s) d
25
) M+ _; @  y- r26
' }' n3 X/ D5 ]  b' B5 B; C3 ^27
: c. u8 j& U3 Q' f! b0 ~& e' K28
. l7 d6 O" h( |# M1 M4 \+ s" O290 I$ c9 M) `6 X0 F; l0 Y8 ^
30
4 T2 h- w9 {% A# W9 W! D31$ z# q& N, A  z, s$ Q9 W
32' k0 X$ N- H$ I* \" F6 g) R
33
. w. S5 I' O7 j2 e0 C( p346 y& ^: h  a; e' O3 _5 P
35 require dirname(__FILE__).'/include/common.inc.php';
: Z% H# n" e/ Mif(!$_userid) showmessage('禁止访问'); // 所以前提是我们注册个会员就ok了.) y* Y8 H' ?$ @: D1 s9 v, W
require_once CACHE_MODEL_PATH.'content_output.class.php';/ Q3 V. K$ H  L/ e$ Y) p/ f9 c1 I
require_once 'output.class.php';$ a$ D; y' c+ A$ F5 M1 U3 r
if(!is_array($info)) showmessage('信息预览不能翻页');//这里将要带进来我们的危险参数了
. k5 ]- V- L3 u* @% W4 i$r = new_stripslashes($info);   //反转义了.....关键
8 O" @5 U( u% d2 h! g4 L4 n# X, G! p$C = cache_read('category_'.$r['catid'].'.php');% {$ q! \8 }# e% J5 u
$out = new content_output();  y2 s: X9 R/ Y7 s5 v
$r['userid'] = $_userid;
. m8 ~  [1 j) @$r['inputtime'] = TIME;% C$ S4 }) S$ H) W
$data = $out->get($r);' C! m# b; q# U2 e: C; E5 j. u% ^
extract($data);% Z  U% ^% c! W- F. {% i
$userid = $_username;7 B& [7 N5 b. C3 r4 A
for($i=1;$i<10;$i++)
1 Y+ _$ b. }% s/ q{
. Q5 g( Y9 ~4 L    $str_attachmentArray[$i] = array("filepath" => "images/preview.gif","description" => "这里是图片的描述","thumb"=>"images/thumb_60_60_preview.gif");
; g( }1 A) [8 n- o$ y* B1 U6 |/ W}
5 a/ R) d+ ^; k        
/ h4 ]/ f! S% P) c; m5 T$array_images = $str_attachmentArray;
* @. _! H( B$ Z* L: Q- W4 B& I$images_number = 10;3 x9 x1 f- [& q( e9 L0 Y
$allow_priv = $allow_readpoint = 1;
1 M$ G5 M4 C, w; i! J  D& G" B$updatetime = date('Y-m-d H:i:s',TIME);
! o5 ?/ W# B# X; W- `8 w        / z/ N) M; \) y& k* q/ w
$page = max(intval($page), 1);
0 W# t! b$ v4 q3 e$pages = $titles = '';% ~8 i* ?8 n" V! y2 E
if(strpos($content, '
回复

使用道具 举报

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

本版积分规则

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