8 k- }" o9 U. |; M; h" Y3 v
6 P4 y% c. `$ D* J8 W( x7 @/ T' D2 x
% E. Z1 {7 R2 {6 U/ h; L1 ~! y
+ T9 Y D2 V4 `7 g( W7 X
( P% l0 a8 U# J: d c! @. E/ Y# W, B2 U5 c# h
& H. Y. h( D. [. @: W( Q: O3 a: ?0 p' Q! `) I8 ]2 B
! Y% R5 R3 D; [! R1 F3 ` Q" l3 J' q4 H8 H
- a2 i( j$ h: \5 l) T6 B
! ]) |7 ~: _% f6 x. j
+ {4 {" ?4 H1 I, v( R5 o# ?: C" Y/ u 以iphone客户端app为例,在登陆的时候选择使用微博账号登陆 : ~2 H Z$ _9 u E; F. H0 a8 t
我的登陆账号为no*****0037 N! i- _4 ~0 H1 n6 c
8 ^8 \3 m0 X& ~7 X + @$ P! \: n) b5 p- A
" T* ?. t! t2 F" i, f- F h6 t
: J$ x5 c8 E) ~, Z- }- P* E 6 I2 N) D1 G Y9 ^2 a
- _, e7 E) R% S3 ?* S# v6 U点击登陆,然后截取https://api.weibo.com/oauth2/sso ... p;disable_sinaurl=1
% R3 y. }; x7 p, n1 i+ h3 t3 L这个数据包,将返回的uid改为其他人的uid就可以登陆对应的账号了。
2 B: N" F! R) c) V4 ]
o& F. n" B; [) a , ?- R1 }; Y7 S3 A& j
; ~8 d5 i: m! h2 V
漏洞证明:& S8 K/ s6 N; H* \6 p) s: u% X
' P' F5 C( `3 I# q E4 p
3 r+ e" g9 o X7 _4 K
6 W" x: \8 F+ k8 d$ A8 l2 y, ? 我把uid修改为雪狼领导的,成功登陆雪狼领导账号。
, X" Y. ^3 o: o( ~2 @( e/ Z% q
0 h$ u$ S6 Q' U9 G/ c
1 c: m7 {7 k, b* A, E
K2 F8 C h. M" d- h
Y: m0 Z3 ~* `, H( v6 D2 k0 X
1 P6 g# U9 T) s6 x; I2 Y6 i
3 Q |) ?1 f4 K: W& W 7 W8 k0 [5 Z" p3 A/ Q
# L; v0 w) O3 s
1 z7 v* Z6 Q- d% E1 f! ]0 G: e }% I' S$ d5 H# G: b8 N l, H E* B) y
4 A7 z& R4 B1 @ v
3 I7 A# J+ W f" B8 a ( W& L) S7 k) r2 l
* V9 J# G- R: o1 j
0 ? K& l" U6 S' m9 T
修复方案:5 I0 [/ d2 @! I0 k
; k% c `* v, ?* t% n 7 m7 y/ K& d( F$ r1 J8 O
`5 N/ S' \8 q1 j3 k+ L, Q
正确校验uid与token的关系
% J1 J; |1 C6 `/ Z% _0 Y : C1 | a& K; y2 U+ N6 M
7 T2 b) `1 G1 ~7 ^ 2 v: u; k" C5 E! q& J
. O: H' P9 i1 c+ d" H |