我收集了影响 SSL 3.0 的问题,发现它们
- 是配置问题(禁用 RC4、RC2、DES、anon、导出、空套件、压缩、正确的密钥长度等)或
- 需要一个浏览器,攻击者可以在其中使用 JavaScript 生成流量。
所以问题是:如果客户端不是浏览器,正确配置的 SSL 3.0 连接会受到攻击吗?(想想 MUA 和其他类似的代理。)是否存在可以针对正确配置的 SSL 3.0 客户端-服务器的攻击,如果唯一会改变的是将协议更改为较新版本的协议,那么这种攻击是不可能的?
我有以下关于潜在攻击的理论:
- BREACH、CRIME:两者都依赖于攻击者提供的已知明文的压缩效果,因此如果攻击者无法在受害者 SSL 客户端的上下文中发起请求,则无法利用
- POODLE:它可以强制回退到 SSL 3.0,但是在这种情况下,它本身使用的是 SSL 3.0,因此攻击无关紧要(参见其他攻击)
- BEAST,Lucky13:两者都依赖于加密预言机(基于时间或响应),只有当攻击者可以在受害者 SSL 客户端的上下文中发起请求时才能利用这些预言机,而在我上面的场景中并非如此
- RC4 攻击:通过禁用 RC4 来缓解,将3DES-CBC 密码套件作为唯一的选择(AES 尚未包含在 SSL 3.0 中,因为它于 1996 年发布)
- FREAK,LOGJAM:通过在客户端和服务器上强制执行合理的密钥长度(> 1024 位)来缓解
总而言之,我的客户端和服务器的配置方式使密钥具有合理的长度,并且唯一启用的密码套件是SSL_RSA_WITH_3DES_EDE_CBC_SHA.