' r- K/ R% E( f. V3 c* @ 8 i, e& T) Q4 D5 |# F0 L( i+ K
以iphone客户端app为例,在登陆的时候选择使用微博账号登陆
( j7 q! y q2 W, i我的登陆账号为no*****003. L. D, d* h7 L. s- N) X
1 ~2 W% m) L2 Q* J1 q2 n5 K
$ K9 v; W, M; P; p# L# M0 J8 Z
" ]9 H% y$ m* y) X, h7 J/ G7 o8 I: H
5 T" h4 Z/ j9 k6 b
/ P. H6 d8 ]# l) Q
+ I) d6 l) G6 f! n+ W& Q
点击登陆,然后截取https://api.weibo.com/oauth2/sso ... p;disable_sinaurl=1
! Y# x* [' R. h# v1 k/ w7 _ v7 O这个数据包,将返回的uid改为其他人的uid就可以登陆对应的账号了。
# ]5 Q: [8 N$ K
* p8 u, f1 V$ ]& W2 q
' h% L7 l7 ?6 a; d
$ W8 B1 [" c8 N 漏洞证明:
1 _6 U) n+ ]2 |
# B0 n5 a) W( b- C7 x
8 ~, [3 n6 \0 @
4 g1 e7 L5 z2 d! N) h3 a 我把uid修改为雪狼领导的,成功登陆雪狼领导账号。( `' c/ i" j2 b9 r7 V. L
0 H- }; F4 B4 A5 g
* A- K) t1 f. x. b9 m
% L+ |4 y- w: h H0 s9 {
0 c5 D# h# @0 T: U
, |% A3 c t% O% V; \: R# {% D9 [ . f4 w; Z3 @0 p F
+ M8 g8 n+ {0 M- Z% x
, c& Q) @4 ~0 e: ^
4 j) |/ G1 a* ~5 t, N' g
: f3 n" Q; G3 ?4 P
9 ]0 _+ \9 A" x& u# Z ) |; b( N* |/ m# o& U! G
& i- ?# @% D. B+ h% {* O8 b
5 ]( u5 U5 V$ i. V- a8 I5 W
" C% a4 \# g' j' U/ m. D7 F5 \ 修复方案:
* p) d) {' O. K- g
4 R5 ?$ D3 p) `% s5 p9 A
1 M7 p: [8 k' p+ _2 S1 G& `" }3 l5 w
; p$ u. t# J d: N' e- }5 r0 I 正确校验uid与token的关系
( o1 J0 z; r% w( F2 m* b, u
8 a* A' u5 P: ^
; ]1 S7 p) s$ T) C8 \
9 @* s" h+ }5 j
# ~: r" S( u& S; o; T1 o3 D' s# J