如何缓解 POODLE 问题但保留对旧客户端的 SSLv3 支持

如何缓解 POODLE 问题但保留对旧客户端的 SSLv3 支持

如何减轻 POODLE 攻击,但仍然保留对旧客户端(例如 Windows XP 上的 IE6 或电子邮件客户端)的支持。

我注意到谷歌这样做: https://www.ssllabs.com/ssltest/analyze.html?d=mail.google.com

我正在使用 nginx 和 openssl。

此外,我希望在现代/大多数浏览器上保持前向保密性。我希望在 ssllabs 上保持 A 评级。

答案1

正如谷歌在这篇博文中写道http://googleonlinesecurity.blogspot.se/2014/10/this-poodle-bites-exploiting-ssl-30.html有三种方法可以缓解 POODLE:

  • 禁用 SSL 3.0 支持
  • 使用 SSL 3.0 禁用 CBC 模式密码
  • 支持 TLS_FALLBACK_SCSV

前两个选项破坏了与旧客户端(例如 XP 上的 IE6)的兼容性。TLS_FALLBACK_SCSV 依赖于支持它的浏览器,目前只有 Chrome 支持,但 Firefox 很快就会支持。TLS_FALLBACK_SCSV 需要新发布的 OpenSSL 1.0.1j。

如果可能的话,你应该禁用 SSL 3 支持,但如果你需要保留它,如果你有 OpenSSL 1.0.1j 和 nginx,你可以通过以下方法缓解它:

ssl_ciphers EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH+aRSA+RC4:EECDH:EDH+aRSA:RC4:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS:!CAMELLIA;
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;

这种密码配置将在大多数浏览器中提供前向保密性,并减轻 POODLE+BEAST 服务器端的影响。它的工作原理是,当面对 SSL 3 或 TLS 1.0 浏览器时,优先使用 RC4 而不是 AES,从而避免使用 CBC 模式。运行 TLS 1.1+ 的浏览器不使用 RC4,这不像我们希望的那样安全

它目前对 ssllabs 给出了 A 评级,以下是实际示例:https://www.ssllabs.com/ssltest/analyze.html?d=s.nimta.com

相关内容