许多SSL库的开发人员正在释放漏洞的修补程序,这些漏洞可能会被剥削以从加密通信恢复诸如浏览器认证cookie的明文信息。
[也:出于安全原因,可能需要SSL解密]
在进行修补工作之前,发现了攻击使用加密区块链(CBC)模式加密的SSL、TLS和DTLS实现的新方法。新的攻击方法是由伦敦大学皇家霍洛威学院的研究人员Nadhem J. AlFardan和Kenneth G. Paterson开发的。
这些人发表了研究论文和一个网站周一,关于他们的新攻击的详细信息,他们被称为幸运十三。他们与几个TLS图书馆供应商合作,以及IETF(互联网工程工作组)的TLS工作组,以解决问题。
TLS(传输层安全)协议及其前身SSL(安全套接字层)协议是HTTPS(超文本传输协议安全)的核心部分,HTTPS是保护Web上通信安全的主要方法。DTLS(数据报传输层安全)协议基于TLS,用于加密通过UDP(用户数据报协议)通信的应用程序之间的连接。
研究人员在他们的网站上说:“OpenSSL、NSS、GnuTLS、yaSSL、PolarSSL、Opera和BouncyCastle正在准备补丁,以保护cbc模式的TLS免受我们的攻击。”
这一发现意味着,当终端用户访问没有应用补丁的HTTPS网站时,理论上可能容易受到黑客的攻击。然而,安全专家表示,这一漏洞很难被利用,因此可能没有什么理由大惊小怪。
他们表示:“这些攻击源自TLS规范中的一个缺陷,而不是特定实现中的一个缺陷。”“攻击适用于所有符合TLS 1.1或1.2,或符合DTLS 1.0或1.2(这两个规范的最新版本)的TLS和DTLS实现。它们也适用于SSL 3.0和TLS 1.0的实现,这些实现包含了对以前的填充oracle攻击的对策。变体攻击也可能适用于不兼容的实现。”
这意味着几乎所有用于实施一些互联网最重要的安全协议的库可能很容易受到幸运十三攻击的影响。
好消息是,在现实世界中成功执行这些攻击来解密来自TLS连接的数据是困难的,因为它们需要特定的服务器端和客户端条件。例如,攻击者需要非常接近目标服务器——在同一个局域网(LAN)上。
十年来填充了甲骨文攻击。它们涉及攻击者在运输过程中捕获加密记录,更改它的某些部分,将其提交给服务器并监控服务器失败的多长时间才能失败。通过调整他的修改并分析许多解密尝试之间的时间差,攻击者最终可以按字节恢复原始的明文字节。
TLS设计人员试图在TLS规范的1.2版本中阻止此类攻击,方法是将时间变化降低到他们认为太低而无法利用的水平。然而,AlFardan和Paterson的“幸运十三”研究表明,这种假设是错误的,成功的填充oracle攻击仍然是可能的。
"The new AlFardan and Paterson result shows that it is indeed possible to distinguish the tiny timing differential caused by invalid padding, at least from a relatively close distance -- e.g., over a LAN," Matthew Green, a cryptographer and research professor at Johns Hopkins University in Baltimore, Maryland, said Monday in a博客。“这部分是由于计算硬件的进步:现在大多数新电脑现在携带易于访问的CPU周期计数器。但也归功于一些聪明的统计技术,使用许多样本来平滑并克服网络连接的抖动和噪声。“
除了在靠近目标服务器,一个成功的幸运13攻击也需要一个非常高的数字——数百万的尝试为了收集足够的数据进行相关统计分析时间的差异,克服网络噪声会干扰这个过程。
为了实现这一点,攻击者需要一种方法来迫使受害者的浏览器建立大量的HTTPS连接。这可以通过在受害者访问的网站上放置一段恶意JavaScript代码来实现。
针对解密的秘密明文需要在HTTPS流中具有固定位置。通过身份验证(会话)cookie满足此条件 - 在浏览器中存储的小字符串,以记录登录用户。身份验证cookie可以在其相应的网站上为用户的帐户提供攻击者,使其成为值得窃取的有价值的信息。
但是,潜在攻击者要克服的最大障碍是TLS在每次失败的解密尝试后杀死会话,因此需要与服务器重新协商会话。“TLS握手并不快,这种攻击可能需要数万(或数百万!)每个[恢复]字节的连接,”格林说。“所以在实践中,TLS攻击可能需要数天。换句话说:不要恐慌。”
另一方面,如果服务器无法解密记录,则另一方面不会杀死会话,因为它被改变,使幸运十三攻击边界线对此协议进行了实用。
AlFardan和Paterson说:“攻击只能由位于被攻击机器附近的坚定的攻击者实施,他可以生成足够的会话进行攻击。”“从这个意义上说,以目前的形式,这些攻击不会对TLS的普通用户构成重大危险。然而,众所周知,攻击只会随着时间的推移而变得越来越好,我们无法预测我们的攻击会有哪些改进,或者会有全新的攻击。”
Ivan Ristic是安全公司Qualys的工程主任,同意幸运十三攻击对于DTL,但在其目前的TLS表格中不实用。尽管如此,研究从学术角度来看,他星期二通过电子邮件表示重要。
Web服务器管理员可以选择优先使用不受HTTPS实现中此类攻击影响的密码套件。对于许多人来说,唯一的选择是RC4,一种可以追溯到1987年的流密码。
Ristic说:“由于RC4的已知缺陷(没有一个适用于SSL/TLS),人们普遍不喜欢它,但我们还没有看到在TLS中使用的针对RC4的有效攻击。”“从这个意义上说,尽管RC4并不理想,但它似乎比目前TLS 1.0中可用的替代品更强。”
TLS 1.2支持AES- gcm (AES Galois Counter Mode),这是一种更先进的密码套件,也不容易受到这些类型的攻击。然而,目前TLS 1.2的总体采用率很低。
根据数据来自SSL脉冲,这个由Qualys创建的项目旨在监控Web上SSL/TLS支持的质量,在互联网上排名靠前的177,000个HTTPS网站中,只有11%的网站支持TLS 1.2。
“我认为这个发现将是加快TLS 1.2部署的另一个原因,”Ristic说。
这不是人们第一次建议在TL中确定RC4,以防止填充Oracle攻击。两年前,当野兽(浏览器利用SSL / TLS)攻击时发生了同样的事情。
“从最近的SSL脉冲结果(1月)来看,我们知道66.7%的服务器容易受到野兽攻击的影响,这意味着他们没有优先考虑RC4,”Ristic说。“其中,少数将支持TLS 1.2,并且可以在此版本的协议中优先考虑支持的非CBC套件。但是,因为很少的浏览器支持TLS 1.2,我认为我们可以估计大约66%的服务器将谈判CBC。“