本文向你們展示如何在nginx的web服務器上設置更強的SSL。我們是通過使SSL無效來減弱CRIME攻擊的這種方法實現。不使用在協議中易受攻擊的SSLv3以及以下版本并且我們會設置一個更強的密碼套件為了在可能的情況下能夠實現Forward Secrecy,同時我們還啟用HSTS和HPKP。這樣我們就有了一個更強、不過時的SSL配置并且我們在Qually Labs SSL 測試中得到了A等級。
我們在nginx的設置文檔中如下編輯
代碼如下:/etc/nginx/sited-enabled/yoursite.com (On Ubuntu/Debian)或者在
代碼如下:/etc/nginx/conf.d/nginx.conf (On RHEL/CentOS).
對于整個說明文檔,你需要編輯服務器配置的服務器那塊和443端口(SSL配置)。在說明文檔的最后,你會發現實現了樣例的配置。
確保在編輯之前做了備份!
BEAST攻擊和RC4算法
簡言之,就是通過篡改加密算法CBC密碼塊的加密模式,部分加密流量可以被偷偷地解密。更多的信息請參照以上鏈接。
新版本的瀏覽器客戶端可以緩解BEASE攻擊。建議禁用所有的TLS 1.0密碼并且只是用RC4。然而,[RC4有一個不斷增加的列表來防止攻擊],(http://www.isg.rhul.ac.uk/tls/)其中的很多都將理論和現實交叉在一起。而且,這就是為什么NSA已經破解了RC4,他們所謂的“重大的突破”。
禁用RC4有幾個結果。一、使用差勁兒瀏覽器的用戶將使用3DES來代替。3-DES比RC4更安全。但是就意味著更加昂貴。你的服務器會因為這樣的用戶開銷更大。二、RC4可以緩解BEAST攻擊。因此,禁用RC4使TLS 1用戶容易受到攻擊,通過移動他們AES-CBC(通常的服務器端的BEAST“修復”是優先考慮高于一切的RC4)。我很確信,在BEAST上RC4上的缺陷明顯大于風險。確實,客戶端的緩解(chrome和火狐都提供)BEAST已不再是個問題。但對于增長RC4的風險:隨著時間的推移更多的密碼分析將很表面化。
FREAK攻擊
FREAK是在密碼專家小組在INRIA, Microsoft Research and IMDEA所發現的一種中間人攻擊。FREAK就是“Factoring RSA-EXPORT Keys .”。這種攻擊可以追溯到90世紀90年代,也就是在美國政府禁止出售加密軟件到海外的時候,除非輸出的密碼套件中加密密鑰的長度不超過512位。
被證明是一些先進的TLS客戶端-包括蘋果的SecureTransport和OpenSSL-有一個Bug在里面。這個Bug造成了它們接受了RSA密鑰的輸出等級甚至當客戶端都不要求RSA的密鑰輸出等級。這個Bug造成的影響還是相當嚴重的:假如客戶端是易受攻擊的并且服務器支持輸出RSA,它允許第三人通過一個活躍的攻擊者來減弱連接的質量進行攻擊。
這里是兩部分服務器必須接受的“RSA輸出等級”攻擊。
MITM攻擊過成如下:
在客戶端的Hello消息中,它請求一個標準的“RSA”密碼套件。 MITM攻擊者改變這個消息為了得到“RSA的輸出”. 服務器返回一個512位的RSA輸出密鑰,并用它的永久密鑰簽名。 由于OpenSSL和SecureTransport存有bug,客戶端就接受了這個弱密鑰。 攻擊者分析RSA模塊為了恢復正在通信時RSA的解密密鑰。 當客戶端把加密的“預備主密鑰”發送給服務器時,攻擊者現在可以解密它從而得到TLS的“主密鑰”。 從現在起,攻擊者就可以看到明文了,并且可以注入任何他想的東西。新聞熱點
疑難解答