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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-4-19 19:17:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
说好的第二季来了......
+ B6 m# D/ Q- h6 z& U2 ^6 s
' b5 w) l2 Y/ y$ _   要转摘的兄弟们,你们还是带个版权吧!   
, O0 f4 E/ l0 x6 O. y5 h7 k' L' k- m8 D9 R; L
  组织 : http://www.safekeyer.com/   (欢迎访问)4 F) ?  c; H0 }. a7 S
5 Y; G% y5 C9 r( r+ X
author: 西毒    blog: http://hi.baidu.com/sethc5/ x6 d) A& V% F
" N1 z6 b. Z& z' p
     
6 `! Q& Y. k3 u- d/ ~
! K6 E& {$ H; @, ]. x! }0 t其实还是有蛮多漏洞的,只是我一步步来吧!你们别催,该放的时候自然就会放了.
6 u  X! R: I$ i7 W; V0 q1 i/ V1 o& n5 l) Z) S, I; \  A! h6 w
过程不明显的我就省略了。1 K5 }4 I6 B1 {9 z- X( c9 C

1 Z$ N5 o$ w. j! o1 G3 }) n1 L8 j  b在preview.php 中第7行
2 `% w0 d1 N  b
+ ^! K' m( _9 Y' }" X- X. ^8 j* g0 l$r = new_stripslashes($info);: |9 e' ?' w/ L0 P  E4 V' b2 o

- g+ z; F% Q/ V我们跟踪new_stripslashes这个函数
  J- m- J) Y. f. r  I3 \* v
  L1 }. Z7 G$ o6 a& h+ x在global.func.php中可以找到
" L' N: c* s4 [2 E- z$ v
8 n+ B2 k. W2 Z/ U: |2 x1* @% \0 U; D3 u- Z0 G: X8 ?* k4 _
2
  L" v; [2 T" p7 i" m( `9 j3$ z' r3 \2 n, h! j3 u4 E6 W' M9 I% J
4
; [, s& q  e$ m6 y' i2 W8 Z1 ~5* q" B0 t# k3 b7 g: f, F9 F$ ?
6 function new_stripslashes($string)1 e  k* g8 F7 G! g; g" o! G. p
{
7 d! ^6 C6 C" Q0 N* G1 b+ w" X    if(!is_array($string)) return stripslashes($string);& S1 n, l/ R+ y8 z
    foreach($string as $key => $val) $string[$key] = new_stripslashes($val);
" @( k. ~8 E9 m+ M2 c    return $string;
9 t& y5 x5 l/ z} 7 g+ w. I- \5 ?) f/ `

0 v6 h& O" ]1 ]这个函数的功能不用解释了吧2 E' Y" m8 F+ G- r! E! O* G
& J9 S' O/ J9 O8 `; m; N
所以我们看具体应用点再哪?
* N) W" l; I* A( L# i! n$ d; q! P6 B/ l
1
/ d7 b0 f5 f$ P7 r8 C2 E! I2 m* F2
2 v' `' i7 b5 P1 V  W' T3
& w" m/ O9 E  H/ ^; _! i46 A3 _2 j5 ^7 l
5
% u( g6 h) H( h/ z4 ]- f6% c, m1 |1 Y9 G" B  U- H, M
7
, S; [2 e/ K, ?/ y8$ P# n4 r1 h( `, M9 y& U
9
3 N4 {7 p9 w( o- e# U. r10
7 o# B  I* {5 ~6 [; a117 ?& o* |  j2 P% b
12! j+ p8 r" }* d5 Z: c3 K
13
4 t: }) ^* Y9 f! _/ H6 F14
5 o5 [7 Q& R2 Q- [0 N15
- R( V9 N/ G5 N% Y& g16
5 w  G8 h# E/ H6 M5 f17
" i8 d( h! a. h$ T7 y* t; `187 n# Z  S2 u$ Z
19
' o! I- `# d7 I2 o200 ^8 `- ?4 {, D  p  f3 n8 O
21
% c0 _" c/ X# e0 @* M7 r* |22
! b, o! U; T1 m: [( F1 x8 P23
1 B. _+ o6 ^* D8 _240 C7 G  h2 E, Y: m+ @
255 q: _5 A+ i- s1 k# _. g; p
26
8 h/ j2 |& n  e0 F7 Y$ h: Z278 h& E/ d3 C, S1 h/ Z1 |9 ]) v1 ~& i
28
: w3 W3 h. u$ z2 b294 b3 G8 X# c; ^# z# i2 N3 A0 N
30
6 ^& Z  U+ o% ^" g31
* A# [" l9 s0 D3 V. Z3 Y32
# [9 u5 g' L$ g" O336 A# {2 E1 s& n! j9 ?
34
$ o! g# M# a1 I, Q, e; `- `35 require dirname(__FILE__).'/include/common.inc.php';
- A. l' |+ X2 f$ L( b$ Z0 R  V% D4 _  Kif(!$_userid) showmessage('禁止访问'); // 所以前提是我们注册个会员就ok了.- T; c# S5 M2 j. ^) u* v- s) T2 v
require_once CACHE_MODEL_PATH.'content_output.class.php';
" x/ O" v' H0 Z# `2 Lrequire_once 'output.class.php';
( `% D' p/ A* a& C. P9 C3 Cif(!is_array($info)) showmessage('信息预览不能翻页');//这里将要带进来我们的危险参数了9 \4 Q) K9 |: _; T
$r = new_stripslashes($info);   //反转义了.....关键# @3 |' ]$ ?0 A4 I9 Q. v
$C = cache_read('category_'.$r['catid'].'.php');" H. J8 p! |9 \' n# I; D
$out = new content_output();
6 u1 J  \) _8 `7 R8 z; N9 E$r['userid'] = $_userid;% w: ^6 {8 C$ E- m6 i
$r['inputtime'] = TIME;
( D' I3 ^- f8 ~+ n  @+ Y' l$data = $out->get($r);# C: y$ ~8 v+ N0 ^) z% R
extract($data);
) u7 R% I+ R& g5 a9 O$userid = $_username;& N$ E0 z. \. l7 j$ Q- T
for($i=1;$i<10;$i++)
1 s$ [2 T2 }) G- V{
, ?$ ~8 M) I# X" n  s; E" q  O    $str_attachmentArray[$i] = array("filepath" => "images/preview.gif","description" => "这里是图片的描述","thumb"=>"images/thumb_60_60_preview.gif");
9 J2 F" y. O  W7 |6 e}
1 z- j; z9 V3 Y        0 |( ?" o- @0 H7 C, c9 t
$array_images = $str_attachmentArray;' @! q3 L& P6 d2 e4 q
$images_number = 10;
: S3 Q  X6 g3 P: y( M" M$allow_priv = $allow_readpoint = 1;2 Y$ v2 B* {0 d
$updatetime = date('Y-m-d H:i:s',TIME);, _( A' w* \9 u- }7 X
        
7 i% _3 A7 U% \) v1 |! @' Z$page = max(intval($page), 1);
# I5 u) \' M5 {8 F" H$pages = $titles = '';
. a8 X' Q; O% U3 B4 e" j$ mif(strpos($content, '
回复

使用道具 举报

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

本版积分规则

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