Facebook又被黑客耍了,這次有近1億用戶受影響
2018年9月28日上午9點(diǎn)41分,F(xiàn)acebook在其新聞官網(wǎng)(https://newsroom.fb.com )上發(fā)文表示:該公司發(fā)現(xiàn)了一個(gè)安全漏洞,黑客可利用這個(gè)漏洞來獲取信息,可能導(dǎo)致近5000萬用戶信息的泄露。
在這篇新聞稿中,F(xiàn)B產(chǎn)品管理副總裁蓋·羅森 (Guy Rosen) 撰文表示:
1、技術(shù)團(tuán)隊(duì)在9月25日下午發(fā)現(xiàn)了這個(gè)漏洞。
2、此安全漏洞是2017年7月份出現(xiàn)的,在2018年9月25日被識(shí)別、并于9月27日被偵測(cè)到。
3、目前 FB 基本確定,已經(jīng)有黑客利用這個(gè)漏洞發(fā)動(dòng)攻擊。
4、9月27日早間,大約有5000萬個(gè)Facebook賬戶受到攻擊。
5、在問題發(fā)現(xiàn)后,F(xiàn)B對(duì)受影響的5000萬用戶的訪問信息進(jìn)行了重置。
6、除了受影響的5000萬用戶外,F(xiàn)B還對(duì)另外4000萬用戶同樣做了同樣的重置操作??傆?jì)影響用戶9000萬。
7、Facebook在9.26晚上稱其已經(jīng)修復(fù)了這個(gè)漏洞,并已通知美國(guó)聯(lián)邦調(diào)查局(FBI)和愛爾蘭數(shù)據(jù)保護(hù)委員會(huì)(Irish Data Protection Commission)等執(zhí)法機(jī)關(guān)。
在披露這一消息之前,F(xiàn)acebook股價(jià)已經(jīng)下跌了1.5%左右,消息傳出后進(jìn)一步走低,到收盤時(shí)下跌2.59%報(bào)164.46美元,盤中一度觸及162.56美元的低點(diǎn)。
漏洞詳情
這個(gè)安全漏洞存在于 Facebook 的“View As”功能的代碼中。
由于 FB 的隱私設(shè)置極為繁瑣,用戶經(jīng)常不知道別人看得見、看不見自己發(fā)布的某些信息。
View As 這個(gè)功能可以讓用戶以第三人稱觀看自己的賬戶,確認(rèn)隱私設(shè)置是否符合自己要求。

FB 透露,利用這個(gè)漏洞黑客竊取了用戶的“訪問令牌”(access token)。
訪問令牌的作用是為用戶保存密碼,這樣用戶就不用每次登陸都輸一次密碼驗(yàn)證身份。
取得令牌后,黑客可以黑進(jìn)別人的賬戶,看到設(shè)置為不對(duì)外公開的帖文和信息。
作為應(yīng)對(duì),F(xiàn)B 對(duì)受到漏洞影響的5000萬用戶以及可能成為進(jìn)一步攻擊目標(biāo)的另外4000萬用戶,進(jìn)行了訪問令牌重設(shè)。
什么是access token
通過官方給出的資料,我們無法確認(rèn)黑客利用的漏洞中的access token到底是如何使用和泄露的。
不過我們可以拿OAuth2來介紹一下access token的作用和如何保證安全。
OAuth 2 是一種授權(quán)框架,允許第三方應(yīng)用通過用戶授權(quán)的形式訪問服務(wù)中的用戶信息,最常見的場(chǎng)景是授權(quán)登錄;再?gòu)?fù)雜一點(diǎn)的比如第三方應(yīng)用通過 Github 給開發(fā)者提供的接口訪問權(quán)限內(nèi)的用戶信息或倉(cāng)庫(kù)信息。OAuth2 廣泛應(yīng)用于 web 、桌面應(yīng)用、移動(dòng) APP 的第三方服務(wù)提供了授權(quán)驗(yàn)證機(jī)制,以此實(shí)現(xiàn)不同應(yīng)用間的數(shù)據(jù)訪問權(quán)限。
OAuth2中最典型的Authorization Code 授權(quán)模式,其大致流程如下:

我們把OAuth2的整個(gè)認(rèn)證過程大致分為三個(gè)階段。
第一階段主要是向用戶取得授權(quán)許可,對(duì)應(yīng)圖中的第1、2步;
第二階段主要是申請(qǐng)?jiān)L問令牌(access_token),對(duì)應(yīng)圖中的第3、4步;
第三階段就是使用access_token獲取用戶數(shù)據(jù),對(duì)應(yīng)圖中的第5、6步。這一過程中涉及了不少敏感參數(shù)和數(shù)據(jù),access_token某種程度上來講就是用戶的session id。
也就是說,整個(gè)認(rèn)證過程中,一旦黑客獲取到了access_token,即使他不知道你的用戶名和密碼,也可以訪問到你的用戶數(shù)據(jù)。
OAuth2到底安不安全
可以這么說,OAuth2協(xié)議本身是相對(duì)安全的,至少比純用戶名、密碼形式的登錄要安全的多。
如果發(fā)生像FB那樣的access token泄露問題的話,至少密碼是沒有泄露的,只要網(wǎng)站重置用戶的access token,那么之前的舊的access token就會(huì)失效。這種情況,要比用戶名和密碼泄露影響會(huì)小一些。
但是,由于OAuth引入的漏洞也很多,大多是因?yàn)槭褂貌划?dāng)導(dǎo)致的。烏云曾披露過很多很多由于OAuth實(shí)施不正確導(dǎo)致的網(wǎng)站漏洞:
- CSRF劫持第三方賬號(hào)
WooYun:大麥網(wǎng)存在賬號(hào)被劫持風(fēng)險(xiǎn)
WooYun:美麗說oauth漏洞可劫持賬號(hào)
- 對(duì)參數(shù)沒有進(jìn)行驗(yàn)證泄露code
WooYun:騰訊微博開放平臺(tái)openid、openkey截取
WooYun:搜狐微博OAuth2.0獲取Authorization Code過程隱患
- 重放攻擊
Inwatch-InHealth客戶端接口若干安全bug打包
- 應(yīng)用冒充,獲取token控制用戶賬戶
@囧虎張建偉,新浪微博Android客戶端SSO授權(quán)認(rèn)證缺陷
WooYun:騰訊開放平臺(tái)單點(diǎn)登錄SSO方案設(shè)計(jì)缺陷導(dǎo)致釣魚風(fēng)險(xiǎn)
- 直接用平臺(tái)方用戶名和密碼獲取access token
WooYun:開心網(wǎng)android客戶端暴力破解漏洞,測(cè)試2000帳號(hào),成功132個(gè)
315晚會(huì):安卓系統(tǒng)手機(jī)應(yīng)用軟件嚴(yán)重竊取用戶資料
關(guān)于OAuth2的具體安全防范這里就不展開了。感興趣的朋友可以自行Google。或者我后面單獨(dú)出一篇文章深入分析一下。
后話
FB的漏洞時(shí)間曝光后,F(xiàn)acebook CEO馬克·扎克伯格(Mark Zuckerberg)迅速對(duì)該事件作出回應(yīng),稱:“這是個(gè)非常嚴(yán)重的安全問題,我們正在非常認(rèn)真地對(duì)待。”
Facebook 是全球最大的社交平臺(tái),有22億的用戶。在創(chuàng)立至今的15年里,這家公司也較少發(fā)生黑客攻擊導(dǎo)致信息泄漏的事件。嚴(yán)格來講,較大規(guī)模和影響惡劣的黑客事件,僅發(fā)生過一兩次。
2013年,某個(gè)程序員自己搞砸了代碼,代碼核驗(yàn)也未發(fā)現(xiàn),導(dǎo)致超過600萬用戶的聯(lián)系資料泄露。
大約在2014、15年,數(shù)據(jù)分析公司 Cambridge Analytica 濫用 FB 的開發(fā)者平臺(tái),對(duì)超過8700萬用戶進(jìn)行非法的數(shù)據(jù)挖掘,出售給部分美國(guó)本土競(jìng)選的參選團(tuán)隊(duì),用于干預(yù)大選,F(xiàn)B 的高層官員明知此事卻沒有任何作為。
今年年初,扎克伯格曾因這一丑聞出席國(guó)會(huì)聽證會(huì)。FB 被迫接受調(diào)查,股價(jià)在當(dāng)時(shí)一度蒸發(fā)數(shù)百億美元。
如今調(diào)查仍未結(jié)束,F(xiàn)B 還沒從 Cambridge Analytica 丑聞緩過勁來,就又發(fā)生了黑客入侵。
當(dāng)然,嚴(yán)格來講,F(xiàn)B 也是受害者。遺憾的是,同情它的人越來越少了。這次 FB 公告發(fā)出后,網(wǎng)上一片罵聲,基本意思就是:
“費(fèi)那么大勁研究如何挖掘我們的數(shù)據(jù)賺錢,怎么就不能多研究研究你們的漏洞。”
在事件發(fā)生后,美國(guó)主流媒體的報(bào)道中不約而同地引用了扎克伯格之前聽證會(huì)上的宣誓:
“我們有責(zé)任保護(hù)你們的數(shù)據(jù),如果我們沒法做到,那么我們也不配給你們提供服務(wù)。”
參考資料:
Facebook 又被黑客涮了,這次又坑了快一億用戶!(https://www.pingwest.com/a/177864)
OAuth研究&學(xué)習(xí)筆記(http://www.tasfa.cn/index.php/2016/03/26/note_of_oauth/)
【本文是51CTO專欄作者Hollis的原創(chuàng)文章,作者微信公眾號(hào)Hollis(ID:hollischuang)】