天天看點

Sweet32: TLS 64位分組密碼生日攻擊(CVE-2016-2183)

客戶伺服器被發現Sweet32,經過檢查,都是受DES/3DES影響導緻的,解決辦法就是禁用了DES/3DES。

驗證方式:nmap -sV --script ssl-enum-ciphers -p 443 test.com

以下是我從網絡上找到的一些資訊:

概述

分組密碼在SSL/TLS協定中的特定配置會遭到碰撞攻擊。

背景

傳統64位塊分組密碼在使用CBC模式時很容易被碰撞攻擊。SSL/TLS協定所有支援使用3DES對稱加密的密碼套件都受影響(例如 ECDHE-RSA-DES-CBC3-SHA)。紅帽企業版Linux6和7自帶的OpenSSL版本中,基于DES的密碼套件的優先級在AES-256和AES-128之下,是以隻有顯式禁用 AES-128 和 AES-256,DES密碼才會啟用。紅帽企業版Linux5自帶的OpenSSL版本中,基于DES的密碼套件的優先級在AES-256和AES-128之間,是以隻有顯式禁用 AES-256,DES密碼才會啟用。

分組密碼的安全性取決于密鑰長度。是以,對分組密碼最好的攻擊是窮盡搜尋密鑰空間,其具有2^k複雜度。然而當分組密碼使用如CBC模式加密大資料時,塊長度對安全性的影響也不可忽視。

當使用CBC模式時,在使用同一密鑰加密2^(n/2)塊資料後将存在生日攻擊,兩密文塊能夠發生碰撞。這意味着存在相同的輸入。結合幾個條件(下面讨論)将可用于從加密資料中擷取明文。

攻擊的實用性

1、首先,DES/3DES 是 SSL/TLS 中唯一使用64位塊的密碼。如前所述,包含3DES的密碼套件優先級低于其它密碼套件。

2、要攻擊64位分組密碼,至少需要擷取32GB以上密文。在SSL/TLS的情況,這需要在一個會話中完成(新會話會重商對稱密鑰)。是以HTTPS長連接配接會受影響。

3、在許多情況下,僅恢複兩明文塊之間的異或是不足以構成有實際影響的攻擊的。但若滿足下面條件,則可實施攻擊:

·同一秘密被重複發送

·已知部分明文

4、研究論文中提到的攻擊的概念證明中,假設了一些認證令牌在整個通信過程中在伺服器和用戶端之前傳遞(令牌可以是一個用于基本身份驗證的憑據)。此時攻擊者在被攻擊網站運作一個惡意的 JavaScript 腳本,通過暴力攻擊來擷取憑據。

緩解措施

1、SSL/TLS配置中 AES 優先級應高于 DES。紅帽企業版Linux6和7自帶的OpenSSL版本中已經這樣做了。

2、紅帽企業版Linux5自帶的OpenSSL版本中,3DES的優先級在AES-256和AES-128之間,是以不應禁用基于 AES-256 的密碼套件。

3、使用OpenSSL的伺服器,不應禁用AES-128和AES-256密碼套件。紅帽企業版Linux自帶的Apache版本使用預設密碼串,其中AES優先于DES/3DES密碼套件。

解決方案

1、這一缺陷出于DES/3DES密碼的設計,并不是實作問題。

2、這個缺陷不直接影響紅帽企業版Linux5、6、7中的任何密碼庫(OpenSSL,NSS和GnuTLS),因在預設密碼清單配置中有若幹優先級高于3DES的更強的密碼套件。

3、對于紅帽企業版Linux5,不要禁用基于 AES-256 的密碼套件。對于紅帽企業版Linux6和7,不要禁用基于 AES-128 或 AES-256 的密碼套件。

上遊的安全修複:

OpenSSL:

OpenSSL 已評估為低危級别的安全問題,他們已在1.0.2分支中将3DES密碼套件由類别“高”移至“中”,并将在即将釋出的新版本中預設設為禁用。

NSS:

Mozilla正為所有密碼套件做資料限制。

相關問題

上遊 OpenVPN 也易受 Sweet32 攻擊(CVE-2016-6329)。紅帽的OpenVPN實作不受該缺陷影響

繼續閱讀