zoukankan      html  css  js  c++  java
  • [译]缓解BEAST对TLS攻击的方式

    原文链接:https://community.qualys.com/blogs/securitylabs/2011/10/17/mitigating-the-beast-attack-on-tls

    原文发表时间:2011.10.17

    本博文仅仅是上述原文的翻译,仅供研究参考,本人不对准确性作任何保证,侵立删,如有转载,需自行承担所有责任。如有翻译不准确的地方,欢迎指教。

    更新 (2013.3.19):这篇博文建议使用RC4来缓解BEAST攻击,但最先的发现显示RC比以前所知道的更为弱。目前针对RC4的攻击还无法实用。惟一安全的选择是AES-GCM密码套件,仅在TLS1.2中支持。你可以在新近撰写的博文中查看更多信息。


    在这个夏天,有关一种新的SSL攻击手段的说法正在流传。Opera发布了一个补丁,但是没有说是什么补丁。最终一些聪明的人从越来越多的消息中发现了这种攻击的情况。但是攻击的技术细节仍旧是个谜,最后在Thai的博文中得到解释。Thierry Zoller的博文综合了各个链接的情况。

    实际上,这种攻击多年前就曾被提出,虽然无法实际应用,但是TLS1.1仍然修复了该问题。最新的攻击技术做了一些优化,使得这种攻击变得可行了。

    为了缓解这种攻击,我认为最好通过客户端的方式进行,虽然可能会由于兼容性问题导致无法访问某些网站。对抗BEAST的唯一方式是使用RC4密码套件,正如在PhoneFactor的博文中提到的。

    下面给出在Apache中设置的例子:

    SSLHonorCipherOrder On
    SSLCipherSuite RC4-SHA:HIGH:!ADH

    并不是所有人都喜欢RC4,尽管尚未有足够的证据证明它在SSL/TLS中是不安全的。如果你的服务器支持TLS1.1+,你可以尝试Steve Caligo给出的建议:

    SSLHonorCipherOrder On
    SSLCipherSuite ECDHE-RSA-AES128-SHA256:AES128-GCM-SHA256:RC4:HIGH:!MD5:!aNULL:!EDH

    上述设置是将TLS1.2置为最前的位置,以便支持该协议的客户端选择它,该版本是不受BEAST攻击影响的。接着是用于TLS1.0的RC4算法。

    我们来看一些没有用的缓解方法:

    • 服务端支持TLS 1.1+是个好的开始,但是并不会有太大帮助,因为现在还只有很少一部分客户端支持高版本的协议。即使客户端支持TLS 1.1+协议,还是无法防止中间人攻击强制降级到TLS1.0.(关于对抗降级攻击的信息,参看TLS WG邮件列表的这个主题。)
    • 服务端启用空分片技术(?详情参看OpenSSL描述)也没有用。TLS 1.0使用两个初始向量(IVs),分别用于客户端和服务端的通信信道。BEAST利用的脆弱性是在客户端的,无法通过服务端的设置解决。
    • 压缩被认为可以使攻击无效,但是TLS 1.1+的协议对客户端的支持并不一致(?)。

    更新(2012.1.20): 通过测试昨天发布的OpenSSL 1.0.1-beta2,我发现即使是在TLSv1.0的连接中也会尝试使用AES-CBC-SHA256算法。因此我从建议中将其移除,用另外两个TLSv1.2的密码套件取代。

    本博客内容,除了标记为“转载”的之外,均为本人原创或翻译,欢迎转载,但不得用于各种商业培训和各种赚积分类站点,转载请标明出处。如您有任何疑问或者授权方面的协商,请给我留言。
  • 相关阅读:
    IIS下配置跨域设置Access-Control-Allow-Origin
    Arcgis去除Z,M值
    GIS开发之数据查询
    GIS开发之计算四参数,七参数
    Openlayer3之绚丽的界面框架-Materialize
    Openlayer3之C++接口在javaScript的封装使用
    Windows环境和Linux环境下Redis主从复制配置
    Centos 7 安装和配置Redis
    .net手动编写Windows服务
    SQL获取当前日期的年、月、日、时、分、秒数据
  • 原文地址:https://www.cnblogs.com/likefrank/p/mitigating-the-beast-attack-on-tls.html
Copyright © 2011-2022 走看看