当前位置: 首页 > 科技观察

Raccoon攻击可以在特定条件下破坏TLS加密

时间:2023-03-13 09:02:30 科技观察

Raccoon攻击是TLS规范中的时序漏洞,会影响HTTPS和其他基于TLS和SSL的服务。这些基于TLS的协议使用户能够在第三方无法读取通信内容的情况下浏览网站、使用邮箱和发送即时消息。Raccoon攻击允许攻击者在特定情况下破解TLS加密并读取敏感的通信内容。该漏洞很难被利用,需要非常精确的时间测量和特定的服务器配置才能利用。攻击概述Diffie-Hellman(DH)密钥交换是一种在TLS连接中交换密钥的方法。通过使用DH交换,TLS通信中的两方可以随机生成密钥并计算公钥:gamodp和gbmodp。这些密钥在TLSKeyExchange(密钥交换)消息中发送。一旦双方都收到密钥,客户端和服务器都将计算一个共享的秘密gabmodp(参数密钥),并使用专用密钥推导函数推导所有TLS会话密钥。Raccoon攻击利用了TLS规范中的边信道。TLS1.2及更早版本规定,在进一步计算之前,需要剥离预主密钥中所有以零开头的零字节。这导致预主密钥用作密钥派生函数的输入,密钥派生函数是基于不同时序配置的哈希函数。精确的计时策略可能允许攻击者为TLS服务器构造一个预言机(Oracle)。oracle可以告诉攻击者计算出的premasterkey是否以0开头。例如攻击者可以监听客户端发送的ga,并重新发送给服务器,判断最终的premastersecret是否以0开头。从中获取1个字节预主密钥对攻击者没有帮助。但是假设攻击者截获了包含值ga的ClientKeyExchange(密钥交换)消息,那么攻击者就可以构造与ga关联的值,并在TLS握手中将其发送给服务器。具体来说,攻击者可以构造值gri*ga,从而生成预主密钥gri*b*gab。根据服务器的计时行为,攻击者可以找出从0开始的premastersecret。FAQ如果我是管理员,我应该如何修复这个漏洞?Raccoon是一种复杂的定时攻击,极难利用并且需要解密真实世界的TLS会话。攻击者可以获得什么?攻击者可以使用Raccoon攻击来解密用户和服务器之间的会话,包括但不限于用户名、密码、信用卡号、电子邮件、即时消息、敏感??文件等。攻击影响该攻击针对TLS1.2及更早版本的Diffie-Hellman密钥交换。一次成功的攻击需要2个先决条件:服务器在TLS握手中重用公共DH密钥。例如,服务器记录使用静态TLS-DH密码套件,或者服务器使用TLS-DHE并为多个连接重用临时密钥。·攻击者需要进行精确的计时测量才能确定DH共享密钥的第一个字节是否为0。Raccoon攻击能否窃取私钥?不能。每个要攻击的连接都必须单独攻击。TLS1.3是否受到影响?不受影响。在TLS1.3中,不重用DHE密钥套件中以0开头的字节和密钥。但是有一些TLS1.3变体允许密钥重用,例如ETS和eTLS。如果在这些变体中重复使用临时密钥,就会引入攻击者可以成功利用的微体系结构侧通道。因此,研究人员建议不要使用这些变体。供应商响应包括Microsoft在内的多家供应商已为此漏洞分配了一个CVE编号。F5分配了CVE编号CVE-2020-5929,许多F5产品允许在没有精确计时策略的情况下执行此攻击的特定变体。此外,F5建议用户不要重复使用临时密钥。OpenSSL分配的CVE编号为CVE-2020-1968。OpenSSL从1.0.2f版本开始默认使用新的DH密钥,因此此次攻击主要影响OpenSSL1.0.2之前的版本。Mozilla分配的CVE编号为CVE-2020-12413。可以通过在Firefox中禁用DH和DHE密码套件来解决此问题。Microsoft分配的CVE编号为CVE-2020-1596。BearSSL和BoringSSL不受此漏洞影响,因为它们不支持DH(E)密码套件。更多见:https://raccoon-attack.com/#paper完整分析论文下载地址:https://raccoon-attack.com/RacoonAttack.pdf本文翻译自:https://raccoon-attack.com/茹若转载请注明原文地址: