禁用SSLv2协议是否足以保护我的应用程序免受DROWN attacks的侵害?

给出以下来自OpenSSL.org的引用


  用户可以通过在所有SSL / TLS中禁用SSLv2协议来避免此问题
  服务器(如果尚未安装)。禁用所有SSLv2密码也是
  足够,提供了CVE-2015-3197的补丁(已在OpenSSL 1.0.1r和
  1.0.2f)已部署。尚未禁用SSLv2协议的服务器,
  并且未针对CVE-2015-3197进行修补,即使所有SSLv2都容易受到DROWN攻击
  名义上禁用密码,因为恶意客户端可以强制使用
  具有EXPORT密码的SSLv2。


我将其读为a或b:

a)禁用SSLv2协议
要么
b)使用CVE-2015-3197禁用SSLv2密码+补丁

显然,最好的解决方案是更新库,但是可以说,某些应用程序已经与较旧的未修补库一起疯狂使用,但是SSLv2协议已被禁用(不仅加密,而且实际的SSLv2协议本身也被禁用);即使禁用了SSLv2协议,较旧的应用程序也会受到攻击吗?



我知道您还必须确保未在其他启用了SSLv2的地方使用该证书;但假设它是别处未使用的唯一证书。

是的,我知道也应该禁用SSLv3来防止POODLE的保护,但这不是这个问题的重点。

最佳答案

只要您在所有服务器上禁用了SSLv2,它们就可以免受DROWN攻击。

请注意,如果您甚至有一台启用了SSLv2的服务器,并且您共享密钥(例如,使用通配符证书(这很常见)),那么即使禁用了SSLv2的服务器也容易受到攻击,因为攻击可以使用一台SSLv2服务器使用更高版本的协议攻击其他服务器上的连接。

关于security - 禁用SSLv2协议(protocol)足以抵御DROWN攻击吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37307383/

10-09 22:56