最近的一篇論文表明有攻擊可攻破RC4加密以及解密用戶cookie。那么,這種攻擊的工作原理是什么,企業(yè)應該如何避免這種攻擊?RC4是否還有用?
Michael Cobb:因為速度和簡單性,RC4加密成為最廣泛使用的流加密,并用于常用協(xié)議中,例如有線等效保密(WEP)和安全套接字層(SSL)以及傳輸層安全(TLS)等。雖然RC4一直被認為存在漏洞,但在現(xiàn)實世界中還沒有針對它的攻擊。隨著越來越多的加密漏洞被發(fā)現(xiàn),RC4似乎早在2013年就應該被淘汰。而現(xiàn)在密碼分析結(jié)果逐漸將成為切實可行的漏洞利用,這意味著RC4無法再為企業(yè)數(shù)據(jù)提供足夠安全。
兩名比利時研究人員Mathy Vanhoef和Frank Piessens在52小時內(nèi)解密了受TLS保護且使用RC4加密的HTTPS會話中使用的Web cookie,而此前利用RC4漏洞的攻擊需要花費2000小時。通過使用固定純文本恢復技術—被稱為RC4 NOMORE(Numerous Occurrence Monitoring &RecoveryExploit),攻擊者可誘騙用戶訪問代碼來產(chǎn)生足夠的數(shù)據(jù),成功地確定用戶的加密cookie值。被劫持的cookie可被用來獲取對信息或服務的未經(jīng)授權訪問。
該攻擊利用RC4密鑰流中的偏差來恢復純文本。密鑰流需要都一致隨機,否則就可能出現(xiàn)偏差。RC4產(chǎn)生的密鑰流對某些序列有不同程度的偏差,例如,一些字節(jié)比它們原本更有可能采用特定值。這讓RC4容易被辨識力強的攻擊者攻擊,因為攻擊者可以區(qū)分加密數(shù)據(jù)與隨機數(shù)據(jù)。RC4 NOMORE利用Fluhrer-McGrew和Mantin的ABSAB偏差來返回潛在純文本cookie值列表,攻擊者會使用暴力破解直到找到正確的。這種攻擊在未來無疑將更有效。
這種攻擊并不局限于解密cookie,任何被重復加密的數(shù)據(jù)或信息都可以被回復。例如,對于使用WI-Fi保護訪問臨時密鑰完整性協(xié)議(WPA-TKIP)的無線網(wǎng)絡,這種攻擊只需要一個小時來執(zhí)行。雖然Wi-Fi聯(lián)盟正在逐步淘汰使用WPA-TKIP,但它的應用仍然很廣泛。網(wǎng)絡應該使用WPA2配置為僅使用加密算法AES-Counter Mode CBC-MAC協(xié)議。
在2015年2月,互聯(lián)網(wǎng)工程任務組發(fā)布了RFC 7465,其中禁止在客戶端和服務器建立TLS連接時使用RC4加密套件。微軟和Mozilla也發(fā)布了類似的建議來淘汰和啟用RC4加密以及其他弱算法,例如SHA-1。微軟建議使用TLS 1.2 AES-GCM作為更安全的替代方法,同時提供相似的功能。
RC4加密是唯一幸免于2011年針對TLS 1.2的BEAST攻擊的常用加密,因為該攻擊利用了分組加密中的漏洞。這導致越來越多的網(wǎng)站開始使用RC4(約50%),但現(xiàn)在這個數(shù)字已經(jīng)回落,根據(jù)加州大學伯克利分校計算機科學學院表示,目前全球約13%的網(wǎng)站仍然在使用RC4。使用RC4加密的網(wǎng)站管理員應該切換到AES,這是更安全的對稱分組加密。此外,網(wǎng)站開發(fā)人員應確保用于訪問敏感信息的會話cookie值是鹽化哈希值,它會在每次服務器響應時變化,這種方法可抵御對cookie的暴力破解。與此同時,企業(yè)應確保用戶的Web瀏覽器完全保持更新?,F(xiàn)在所有最新版本的主流瀏覽器都開始避免使用RC4,相信與IE11一樣,它們很快將完全停止使用RC4。