- h) @, ~2 _6 x8 V5 \& q7 c- M/ N5 Z, T4 F( q" v
7 h: o& C t, h5 S1 d( n) x6 R3 [3 c9 _
" ~+ D$ A& M. v
' }1 v3 c8 {* a
# X# \5 [; s' U; O! L7 K; S
. p9 f7 a$ Q- n& c8 E2 G+ p/ ?7 \3 {0 Y7 Y$ T7 S% ^9 W
# c2 W) E5 K* F( S# q
1 p, ~8 u. o" v+ k7 i
) M1 f9 Y1 M: t G- R, u# @' ]4 j2 x# J$ R2 ^
! n) m8 c* U; V C " |( a& ?/ n5 k4 Y
以iphone客户端app为例,在登陆的时候选择使用微博账号登陆 7 Q$ e9 N, @! _
我的登陆账号为no*****003
- m: z: E- K( h. B' T/ Y) v& [
* ^: k' M1 U n) H/ P8 @# v / ~" f! e ]& |: q# G" V/ s+ q
# J1 `0 F5 ]3 x
& \1 [8 o9 P& y8 Z% f" q5 r 4 `: {" r6 C3 ]# m' t/ J
1 ]' v' J, t3 ]1 J8 t+ y9 b8 B4 D& G点击登陆,然后截取https://api.weibo.com/oauth2/sso ... p;disable_sinaurl=1 * I m9 {- Z+ H9 s& @# b4 [
这个数据包,将返回的uid改为其他人的uid就可以登陆对应的账号了。1 G# H# H6 D7 D3 v3 r, Q4 S
L7 b2 l( i' {/ t7 f' x. a% t
7 B3 J% v' G2 J0 f& g. m
& x* S! H1 a k$ d& h$ ^+ c& r. n
漏洞证明:
+ S: ]8 ]# O' I
, e1 v) {2 }2 E 7 Y' ^3 m+ F. u J
8 q: {+ P# k# u: I: F
我把uid修改为雪狼领导的,成功登陆雪狼领导账号。. b& @) `$ p$ _
& M8 m3 h3 @( r" q/ a/ x
( V. a. _" H W# w8 @1 m
- C G& {- k" N& {% O
, y$ ^/ h( {$ o# ?3 y 9 p% J. g: W2 I G
% M l+ B6 E% v$ x6 P
+ x4 x; l. k" R* f0 ^+ g% I1 q $ B+ {! n8 C; e/ V# ` S$ ?# [4 N
1 F. d" }3 j( A 1 Z9 i, R- r- G* s* N) z: }6 `
; Q7 P: c) F& r
+ ?0 }/ E* d0 t7 [ 2 z, c% u! c" j
6 V! Y5 h8 z5 w! j
; k: {. Q9 V2 l
修复方案:) ~6 P( j/ {$ z4 z7 d( q% C$ w; o
& D+ s ~% e6 u2 _* A* u! z+ L
3 \& T# ?" | I* {4 C0 ~
; X7 M! I5 ^+ N/ ]8 f 正确校验uid与token的关系
- o1 c# d% n' X: ]1 Q 2 ]$ V! q3 E3 X4 y/ ] D
! C$ ]" U" W$ L# @) R: o% T
: U1 U/ ^ U' }8 }" z6 z! y
% F! k' q' m/ T& v |