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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-4-19 19:17:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
说好的第二季来了......
9 T! p( g: M; T$ y0 D0 E4 y( W5 M- c8 `" f7 k
   要转摘的兄弟们,你们还是带个版权吧!   
+ N0 F  ]0 A+ w% U4 u4 E% ]# S( C
  组织 : http://www.safekeyer.com/   (欢迎访问)
+ t9 X) a, m0 _" R% j) ~
6 F4 k0 u3 `4 Z' V- tauthor: 西毒    blog: http://hi.baidu.com/sethc5
9 P8 b# z/ K, N' u7 \* G/ D0 e
     
9 U5 _5 W: g3 ?3 S6 \8 r& O' }/ W, k' w7 p1 ?
其实还是有蛮多漏洞的,只是我一步步来吧!你们别催,该放的时候自然就会放了.
  E7 A4 n: c' Z4 Q, w* T- d" n
2 }) d3 |- d- P过程不明显的我就省略了。
; z. A! e; R4 y/ f+ B$ O" o" m4 Y! `- d& g% {
在preview.php 中第7行: R; ?1 r7 Y, n- M
# l2 W/ F- `/ g% g& i! U3 ]
$r = new_stripslashes($info);) F8 T- g( M) o+ B% ^6 F  X

$ K( v+ E6 |6 k# e8 r7 a( Q我们跟踪new_stripslashes这个函数
. Q: y$ S1 K1 ^$ |# A( @! l" l4 D* R8 Q1 q
在global.func.php中可以找到# X1 U5 B) _2 ~0 b/ n) t& U: }
1 Y. ?1 c9 R7 G2 C- {
11 m, [6 y+ {* _1 r( r
2
7 e8 {0 M; `2 Z' Q. L3 _3
' K$ r, {$ u* h! ?: S# o( U" k6 j- g4
8 ~0 n3 ]# J0 a5( ]- [$ J. ~$ z/ j5 T
6 function new_stripslashes($string)( M5 _. f. O' E) b" Q, m( \
{
- Y$ R' k! _$ D% X    if(!is_array($string)) return stripslashes($string);
- n$ `, p& X4 R% k3 n    foreach($string as $key => $val) $string[$key] = new_stripslashes($val);3 E* I9 W) Z$ r0 r5 W/ P
    return $string;" H; J2 v7 c2 I- X/ X1 X  v- P
} ( B3 h* H7 C# l, e% K

: [0 g4 u" g% Q" C" F这个函数的功能不用解释了吧, i! c1 e  ^9 B$ F2 }$ d- [1 [

" k7 ?! G* D- f* `所以我们看具体应用点再哪?2 {/ `  u2 C% ~
* ?9 H7 p' _/ N
1
' m5 P" ~: O7 R2+ ]2 T. e7 ^* f3 V
3
' r1 y4 H  }0 k/ F9 ]# n4" a% Y4 n8 P& ]3 Z
51 I8 z6 }' \+ e
6
, n1 l, x5 f$ X+ w5 l: H7
( L/ X" w6 y  j9 G7 r3 f& [8- s. k8 T0 K  c; N
92 }! C) Z! \7 p2 r0 z  n5 e
10
- k, v) u: G# ]0 ^0 b3 i11! J) B4 ^0 A4 ^- V
12# g, E' m1 l0 U3 p6 e; h
13
5 k" Y, X7 U4 I3 @( t14
/ M& I3 Y6 s% d* q: X) F15+ }) R& f2 Z5 v0 i
16
2 v9 R3 _; s' R1 J17- k7 K8 D! {9 J6 E1 m' V+ F: t
18! ~- U& c& J! d1 ]! h( d9 M
19
% v3 [* |5 q) b3 v+ V+ [( N7 ]6 A20" |3 P6 Q2 C2 x- L0 f
21- B1 S. K' b; M' j, ~4 S/ }0 V# Z
22) W" d& y* I# n+ i2 x
23
, _; }8 v2 a) `. \. W  W! b24, g% P9 c9 ~; w* O* N" g
254 ]7 d) C3 ?- k/ T: M
26( r: `5 c3 a7 h
27
2 n  ~! u! m  k28
. M  i9 L4 e9 f/ A2 P) ^29
- d1 l$ ?) i/ f5 P9 \5 ?0 C30
' X2 m1 i* `/ \0 N9 u+ x31. n; F7 `3 S2 ?$ J2 w
32- L! C' P6 ^1 R
337 g: q( c8 \) A- ^4 Z( G
347 k, ?' C: o: R  ^* x  ?# \5 S
35 require dirname(__FILE__).'/include/common.inc.php';
) w; u( T4 B0 h/ K/ e; n% {if(!$_userid) showmessage('禁止访问'); // 所以前提是我们注册个会员就ok了.
' W3 `. K, |( l- drequire_once CACHE_MODEL_PATH.'content_output.class.php';  E; T3 W1 O+ `
require_once 'output.class.php';7 R9 A) r# l. D+ v5 ^/ f) m, f
if(!is_array($info)) showmessage('信息预览不能翻页');//这里将要带进来我们的危险参数了
. M; A( e- n/ n+ g' H$r = new_stripslashes($info);   //反转义了.....关键
& ]% D3 a( ]! x2 Q* p$C = cache_read('category_'.$r['catid'].'.php');
6 \, C% F. O4 L) O% V8 @9 Q2 q$out = new content_output();, v' B; V' \% R, x( n8 s/ M$ w
$r['userid'] = $_userid;
& J1 I$ `& A% `; Y1 f0 g. n& D5 F; }$r['inputtime'] = TIME;
2 a1 l1 e5 h0 D. K, v+ d$data = $out->get($r);
* Z! v4 Z+ f& s- u1 Bextract($data);
* U" Y0 t8 ?- {! ~2 S! n1 g6 j* \$userid = $_username;
8 ^* E# ?0 @. Z) O( U$ y$ B# Efor($i=1;$i<10;$i++)6 d  Z# J8 \) h' t  t7 U1 g
{
# M. G$ L# l9 V+ V# B: x    $str_attachmentArray[$i] = array("filepath" => "images/preview.gif","description" => "这里是图片的描述","thumb"=>"images/thumb_60_60_preview.gif");; s* d5 n1 H9 B7 W
}
! W" k% X, j  W( g        1 r$ a6 `) F" Q7 h3 X+ H4 c" Z
$array_images = $str_attachmentArray;
) L5 S; N0 F6 A- K5 _$images_number = 10;
/ t( b# F1 C- L. x1 G$allow_priv = $allow_readpoint = 1;
$ j2 v* Q; v( H7 G$ N  s$updatetime = date('Y-m-d H:i:s',TIME);
, g0 S1 D7 y, ~7 F0 f        : z, F; f4 s( S% V4 X
$page = max(intval($page), 1);
+ x* B( ^6 g- ~$pages = $titles = '';
, T' h6 R% p. J' I% u! q2 u4 ^2 jif(strpos($content, '
回复

使用道具 举报

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

本版积分规则

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