原文链接: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的密码套件取代。

[译]缓解BEAST对TLS攻击的方式的更多相关文章

  1. Python3中发邮件emal(明文/SSL/TLS三种方式)

    #!/usr/bin/env python #-*- coding:utf-8 -*- #Author:lzd import smtplib from email.mime.text import M ...

  2. 使用iptables缓解DDOS及CC攻击

    使用iptables缓解DDOS及CC攻击 LINUX  追马  7个月前 (02-09)  465浏览  0评论 缓解DDOS攻击 防止SYN攻击,轻量级预防 iptables -N syn-flo ...

  3. 新手学黑客攻防-黑客攻击电脑方式和认识IP地址

    听说过黑客,没见过黑客,从最基础的开始学习,让我能在互联网中保护自己的隐私安全和信息安全. 黑客攻击电脑方式 黑客攻击的方式多种多样,但常见的只有以下几种,基本上每个黑客都会用到: 网络报文嗅探 网络 ...

  4. 防止DDoS攻击的方式

    针对企业的DDoS攻击持续增长,根据Akamai的调查报告,2015年DDoS攻击增长了史无前例的180% !面对 DDoS 攻击性挑战,我们应该建立有效的防御体系来抵御攻击.   1.网站IP减少公 ...

  5. PHP之防御sql注入攻击的方式

    长期以来,web的安全性存在着巨大的争议与挑战.其中,sql注入就是一种常见的一种攻击方法,开发人员普遍的做法就是不停的过滤,转义参数,可是我们php大法天生弱类型的机制,总是让黑客有机可乘,绕过防御 ...

  6. 防止XSS攻击的方式

    主要有三种请求方式,进行过滤替换非法符号 1.普通的GET请求数据: 2.FORM表单提交数据: 3.Json格式数据提交: 把下面5个文件放入项目中即可 package com.joppay.adm ...

  7. php防止用户输入进行跨站攻击的方式

    1.对用户输入的内容进行转义 //1.过滤内容中html标记 $userinput=strip_tags($userinput); //2.转换成HTML实体 $userinput=htmlentit ...

  8. [译]SSL/TLS真的被BEAST攻击攻破了吗?真实情况是怎样的?我应该做什么?

    原文链接:https://luxsci.com/blog/is-ssltls-really-broken-by-the-beast-attack-what-is-the-real-story-what ...

  9. [译]BEAST还是一个威胁吗?

    原文链接:https://community.qualys.com/blogs/securitylabs/2013/09/10/is-beast-still-a-threat 原文发表时间:2013. ...

随机推荐

  1. 8条规则图解JavaScript原型链继承原理

    原形链是JS难点之一,而且很多书都喜欢用一大堆的文字解释给你听什么什么是原型链,就算有图配上讲解,有的图也是点到为止,很难让人不产生疑惑. 我们先来看一段程序,友情提示sublimeText看更爽: ...

  2. mysql悲观锁以及乐观锁总结和实践

    悲观锁介绍(百科): 悲观锁,正如其名,它指的是对数据被外界(包括本系统当前的其他事务,以及来自外部系统的事务处理)修改持保守态度,因此,在整个数据处理过程中, 将数据处于锁定状态.悲观锁的实现,往往 ...

  3. Nginx的坑

    Nginx的重启命令:./nginx -s reload  有时候没有效果,原因不知, 要重启可以使用:killall nginx,然后./nginx  (就是先kill掉Nginx,然后再重启Ngi ...

  4. RabbitMQ 之 订阅模式 Publish/Subscribe

    模型图 我们之前学习的都是一个消息只能被一个消费者消费,那么如果我想发一个消息 能被多个消费者消费,这时候怎么办? 这时候我们就得用到了消息中的发布订阅模型 在前面的教程中,我们创建了一个工作队列,都 ...

  5. TIME_WAIT和CLOSE_WAIT

    先看下三次握手四次挥手的状态变化: 通常会遇到下面两种情况: 服务器保持了大量TIME_WAIT状态 服务器保持了大量CLOSE_WAIT状态 因为linux分配给一个用户的文件句柄是有限的,而TIM ...

  6. GTS--阿里巴巴分布式事务全新解决方案

    现代IT应用中,服务化SOA作为主流的技术架构被广泛应用到各种信息系统.原来一个系统被分拆成若干个服务的集合,产生了跨服务调用的分布式事务问题.随着Dubbo.SpringCloud等微服务框架的流行 ...

  7. c语言的tcp和udp客户端和服务器

    都是最简单的用来记忆. this is my 的git地址:https://github.com/yanjinyun/cLanguageTcpUdp tcp最简单的服务器: int main(int ...

  8. spring mvc: 生成RSS源

    spring mvc: 生成RSS源 准备: 从相同的maven存储库页面下载 Rome 库及其依赖项rome-utils,jdom和slf4j.和所需的依赖关系 <!-- rss源依赖 --& ...

  9. kotlin for android----------MVP模式实现登录

    学习了Kotlin,随便来个小案例,以MVP+Kotlin 来实现登录的一个小案例,希望对大家有所帮助,效果图: MVP: Model Model 是用户界面需要显示数据的抽象,也可以理解为从业务数据 ...

  10. C#/JAVA 程序员转GO/GOLANG程序员笔记大全(DAY 03)

    go语言当中,没有 class 的概念,那么面向对象的编程思想如何展现呢,go语言中对结构体的使用 struct. package main import "fmt" type P ...