多倫多大學研究發現微信修改了TLS加密協議使用戶面臨安全風險
微信訊息和對話沒有進行端對端加密,這意味著該應用程式的伺服器可以解密並讀取每個訊息。 然而,根據一項新的研究,這款流行訊息應用程式的用戶可能需要擔心,加密協定中存在的漏洞可能會使該服務受到攻擊。
多倫多大學公民實驗室最近進行的調查發現了微信自訂加密協議中潛在的安全漏洞。 造成這些弱點的原因是,每月活躍用戶超過10 億的微信開發人員修改了傳輸層安全性(TLS) 1.3 協議,創建了一個名為MMTLS 的版本。
微信使用雙層加密系統。 首先,被稱為”業務層加密”的內層對明文內容進行加密。 加密後的內容在傳輸前使用MMTLS 進一步加密。
雖然這種雙層加密提供了一定的保護,但也發現了幾個令人擔憂的問題。 業務層加密無法保護敏感元數據,如用戶ID 和請求URI。 此外,MMTLS 使用確定性初始化向量(IV),這與現代加密的最佳實踐相違背。 此外,加密缺乏前向保密性,而這正是長期安全性的關鍵特徵。
2016 年之前,微信的網路請求僅依賴業務層加密。 MMTLS 的引入似乎是為了解決先前系統的缺陷。
在某種程度上,這種做法是有效的。 在這項研究中,研究人員無法成功攻擊微信的加密,因為易受攻擊的業務層加密現在受到MMTLS 層的保護。 在缺乏MMTLS 的早期微信版本中,業務層加密是暴露的,可能會受到某些攻擊。 MMTLS 的加入使內部加密層免受直接攻擊,從而大大提高了微信的整體安全性。
不過,研究人員指出,微信的實作並沒有達到這種規模的應用程式應有的加密標準。 此外,研究人員發現的其他”小”問題在標準、未修改版本的TLS 中也不存在。
研究人員也指出,在中國,安全開發人員的獨特做法是創建自己的客製化密碼系統,而不是使用既定標準。 這些自製的解決方案通常無法與TLS 1.3 或QUIC 等廣泛使用的協議相媲美。 公民實驗室將此描述為“中國安全領域獨有的一種日益增長、令人擔憂的趨勢”。
例如,一些中國應用程式採用自訂網域解析方法來對抗網路服務供應商的DNS 劫持。 此外,包括微信在內的許多中國應用程式使用騰訊火星等開源基礎設施元件,而這些元件可能缺乏適當的文件和安全指導。
Citizen Lab 研究人員提出的主要建議是,微信母公司騰訊應採用標準TLS 或QUIC 和TLS 的組合來增強應用程式的安全性,這也許並不令人意外。