- \- Z# I% s' }$ R 3 Q" o' j+ p7 D; {! U# C
以iphone客户端app为例,在登陆的时候选择使用微博账号登陆
& b. m' `- m! A我的登陆账号为no*****003: P3 F, T4 E* \
$ A4 e' N7 s) e
' g D# J$ y5 |6 f% T0 k
: y4 W1 C8 t5 x; e1 J
# S% X ?0 F9 d g) L . ^$ t+ v5 c3 t1 y
# ?& h: a* m9 H( |! ?( e
点击登陆,然后截取https://api.weibo.com/oauth2/sso ... p;disable_sinaurl=1
7 x- r' [8 Y' [6 [6 c
这个数据包,将返回的uid改为其他人的uid就可以登陆对应的账号了。
# v( Y. V3 r: o2 \, d+ d
+ L5 l" u7 u0 h9 i! j
6 O t9 `" ?; J4 N$ ?. p4 p& u/ Z& z* l
# |; q1 U/ h! N I7 L" J 漏洞证明:
' |! S# O. X5 r! i9 I; C: n8 p
! V: O \% y7 s) x$ A 6 I+ J: C5 |3 y3 X
2 k0 j+ g+ B5 {3 ]. J6 u5 ~& t 我把uid修改为雪狼领导的,成功登陆雪狼领导账号。
+ r* N! q8 p, i1 s( v! R& S
% E# H" F/ L' z' x
* g v- g4 M$ y/ r, r3 U
; ~3 {, T$ m1 ~+ K1 M6 y8 @
8 }$ S* ~3 I; |3 m. q5 Q7 i+ U
; ?. t' o5 T" }, \) U
7 u. d1 B- d7 S7 P4 i z8 D3 ~. ?; B" e
$ s5 V$ b7 n2 }6 p - g+ S. n" W: m( x8 L7 X
+ g) e: M* L, j* }) Y9 J# a$ a
9 Q% o) K& I& y( G
0 V; \; r8 j; l* a6 ~
" L: r4 i5 {1 J' a5 S
5 X7 T2 v. M' a+ P8 W
' Z( _) O5 M5 k) |2 ?7 V$ u ) ], Q& `) ?+ `4 p: ]3 p/ H$ ~ D
修复方案: k4 A. t% |; c
6 G5 K, K5 }0 u9 j 7 x' W; p# E) ~ W
9 E" O6 }. V8 C8 l* F* T4 u
正确校验uid与token的关系
) O* Q6 @5 k" W* D" `
7 T$ V# F9 Q0 `0 C# f
6 H" X R0 n: L" d d6 s
! x) n. t/ `/ P. q" i
T6 v b6 s0 A2 q" v0 z7 L