9 K: |( O% J4 y& L/ b- N: w
, {$ c- }. s0 m8 n9 w
以iphone客户端app为例,在登陆的时候选择使用微博账号登陆
+ Y8 S3 i6 W' {9 p7 q: Z我的登陆账号为no*****003$ I: F; p3 ?6 O {7 \- c
O2 ?3 _' `2 G4 w' e
! [) j2 C8 c& g+ z
, e( g# o/ L3 S/ N: r
2 x. b3 A- i8 @
5 S3 ?/ {3 o' ?) x0 L; k7 c3 w
% d. o' c4 [, U& L2 X, d点击登陆,然后截取https://api.weibo.com/oauth2/sso ... p;disable_sinaurl=1
5 r8 C" E% i: W: y
这个数据包,将返回的uid改为其他人的uid就可以登陆对应的账号了。
- u6 v) z8 i$ F" V. \& y
' x& P1 W- }& b4 ~! S5 H- }
0 G1 \" } U* d# V) ]/ y5 k$ G# |
, M! o% K8 U! {/ k* G. d! Y 漏洞证明:/ ^# m m+ u- i; W+ y6 O
5 |/ N' u( ^, S
; X0 [: I5 L& o/ r8 J% W
1 z0 \, @' K: e. N" a X 我把uid修改为雪狼领导的,成功登陆雪狼领导账号。/ P4 ~. n" e- v
: W) E c) s1 n) n
4 x$ b4 E4 }% e+ S/ {9 ~- A
1 [9 v& |; ]* `( Z3 c+ Y5 y3 W
9 F* I: R; a, v% o9 L: y
2 t7 s% l! [" ]) R- N
! T7 y2 D: u1 K- E- _9 w
; I- s! }5 b" D: _/ V % Q9 w$ R* I( D" I/ R" {3 m
* @3 y. T8 }% d" _ ]6 G) u2 ?
2 i5 m" \* j# b" R# c
' }6 D6 i; z' f/ D% w
4 |+ r$ `- W9 R- V) D1 `. L. b
8 e5 g O$ E7 \4 p$ E# n
& X" _/ a8 I2 Z: i
; m$ f9 }; d# E; i
修复方案:
! b" m7 d8 w6 [7 L3 K+ e; S
: T& M( P1 i% }. x9 i+ @/ ]9 O
# l" q+ {& v- F3 q. i0 m + Z7 m( x8 \7 R7 ~, g% u1 m8 Z# n
正确校验uid与token的关系6 S. }+ d, o% I! I$ E
, x3 w" M" X! S2 @, C
1 e4 G9 D$ Y; m& t J- x% X / W7 {4 Z1 [& B" n2 i
* P1 m2 V) H5 F5 v7 d9 X+ u1 ~