减轻TLS上的BEAST攻击

在夏季,有关SSL的新攻击的谣言开始流传。然后,Opera发布了补丁程序,但未对其补丁程序发表任何评论。最终,足够多的信息泄露出来,一些聪明人想到了 攻击是什么 。仍然未知的是概念证明中使用的确切技术,最终在 泰国 ’s 博客文章 。有关相关链接的全面概述,请访问Thierry Zoller’s 博客文章 在BEAST上。

事实证明,攻击本身是几年前构想的,被认为是不切实际的,但在TLS 1.1中已修复。新的攻击技术引入了一些优化措施使其实用。

在缓解方面,尽管潜在的兼容性问题可能会导致某些TLS站点停止工作,但我预计此问题将在客户端很大程度上得到解决。抵御BEAST的唯一可靠方法是按照PhoneFactor的建议对RC4密码套件进行优先级排序。

举个例子,这里’在Apache中执行上述操作的一种方法:

SSLHonorCipherOrder On
SSLCipherSuite RC4-SHA:HIGH:!ADH

即使有RC4,并非所有人都喜欢RC4 几乎没有证据 在SSL / TLS上下文中是不安全的。如果您的服务器支持TLS 1.2+,则可以尝试使用Steve Caligo建议的方法:

SSLHonorCipherOrder On
SSLCipherSuite ECDHE-RSA-AES256-SHA384:AES256-SHA256:RC4:HIGH:!MD5:!aNULL:!EDH:!AESGCM

这样做的想法是,首先放置一些TLS 1.2密码套件,以便不易受攻击的TLS 1.2客户端可以选择它们,然后是TLS 1.0客户端的RC4。

现在我’ve讨论了什么是缓解措施,让’看一下一些行不通的方法:

  • 支持TLS 1.1+服务器端是一个不错的开始,但由于在目前很少有客户端支持较新版本的协议,因此支持不多。即使使用TLS 1.1+支持客户端,’不能阻止MITM强制将协议降级回TLS 1.0。 (有关防御降级攻击的防御技术的讨论,请参阅 这个线程 在TLS WG邮件列表中)。
  • 在服务器端启用空片段技术(OpenSSL的详细信息) 这里 )也不起作用。 TLS 1.0使用两个初始化向量(IV),每个初始化向量用于通信通道的客户端和服务器端。 BEAST利用的漏洞位于客户端,无法通过在服务器端更改数据发送方式来解决。
  • 据说压缩使攻击无法进行,但是与TLS 1.1+一样,客户端对其的支持也不一致。

注意:此帖子最初发布在 Qualys 安全实验室博客 .

分享这个