我们使用的是 Ubuntu 12.04 和 apache 2.2.2 版本。我们对我们的网站进行了 PCI 扫描,发现了 2 个我们无法控制的漏洞。第一个是 BEAST 攻击,另一个是 SSL RC4 密码套件支持。
到目前为止,我尝试了以下方法,效果不错。在寻求帮助后,我尝试了一些更改,但这些更改反而开始破坏浏览器,因此被丢弃了。
SSLProtocol -SSLv2 -TLSv1 +SSLv3
SSLHonorCipherOrder On
SSLCipherSuite ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-RC4-SHA:ECDHE-RSA-RC4-SHA:ECDH-ECDSA-RC4-SHA:ECDH-RSA-RC4-SHA:ECDHE-RSA-AES256-SHA:RC4-SHA:!MD5:!aNULL:!EDH
SSLCompression off
或者
SSLProtocol ALL -SSLv2
SSLHonorCipherOrder On
SSLCipherSuite ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AES:RSA+3DES:!ADH:!AECDH:!MD5:!DSS
SSLCompression off
根据 ssllabs 上的扫描结果,我只能缓解其中一个漏洞。我需要做哪些更改才能解决这两个漏洞并支持当前版本的浏览器?
答案1
好吧,BEAST 的缓解措施(除了专门使用 TLS 1.1/1.2,但您的服务器现在无法做到这一点)是使用 RC4。
因此,可能无法以不被标记为易受攻击的方式配置您的服务器。如果您必须消除这些漏洞,您可能需要将 OS 软件包的 OpenSSL 安装替换为较新版本的第三方软件包,或从源代码编译的软件包。
答案2
目前,BEAST 攻击通常通过以下方式缓解:1/n-1 记录分割,因为 RC4 目前被认为太弱而无法使用。检查您的发行版的安全公告,以获取更新的 OpenSSL,该更新实现了 1/n-1 记录拆分,解决了 CVE-2011-3389。(请注意Ubuntu 似乎已经有了。
当然,使用支持 TLS 1.2 的服务器是首选解决方案。