找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 2572|回复: 0
打印 上一主题 下一主题

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-4-19 19:17:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
说好的第二季来了....... u+ {2 s; z& Z: X

8 G" f2 @, R4 p- K& p1 K   要转摘的兄弟们,你们还是带个版权吧!    ' |4 x$ s0 _6 m* @- y% N+ z# Z
) E, I, _4 V+ B; U8 ^. Q8 Z
  组织 : http://www.safekeyer.com/   (欢迎访问): m. H( l9 b1 F& L- O! d7 W8 N

5 G. X9 C; H. _( |- Gauthor: 西毒    blog: http://hi.baidu.com/sethc5
0 Z- i  o/ h1 m/ ]: `
' l! O7 q9 G) U' {& n* l  h     . W& m) j" m: [
9 J; q6 O: Y; R6 G1 p. a$ k
其实还是有蛮多漏洞的,只是我一步步来吧!你们别催,该放的时候自然就会放了.
; I0 S  m! M2 j
6 V/ G; |: Z" M) w6 t& B: Q, t. P过程不明显的我就省略了。- z: }) i/ ?) G- b# i: U$ X: D; v5 \
7 J" `6 N! t+ j% j
在preview.php 中第7行2 V' V' P1 M3 f7 z

1 `7 f8 H1 `; p9 ^) r0 H' Q* t$r = new_stripslashes($info);+ h( ~" f* q6 m/ Y1 J
1 ?8 V1 S: G& M7 z4 R! [' P
我们跟踪new_stripslashes这个函数
1 H- ?5 K$ H  g; t9 B) O" S% G6 G6 p) @1 U5 Q8 l; _0 f# l8 B+ N
在global.func.php中可以找到+ s& D7 Z7 }* \6 L4 m3 Q
4 @1 p" ~# [2 H1 p
1
1 i+ T6 l3 c3 e' L) Y2! n5 A! |3 a8 X0 U: ?9 f" X1 j' B6 R
3
$ U  L/ @" B; S4) H% {2 r# e: s# \
55 r$ R  e' H+ X3 U
6 function new_stripslashes($string)- h+ _  z* H( [' c
{  t/ u& q: n( p3 M
    if(!is_array($string)) return stripslashes($string);
9 N7 F$ B, o% }3 F  D    foreach($string as $key => $val) $string[$key] = new_stripslashes($val);
% [5 T/ S/ `, z) w" R6 m    return $string;
% }! m2 a& D! J" }! t. R} " q6 A3 ^' n2 {- S

; X9 E) _, n1 a- O6 ^; ~# Y这个函数的功能不用解释了吧
. M) A$ \  v2 n" c
. j* F9 T9 X# l8 e所以我们看具体应用点再哪?
2 f4 k6 {# \1 F) L; ?# ^) m2 {6 V# K0 r$ {3 E
1* C; g* \4 _7 r7 h
2
3 ]+ g% F: d% ]1 G" L2 c3
3 u# r. n8 n, V# Q9 J! B4. e; ~5 i: p. X
54 ^: _0 ^. H7 j5 D+ f  M
6
5 m' `" Z8 Q# U7
; A! o0 o) n! Q! B' k5 f8
* C5 y) @( r9 L9# O4 @- J8 t4 w$ ]
10* |8 v4 Z% g6 Q' B
11
) X, |6 p; O" w, b- l$ i* H' }12
* m; P! |5 O- J, Y6 ~1 q( B+ H13
# u6 E* @. U2 f  J  u14
8 B2 G8 Q  u! F1 r2 T15  n- d3 H" ^1 [3 o% X
16, ?+ F; s6 l/ d- T
17% I, z+ @& r& f' H8 ^3 @; e& v
18
# P, D* Q  a: H. q0 D% ?9 U0 M19
5 A! v9 e9 B7 L7 d20
  Z' i6 m1 C0 i5 S/ i# M21
# B/ `7 m& R% p0 l7 B* p22
& E! S3 _1 L- U23
: [8 D9 g4 b, ^- J2 x. t24+ `" B5 W% A4 @2 f2 a5 j5 [% W
25
6 q1 u4 i1 n$ E26: G  `7 Y# z% \% \
27
! m9 P+ T2 k2 n' P  i  p  t28
$ c$ h; X+ ^' |3 e' q297 N/ S5 `2 i& D9 R4 Q2 c
309 B5 U+ B* z0 {8 x
31: m/ b4 q7 `0 m% O
328 b! M; ^: v* m8 j, r( X% |( x
33
1 i! p% ^7 x% x0 g. @$ N34: a) Z0 r: ^2 D- S1 L( k
35 require dirname(__FILE__).'/include/common.inc.php';. M5 Y/ ~& h$ }- P  o2 f- Q# W: O
if(!$_userid) showmessage('禁止访问'); // 所以前提是我们注册个会员就ok了.
& I$ [$ F) F" [9 L0 H% [require_once CACHE_MODEL_PATH.'content_output.class.php';
8 Y; {3 P0 I: r! P1 a) p( Vrequire_once 'output.class.php';6 c# J. t* }* y6 `5 ~+ P# b( h
if(!is_array($info)) showmessage('信息预览不能翻页');//这里将要带进来我们的危险参数了
7 A4 B' s0 r) v+ F2 J$r = new_stripslashes($info);   //反转义了.....关键; S; x( p# G& ^( p) G% D$ ~7 X8 v
$C = cache_read('category_'.$r['catid'].'.php');
4 D) @- V6 c9 k0 q' C0 g/ T$out = new content_output();( P* c# B6 [" H+ V7 K8 ]3 X4 O
$r['userid'] = $_userid;8 o6 U7 D. @1 a, o3 M" g
$r['inputtime'] = TIME;
! F4 ^* A0 J( k$data = $out->get($r);
2 g6 g9 z1 W; O6 i+ g7 h2 Cextract($data);3 k; J/ j9 ~$ Z* h( @
$userid = $_username;/ f" K* P6 j: ^, @3 ]/ p
for($i=1;$i<10;$i++)
* z! i- L, q  L' f1 M0 a. W3 M{$ E- K: x- W% m- y( ]: l4 k% r
    $str_attachmentArray[$i] = array("filepath" => "images/preview.gif","description" => "这里是图片的描述","thumb"=>"images/thumb_60_60_preview.gif");
' u1 z( R$ Z5 \* ?& @$ B8 @, m; [& E}. D# s0 {$ `: F. p
        8 k8 s; q1 Z) ^- ]0 R1 Z7 [
$array_images = $str_attachmentArray;. G+ @: G. C5 t
$images_number = 10;
9 H% h& q  ]9 c7 `# z" W$allow_priv = $allow_readpoint = 1;; I, C- m( L& U) ~5 S5 [  `
$updatetime = date('Y-m-d H:i:s',TIME);* z3 s6 ]+ m$ D* `3 O# ?; F7 W
        5 J; n$ C5 p$ T! X" f' u; L
$page = max(intval($page), 1);% ^( @8 D' T: t3 V
$pages = $titles = '';* t. B& B" f0 {  B1 G" Y# N1 u' G
if(strpos($content, '
回复

使用道具 举报

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

本版积分规则

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