SMS驗證碼優於沒有2FA——但它是現有最弱的形式。SIM卡調換和SS7攻擊可在幾分鐘內將其破解。以下是你需要了解的事項,以及應改用的替代方案。
SS7(7號信令系統)協議是全球電信網絡用於交換資訊及路由通話和短信的一套標準。SS7於1970年代開發,為封閉的受信任電信運營商網絡而設計——安全並非設計考量,因為預計只有運營商才會存取它。如今,這一假設已不再成立,SS7在身份驗證方面的根本缺失造成了嚴重的安全漏洞,可被利用來攔截你的SMS短信。
能夠存取SS7網絡的攻擊者——可通過入侵電信運營商、通過犯罪渠道購買存取權限,或利用較小的國際運營商的漏洞來獲取——可以發送位置更新請求,欺騙網絡,使其相信你的電話號碼已移至新位置。隨後,來電和短信便被路由到攻擊者指定的地方。這一切悄無聲息地發生;你的手機繼續顯示正常信號,你不會收到任何短信被轉移的提示。
SS7攻擊並非理論上的假設。安全研究人員和調查記者已在攝像機前對合作對象進行了現場演示。多年來,情報機構一直在利用SS7能力進行監控。犯罪集團曾利用基於SS7的SMS攔截來破解網上銀行賬戶的2FA保護,在德國、英國和美國均有記錄在案的銀行賬戶盜竊案。雖然大多數普通用戶不會通過SS7被個別針對,但高價值目標——高管、政客和富裕人士——在香港與其他地方一樣,面臨來自這一途徑的真實風險。
SIM卡調換是一種更易實施的攻擊,不需要電信基礎設施存取權限。攻擊者致電或親赴你的流動網絡運營商客戶服務,並冒充你的身份。利用從社交媒體個人資料、數據洩露數據庫或簡單OSINT研究中收集的資訊,他們提供足夠的詳情,說服運營商代表將你的電話號碼轉移到攻擊者控制的新SIM卡上。從那一刻起,所有通話和短信都發送給攻擊者——包括你的SMS 2FA驗證碼。
在香港,三大運營商——數碼通(SmarTone)、中國移動香港(CMHK)和3HK(和記電話)——各有其客戶服務驗證程序。這些程序通常是設計成對合法客戶足夠方便的身份驗證步驟,這意味著它們必須足夠簡單,讓有動機的攻擊者能夠利用收集到的個人資訊加以突破。全球已發生多起針對加密貨幣投資者、社交媒體網紅和高管的高知名度SIM卡調換案例。
後果嚴重且迅速。一旦攻擊者控制了你的號碼,他們立即通過SMS驗證請求重設你的電郵賬戶密碼。獲得電郵存取權限後,他們系統性地重設與該電郵關聯的每個賬戶的密碼。他們清空加密貨幣錢包、破解銀行密碼、接管社交媒體賬戶,並可能造成需要數年才能完全解決的財務和聲譽損失。從成功SIM卡調換到多個賬戶被入侵,整個過程可在30分鐘內完成。
即使沒有SS7存取權限或SIM卡調換,SMS 2FA也可被即時釣魚所突破。在這種攻擊中,犯罪分子創建一個模仿登入表單的釣魚頁面,並立即將受害者的密碼和SMS驗證碼轉發至真實服務。當你在假頁面上輸入憑證時,攻擊者的服務器同時使用這些憑證登入真實服務。真實服務向你發送SMS驗證碼——你在假頁面上輸入,攻擊者的服務器再將其轉發以完成登入。整個轉發過程在幾秒鐘內完成,在SMS驗證碼的有效期內發生。
你設備上的惡意軟件提供了另一個SMS 2FA無法防禦的攻擊途徑。如果惡意應用程式或瀏覽器擴展能夠存取你的SMS短信——Android應用程式歷來可以申請此權限——它可以悄悄讀取並將你的2FA驗證碼轉發給攻擊者。SIM劫持惡意軟件已在全球針對銀行客戶,在用戶輸入之前讀取SMS驗證碼並傳輸出去。即使在iOS上,惡意應用程式也曾利用通知預覽功能,在沒有完整SMS權限的情況下讀取SMS內容。
相比之下,驗證器應用程式的驗證碼無法被釣魚轉發(嚴格來說,相同的即時轉發技術在技術上可行,但攻擊時間窗口只有30秒,需要精確計時)。硬件安全密鑰對釣魚轉發完全免疫,因為域名驗證步驟是以加密方式執行的——沒有可轉發的驗證碼。如果你在銀行或電郵等高價值賬戶上使用SMS 2FA,升級到驗證器應用程式,並最終為最重要的賬戶使用硬件密鑰,是對你實際安全狀況的具體改善。
SMS 2FA的主要替代方案是使用TOTP標準的驗證器應用程式。Authy、Google Authenticator和Microsoft Authenticator等應用程式在你的設備上離線生成驗證碼,無需任何網絡傳輸。驗證碼與設定時建立的共享密鑰相關聯,無法通過攔截網絡流量提取。將賬戶從SMS遷移到驗證器應用程式非常簡單——大多數服務在其安全設定中提供此選項,每個賬戶只需幾分鐘。
對於無法從SMS切換的賬戶——一些香港銀行應用程式和政府服務別無選擇——你應通過向運營商賬戶添加PIN鎖,並謹慎對待你在社交媒體上公開發布的個人資訊,以降低SIM卡調換的風險。如果任何聲稱是你的運營商的來電者要求確認賬戶詳情,請掛斷電話並直接撥打運營商的官方號碼。對更換SIM卡的請求應以同等於釣魚電郵的懷疑態度來對待。
2FA安全性的層次結構,從最弱到最強依次為:SMS驗證碼在底部,然後是電郵驗證碼,再是驗證器應用程式的TOTP驗證碼,然後是帶背景資訊的推送通知,以及頂部的具備FIDO2的硬件安全密鑰。通行密鑰在防釣魚方面與硬件密鑰同等。對於日常香港用戶而言,最實際且最顯著的升級,就是簡單地從SMS切換到驗證器應用程式——這一單一改變消除了影響消費者的大多數真實2FA繞過攻擊。