( r+ r7 ?3 U& x. c! V+ `7 [3 f4 A
. t5 M8 y3 {( `7 ~+ D, {6 y- r
/ @8 x0 s" [- m. r
, J( O$ |% G- b3 _) o, I
2 X8 ~$ p) j0 f* K. L1 y7 T' C5 w. h2 H9 h' ^
+ I/ C( j' A6 r
/ |% F( r" _$ [. W* v: w1 X
* U. b7 N* \) J, G$ |/ _
8 ]3 c# \6 `* i9 y: |% E; q
& t! q! |) v. }; e {4 N2 s5 s9 W- B
4 j/ Z* i- T7 n+ V 0 v3 ^/ F) p1 ?
以iphone客户端app为例,在登陆的时候选择使用微博账号登陆 $ B- ]4 J i1 K- T& S6 a7 c
我的登陆账号为no*****003; q9 `8 P& V( q$ @9 s5 Z
2 v0 a' } D! h' D$ w: n! [6 j3 J
0 x& [: e3 q. W) S3 G8 t
- Y9 t' ?# y6 N" q) n. ]6 p$ a % j2 O3 b8 g* q! J5 N
4 \9 T8 s5 G& N d6 H' @* y# l5 I5 o
" T( S( ?' V, l! y( I; b% s V点击登陆,然后截取https://api.weibo.com/oauth2/sso ... p;disable_sinaurl=1 ! Q# p e8 w0 w! b9 V
这个数据包,将返回的uid改为其他人的uid就可以登陆对应的账号了。
0 \4 b* o0 \! o9 Y! W+ C 2 j3 W% v7 |; U" @( ]# Z7 O3 ~: i
' ~9 i. c( b* O7 V7 x# l* o
; R, G! E7 u5 s: d2 C: K 漏洞证明:
2 B' f+ I% v& [* n. E
5 J" | ]$ V4 G+ Q
* }6 A3 }' F1 i j. j9 n ( f5 n( |2 _" u3 b. G
我把uid修改为雪狼领导的,成功登陆雪狼领导账号。 y( O- ~/ w) H0 k
" W5 \0 r: `- r
1 `8 Y' F. e$ e' O
K; Y4 u% e+ v- z# e3 a8 D! r
& r* K- }- k1 O' s/ Y! t' t, k
9 B: x! k `, {2 I+ D& V- P ( K6 q- R- ^& d% v
; N# o# R& \% i3 q% ^5 A3 a# q" L
* f2 N& }) s; ]5 g7 Q/ S3 j7 u C9 g 1 a% P4 ^; e/ d
+ R8 z, U! _3 R$ e
! `" G ~; h4 v v+ z& U% n * ~" r% _. y9 S" {8 O5 b
+ z/ H. `/ n/ H/ [ 4 y& s) I }6 g) k& F
: }0 b& e3 j& L8 Y) {, Y
修复方案:
- r0 u& k5 |6 y2 p2 h( O
' \1 f1 ]+ b% X! g+ M! X- Y7 L) z # M( s z r( N, q$ [, w' S( k& r
0 c. y, Q8 C# J% z- V 正确校验uid与token的关系
4 K3 q! V# A. r1 h
' R7 Y+ B E7 o+ n# b
! y5 g3 R% b+ l6 B) S
+ B3 s/ I7 ?9 q. ^( C9 q; h4 K% ~ 7 Q8 v$ [! I8 t! i5 u* j' C* |0 ~9 B
|