與OpenSSL一樣,OAuth(Open Authorization)作為應(yīng)用廣泛的開源第三方登錄認(rèn)證協(xié)議,今年也爆出了安全漏洞。在第三屆知道安全論壇上,來自新浪微博的藍(lán)色di雪球表示新浪早在今年3月就發(fā)現(xiàn)了這個(gè)漏洞,并從OAuth的發(fā)展、OAuth的調(diào)用方式、OAuth風(fēng)險(xiǎn)分析以及如何利用OAuth漏洞幾個(gè)方面展開了精彩的演講。
OAuth是什么?OAuth協(xié)議為用戶資源的授權(quán)提供了一個(gè)安全的、開放而又簡(jiǎn)易的標(biāo)準(zhǔn)。與以往授權(quán)方式不同,通過授權(quán)團(tuán)隊(duì)可以不使用用戶名密碼,第三方就可以再某網(wǎng)絡(luò)獲得數(shù)據(jù)和信息。
OAuth調(diào)用方式有四種,比較常用的有兩種:Authorization Code與Implicit。藍(lán)色di雪球表示OAuth調(diào)用方式存在信息泄露、CSRF、URL回調(diào)污染以及權(quán)限認(rèn)證利用的風(fēng)險(xiǎn)。其中信息泄露包含:Code泄露、Access Token泄露以及Appsecrit泄露。而CSRF包含授權(quán)劫持以及綁定劫持。
如何優(yōu)雅的利用OAuth漏洞?藍(lán)色di雪球表示,經(jīng)用戶授權(quán),與第三方網(wǎng)站綁定,并登錄賬戶后,攻擊者通過構(gòu)造OAuth回調(diào)污染發(fā)送私信,實(shí)現(xiàn)釣魚誘使用戶點(diǎn)擊URL從而劫持用戶的應(yīng)用方身份。另外,拿到Access_token可能劫持大V用戶發(fā)微博、劫持大量用戶發(fā)評(píng)論、劫持信任攻擊、刪除指定微博、刷粉、強(qiáng)制關(guān)注,甚至獲得商業(yè)數(shù)據(jù)。
由于被第三方廣泛應(yīng)用和大量歷史遺留問題OAuth漏洞的修復(fù)在短時(shí)間內(nèi)難以完成,而針對(duì)URL回調(diào)污染問題的修復(fù),藍(lán)色di雪球建議明確風(fēng)險(xiǎn),進(jìn)行日志分析,并檢測(cè)全路徑。
最后,藍(lán)色di雪球表示未來OAuth可能存在授權(quán)濫用以及授權(quán)token被拖庫的風(fēng)險(xiǎn)。對(duì)此,他建議直接封禁上行權(quán)限,封禁應(yīng)用。