繞過短信雙因子身份驗證的六種方法

短消息/短信(SMS)服務誕生於1992年,第一條短信內容是 “聖誕節快樂( Merry Christmas )”。

繞過短信雙因子身份驗證的六種方法

儘管缺點一大堆:沒有已讀回執,有字數限制,而且依賴手機號碼等等;但短信真的已經伴隨我們度過了27年的時光。世界上很多人都已經遷移到了更好、更安全的消息平臺,比如iMessage、WhatsApp和有望很快推出的融合通信( RCS:Rich Communication Suite )。

短信由於其無可爭議的泛在性而沿用至今,雖然微信等即時通訊軟件幾乎取代了短信的溝通方式,但在中國商業市場上,業務級的短信收入這兩年反而有不斷增長的趨勢。這主要是因為,短信做為雙因子認證的便易性。

令人擔憂的是,短信的安全性似乎每天都在下降。儘管美國國家技術與標準局(NIST)在2016年時就建議不採用短信作為身份驗證因子,但很多網站和移動應用仍要求短信形式的第二身份驗證因子。短信的不安全性眾所周知,所以關於短信作為身份驗證系統的討論,倒是更多落腳在到底什麼技術能夠替代它上。

繞過短信驗證的方法多種多樣,不用細想就能舉出來一堆。以下這些是最常見的:

1. 手機號碼轉移

手機號轉網相對容易的國家也就更容易發生雙因子身份驗證(2FA)繞過攻擊。澳大利亞就是此類攻擊的主要早期狩獵場。攻擊者收集到目標的憑證後便可以研究受害者的手機號碼,給運營商打個電話,就能將該號碼分配到攻擊者控制之下的手機上。至此,所有的2FA驗證碼可被攻擊者截獲,而受害者往往毫無所覺。等他們第二天醒來的時候才發現自己的手機已停止服務,而在申請找回號碼的一週裡,銀行賬戶的錢已經被攻擊者取走了。

2. 移動運營商端攔截

這是去年爆發的一種新型攻擊方式。攻擊者通過移動運營商的客戶門戶來獲取2FA驗證碼。如果某人太過懶惰,電子郵件和移動賬戶都重複使用相同的密碼,攻擊者只需要登錄用戶的移動賬戶,在存儲的短信當中查找,便能獲取到2FA驗證碼。然後就可以重置銀行口令,大搖大擺地清空用戶的賬戶了。

3. 惡意軟件截獲

至少自2014年起,便有定製的惡意軟件可以感染手機並截獲基於短信的2FA驗證碼。有時候這種惡意軟件是銀行木馬的一部分。其他情況下,該惡意軟件僅僅是轉發2FA驗證碼給攻擊者。安卓生態系統中該問題尤其嚴重,但蘋果系統中幾乎沒有見到過。

4. 遺失手機重置密碼

現代社會,丟手機換號碼就跟糖尿病一樣常見。所以,使用短信身份驗證系統的所有服務都必須有可供用戶重置賬戶和更新手機號碼的恢復服務。如果攻擊者已經入侵了電子郵件賬戶 (比如利用用戶重複使用密碼的漏洞),那他們就可以重置、更新或者繞過該2FA系統。遺失手機和密碼重置頁面是如今最常見的自動化攻擊目標。檢查一下忘記密碼頁面 (lost-password.html) 的訪問日誌,你會驚訝於這個頁面被訪問的次數和訪問時間點。

5. 社會工程

針對特定組織或個人下手的攻擊者會使用社會工程方法來繞過2FA。舉個例子,攻擊者給你打電話,聲稱自己是你銀行的客戶經理,正在進行賬戶欺詐檢查,將給你發一個身份驗證碼,讓你給他念一遍。然後,在你等待的期間,攻擊者就用你念給他的驗證碼登錄了你的賬戶。攻擊者一邊謝謝你的合作,一邊眼都不眨地搬走你賬戶中每一分錢。

6. 中間人網站代理——Modlishka

一組研究人員創建了Modlishka網絡釣魚代理框架,向人們展示誘騙用戶輸入短信2FA驗證碼有多容易。演示視頻堪稱對安全社區的當頭一棒。

理論上,非短信2FA的攻擊界面要小得多(1-4點)。社會工程方法(第5點)則一直都很有效,這個問題是技術解決不了的。Modlishka框架(第6點)顯示的最後一種攻擊方法最為令人擔憂。Modlishka能用於任意2FA系統,包括不基於短信的那些,因為一旦訪問了該網絡釣魚筐架,用戶會話就已經被黑了。

但即便有上述多種繞過方法,雙因子身份驗證和多因子身份驗證依然是防禦者工具箱中的必備。只不過,基於短信的2FA系統明顯老態龍鍾了。


分享到:


相關文章: