互聯(lián)網(wǎng)最大規(guī)模帳號(hào)劫持漏洞即將引爆
筆者與近日從互聯(lián)網(wǎng)應(yīng)用安全提供商知道創(chuàng)宇安全研究團(tuán)隊(duì)處得悉,目前有一項(xiàng)嚴(yán)重危害用戶隱私的漏洞剛剛被發(fā)現(xiàn),包括旅游,招聘,娛樂(lè),SNS交友,各大電商等各類網(wǎng)站均會(huì)被影響。經(jīng)知道創(chuàng)宇安全研究團(tuán)隊(duì)測(cè)試,該安全漏洞在國(guó)內(nèi)使用第三方登錄機(jī)制的網(wǎng)站中普遍存在,甚至知名的安全廠商360的網(wǎng)站平臺(tái)以及360瀏覽器也存在這個(gè)問(wèn)題。由于此類攻擊不受同源策略等瀏覽器的安全限制,且不易被目標(biāo)發(fā)現(xiàn),因此危害嚴(yán)重。一旦被利用,用戶的帳號(hào)會(huì)被永久劫持,賬戶信息會(huì)被任意瀏覽和改動(dòng)。由于之前出現(xiàn)過(guò)關(guān)聯(lián)類漏洞,疑似已經(jīng)有攻擊者開始利用這個(gè)漏洞進(jìn)行實(shí)際攻擊,請(qǐng)廣大網(wǎng)民確認(rèn)自身賬號(hào)信息是否已遭惡意劫持,及時(shí)采取措施保護(hù)自身賬號(hào)。
經(jīng)知道創(chuàng)宇安全研究團(tuán)隊(duì)確認(rèn),此漏洞是由于開發(fā)人員沒(méi)有正確按照OAuth2授權(quán)機(jī)制的開發(fā)文檔使用OAuth2,導(dǎo)致攻擊者能夠?qū)嵤┛缯菊?qǐng)求偽造(CSRF)通過(guò)第三方網(wǎng)站來(lái)劫持用戶在目標(biāo)網(wǎng)站的賬戶。
劫持流程:
虛擬測(cè)試:
攻擊者想通過(guò)自己的微博劫持并登錄受害人的賬戶
如上圖所示,正常的授權(quán)流程,用戶點(diǎn)擊授權(quán)后便不再可控,剩下的工作由第三方應(yīng)用和授權(quán)服務(wù)器(資源提供方)進(jìn)行交互來(lái)完成。而攻擊者可以阻止授權(quán)流程的正常進(jìn)行,將中間的關(guān)鍵URL截取下來(lái),誘騙用戶訪問(wèn),成功后可以將受害人的賬戶綁定到攻擊者的微博賬戶上。此后,攻擊者可以使用微博的賬戶自由登入受害人的主站賬戶及瀏覽器賬戶,任意查看和修改用戶的隱私數(shù)據(jù)。
受到OAuth2 CSRF漏洞影響的部分網(wǎng)站列表(測(cè)試后):
安全廠商:360網(wǎng)站 360瀏覽器 …
it媒體:CSDN 中關(guān)村在線 …
團(tuán)購(gòu):糯米團(tuán)購(gòu) …
資訊:果殼 …
購(gòu)物分享:蘑菇街 …
電商:聚美優(yōu)品 …
視頻:優(yōu)酷 樂(lè)視網(wǎng) CNTV …
招聘:大街 …
婚介:百合網(wǎng) …
輕博客:點(diǎn)點(diǎn) …
SNS :開心網(wǎng) …
知道創(chuàng)宇安全研究團(tuán)隊(duì)對(duì)于OAuth2 CSRF漏洞防御,建議如下:
1)對(duì)于開發(fā)人員:
1,授權(quán)過(guò)程中傳遞state隨機(jī)哈希值,并在服務(wù)端進(jìn)行判斷。
2,在綁定過(guò)程中,應(yīng)強(qiáng)制用戶重新輸入用戶名密碼確認(rèn)綁定,不要直接讀取當(dāng)前用戶session進(jìn)行綁定。
3,限制帶有Authorization code參數(shù)的請(qǐng)求僅能使用一次(避免重放攻擊)
4,推薦使用Authorization Code方式進(jìn)行授權(quán),而不要使用Implicit Flow方式。這樣access token會(huì)從授權(quán)服務(wù)器以響應(yīng)體的形式返回而不會(huì)暴露在客戶端。
2)對(duì)于普通用戶:
定期查看重要網(wǎng)站的第三方帳號(hào)綁定頁(yè)面,檢查是否有陌生的其他帳號(hào)綁定到自身賬戶,如果發(fā)現(xiàn)應(yīng)立即取消綁定或授權(quán)。