RC4攻擊:RC4加密算法能否保護SSL/TLS?
您能介紹一下最近在RC4加密算法中發(fā)現(xiàn)的問題嗎?對此,HTTPS網(wǎng)絡(luò)連接面臨怎樣的安全隱患?企業(yè)應(yīng)該如何確保他們不會受到這個漏洞帶來的攻擊?
Michael Cobb:RC4(Rivest密碼4)由RSA Security的Ron Rivest在1987年設(shè)計,因為其速度和簡單性,這種加密算法已經(jīng)成為使用最為廣泛的流密碼。它被用于常用協(xié)議中,包括有線等效保密(WEP),用于無線網(wǎng)絡(luò)的安全算法,以及HTTPS的安全套接字層(SSL)和傳輸層安全(TLS)協(xié)議;事實上,在所有TLS流量中,約有50%的流量目前在使用RC4算法來保護。然而,多年來,在該算法中發(fā)現(xiàn)的漏洞表明,RC4的生命即將結(jié)束。
伊利諾伊大學(xué)的教授Dan Bernstein最近披露了RC4中的一個漏洞,該漏洞允許攻擊者從使用RC4加密的TLS連接中恢復(fù)有限數(shù)量的純文本內(nèi)容。這種RC4攻擊適用于支持該加密算法的所有版本的SSL和TLS。這種針對RC4的攻擊是可能的,因為該加密生成的密鑰流中存在統(tǒng)計性缺陷,從而導(dǎo)致泄露部分加密信息,為攻擊者提供了足夠的樣本來進行分析。
這個漏洞并不會給SSL/TLS用戶帶來直接的威脅,因為這是一個多會話攻擊,目前還不太可能實施。攻擊者必須能夠捕獲客戶端和服務(wù)器之間的網(wǎng)絡(luò)流量,以及在郵件中相同位置反復(fù)被發(fā)送的相同的加密內(nèi)容。即使攻擊者捕獲了這些信息,攻擊者仍然只能夠恢復(fù)一小部分信息。然而,HTTP消息具有程式化表頭,在對話中都是相同的,所以cookie的內(nèi)容可能會被捕獲,特別是當出現(xiàn)更有效的利用這個漏洞的方法時。如果攻擊者能夠訪問存儲在cookie中的數(shù)據(jù),這將給企業(yè)帶來巨大的危險。因為,cookie通常被用來存儲用戶賬戶信息或者用于身份驗證的會話令牌,這樣用戶就不需要反復(fù)登錄。如果攻擊者可以攔截這些cookie,他們就可以冒充用戶或者訪問受感染網(wǎng)站或服務(wù)內(nèi)的敏感數(shù)據(jù)。
SSL/TLS協(xié)議支持添加和選擇不同的算法,但主要的web瀏覽器并不支持最新和更安全的算法。TLS 1.2支持AEAD(帶關(guān)聯(lián)數(shù)據(jù)的加密認證)加密,但這種版本的TLS還沒有得到廣泛部署。除了iOS上運行的Safari外,主要的瀏覽器要么根本不支持它,要么默認情況下將它關(guān)閉了。為此,你可以改變TLS使用RC4的方式,但你需要改變每個客戶端和服務(wù)器的TLS部署,并能夠抵擋未來改進的RC4攻擊方法。
現(xiàn)在,管理員可以部署TLS 1.0或TLS 1.1,這兩個版本都使用CBC模式的加密技術(shù)—已經(jīng)針對BEAST和Lucky Thirteen攻擊進行了修復(fù)。具有諷刺意味的是,這些攻擊導(dǎo)致很多管理員切換到使用RC4,而不是CBC模式。由于TLS是用來保護互聯(lián)網(wǎng)流量的加密協(xié)議,其部署需要更加穩(wěn)固,且不容易受到攻擊,即使是那些攻擊目前還不切實際。希望這個最新的發(fā)現(xiàn)將推動行業(yè)推出更安全的版本。