1 w# w! a# ]1 W
# B+ @6 s$ @0 \# v. f/ C3 r! L. @9 w2 B- w% N* B5 F8 P" b9 d, Y
( I6 V% p, U' o. Q* `7 I+ f" E( | K+ j# y
7 x0 t3 A3 W2 c# i) C* [8 { |* L7 W( m
9 d9 Z8 l0 h `) M! d h
* `: H+ q1 {' [. P8 ?6 o
; I& H7 G+ B3 ~& R
1 T# e' j" i+ B. ^1 g9 {4 B, M: X% P! ]4 A9 y' o6 G- t( L* Z; A6 ]
( T2 ~7 e" b0 R ; O% J2 S% A& ]* y, Y
以iphone客户端app为例,在登陆的时候选择使用微博账号登陆
% ^2 w$ c# H5 N4 O" H我的登陆账号为no*****0036 D% G' `; ~/ S* h
. x8 S) @2 Z; x7 x 8 X! U" T8 X0 H. ^, [4 m
# S, i) {* K1 i& _! ?9 @
. e" e0 K* L8 a
/ \( ^. ], R/ V3 v% W5 Z ]8 w " R: I: j" Z& ?" D, {9 A+ e" a
点击登陆,然后截取https://api.weibo.com/oauth2/sso ... p;disable_sinaurl=1 * E8 J1 ~) f! U) ~4 R5 r
这个数据包,将返回的uid改为其他人的uid就可以登陆对应的账号了。; d$ ^" _9 m" t
" X+ Y5 N& m: [/ k, \5 @
% Y, |) F) w3 [9 _% v k7 k4 @
" Q' f: F% Z( M3 x* Z) u; w
漏洞证明:
4 n( N4 K. y6 m2 U3 P. {
z) Q- J8 |: S& ^ 2 j9 F9 r! I9 n& |' y
1 v7 {9 T, h$ n 我把uid修改为雪狼领导的,成功登陆雪狼领导账号。) K' I+ c" y e
" l' M$ s6 Y" v- n$ c
& P$ G& O4 N: b @. } R 9 e+ G; c& e3 N# [" y3 Q1 a4 d# g
- s' I& u; }. d) c1 \
! x! E1 ^' [& S; W* n % G; ?2 Y% e D2 c s" f3 B9 T) }
( F: f/ M% L) k5 q4 h
$ p5 @3 Q7 t9 F0 H
4 E. F) Y4 V. q5 S9 `. Q6 k a
" y! Z9 B- d* i# X( z
5 g+ c0 p" `8 o' R( Y
) b+ B- B% z4 ?6 w & f4 }0 d$ A+ t$ U
, V0 S: B |# @
. ]# S2 H" P6 L
修复方案:
; ]7 d. s9 t% m3 q( j3 t! k N$ t 6 A5 X- Z. T/ _5 |- T9 U2 b
. m' {5 e2 w: \* K8 v7 ~
' q6 [' z9 U' B; K/ j. j
正确校验uid与token的关系
$ j) i, _5 F+ z* C4 ?
' W8 G% |' X2 R6 J" X5 x0 H& ~
4 m; E- j6 ?. } ( ^/ H9 ]3 F8 ^* a. i
6 o2 A ~: o2 @" l' t7 l$ J
|