8 y7 K2 D- }% g. }$ q1 f8 K$ H$ ~
/ B7 z! Q8 L* F, l9 h) `
$ R1 O) d; E {& P' b
t# r0 X- O2 |2 j' G1 T
- ~7 d/ R0 ?# l
8 Y) k5 w3 {' v* p
# u7 O) N/ r x- D/ t+ X; x% V# e! d$ p4 h
/ f( Y& W' N; R4 m( q0 v/ b4 |) G# v% @& T4 R. M2 f8 ^
3 l/ k/ g$ o+ i+ h1 `$ F) S' T1 v
# f# Z2 {% K' }8 f) q9 S
3 `9 C) m3 e9 l( s! g
) p1 s' |/ q U8 G6 c! ?
以iphone客户端app为例,在登陆的时候选择使用微博账号登陆
, m2 h$ b) o7 K" Q0 M" J; C1 e我的登陆账号为no*****003
3 y. V/ k# S" i7 F4 |6 n9 b1 w N# G- x" D# I# A9 V9 C7 k$ k0 L
5 X" e% C! Q) y$ G& a ?
- D) P8 R6 W% U, A3 c$ T$ L7 P/ y- C , u/ m7 m2 {" Y
+ d% n5 ~! |3 i
/ h0 h6 ^! h+ w! [ ]点击登陆,然后截取https://api.weibo.com/oauth2/sso ... p;disable_sinaurl=1
7 M2 | s0 k# Y, v# R- E7 i这个数据包,将返回的uid改为其他人的uid就可以登陆对应的账号了。( M$ ?7 _# U6 E9 ~0 ?! |
% A1 {& \7 K& ?0 V . h+ o- u$ v4 b0 ?' v- u0 _4 c$ q' Y
" K, i( H/ {1 k( |& x! Q a& \9 F) J 漏洞证明:
) G7 J" W# s$ G* H4 q
9 o9 ]# B2 D+ g+ W* T+ W0 J 9 x) c' o' B! k
7 I5 z Y6 k! R2 M4 q 我把uid修改为雪狼领导的,成功登陆雪狼领导账号。2 O; }2 E8 I( T8 ?6 d4 e) c; u; T
! |$ K5 m; H$ m9 {0 k" S
; ~2 M3 m. o) [# b+ O3 ]
3 x- C0 l/ W; X( X J ) U$ @0 l0 ^7 V2 F! u5 t" |
# ?1 h) \( }9 P; x3 n
* D- q; p! x( y( W+ `7 Q
; c7 {/ E; A2 x! l. H
- R$ |) x8 B1 P8 d0 D2 O' J. k
X1 @+ p4 Q5 ~) }
$ a2 C0 s# y! B5 d+ C
0 y8 e7 t- u9 P; } ' n1 d ?5 v1 b% j# ?+ t
! k! B* J: G6 Q & Z: G+ P# I5 h
8 f/ } y- m3 s5 z 修复方案:
8 s: c8 z/ M: ~) \5 { " |4 M y F& M* |5 N
2 o* r% s7 V/ m& ~$ X$ ~" }3 W
; ~9 j* b1 ~* q: u0 Q3 U& G 正确校验uid与token的关系
% N/ P8 N1 j. b* ?* U& e1 H
, z+ k' W0 [- b4 B
' h6 S* ?6 F+ o
- t" M5 \1 d+ s2 M1 O$ F* c, P
/ G7 h3 u ^+ S2 g: p |