HTTP压缩继续将加密通信造成风险
安全研究人员已经扩展并提高了三岁的攻击,利用用于加速浏览的压缩机制,以便从加密的Web流量恢复敏感信息。
攻击,称为违规,利用许多Web服务器使用的GZIP /缩小算法,以减少响应HTTP请求时的延迟。此压缩机制泄漏了有关加密连接的信息,并允许中间攻击者恢复身份验证cookie和其他敏感信息。
违规者(通过自适应压缩超文本的浏览器侦察和exfiltration)首先是在2013年8月的黑帽美国安全会议上由安全研究员Angelo Prado,Neal Harris和Yoel Gluck举行。虽然理论上影响了所有SSL / TLS密码,但它们的攻击版本最有效地针对与流密码加密的连接,例如RC4。
来自雅典国家技术大学的另一个研究人员,来自雅典大学国家技术大学的DIMITRIS KARAKOSTAS,自从雅典大学获得了改进,这使得侵犯TLS块密码,如AES,比RC4更常用的攻击。
Karakostas和Zindros上周在黑色帽子亚洲安全会议上展示了他们的违规优化,并发布了一个名为破裂的开源框架,可用于发射此类压缩相关的攻击。
他们的演示包括针对Gmail和Facebook聊天的两个概念验证攻击,以证明许多网站,包括一些最安全的有意识的网站都很脆弱。
违规要求攻击者处于网络位置,允许拦截受害者的Web流量。这可以通过损害路由器或互联网基础架构中的ISP或智能机构等Internet基础架构来实现这一点。
然后,攻击者将必须找到应用程序的易受攻击的部分,该部分接受通过URL参数输入的输入,并将其反映进入加密响应的某处。
在Gmail的情况下,研究人员发现,其移动站点上的搜索功能允许此类输入反射:通过URL参数传递的搜索字符串包含在响应页面中,例如在一条消息中表示没有结果那个特定的字符串。此外,如果请求由经过身份验证的会话进行,则响应还包括识别该会话的身份验证令牌。
GZIP压缩在HTTP中工作的方式是,如果响应中存在多个字符串的实例,则保留第一个实例,其余的将用短引用替换为第一个实例的位置。这减少了响应的大小。
因此,在Gmail案例中,如果用户搜索与认证令牌的确切字符串 - 甚至是它的一部分 - 响应中将有两个相同的字符序列的实例。由于压缩,响应的尺寸小于不同搜索字符串的其他响应。
突破,攻击者的目标是欺骗用户的浏览器将大量请求发送到易受攻击的应用程序 - 如Gmail中的移动搜索功能 - 以猜测认证令牌的目标。身份验证令牌将在响应中加密,但每次搜索字符串都会匹配认证令牌的一点时,在电线上观察到的响应将更小。
这最终允许通过在新请求中不断修改搜索字符串来包括已发现的字符,顺序猜测认证令牌中的每个字符。它基本上是对每个角色的强力攻击,具有作为成功指示符的HTTP压缩的变化。
破裂框架允许攻击者将流氓码注入由用户浏览器打开的每个未加密的HTTP连接。该代码旨在强制浏览器在背景中对易受侦听的HTTPS应用程序进行请求。
与流密码相比,块CIPHERS将噪声引入响应,因为它们在加密之前将称为填充的虚拟位添加到数据,以便它可以分成特定尺寸的块。取消此噪声并使用违规技术恢复加密数据需要执行比具有使用流密码加密的相同数据所需的更大数量的请求。
乍一看,这似乎会使攻击不太实用。然而,Karakostas和Zindros通过计算为同一测试字符发送的多个响应的平均响应长度来设计基于统计的方法。它们还制定了其他优化,并引入了浏览器并行化,从而大大提高了原始攻击对使用块密码的TLS连接的速度。
三年后违反宣布后,RC4被认为是不安全,大多数网站使用AES块密码,研究人员在其技术论文中说。“一些服务,例如Facebook,也继续纳入机制以防止违规行为。但是,违约的基本方面仍然没有减轻和流行的网站,包括Facebook,继续支持脆弱的终点。“
“我们的工作表明,违规可能会发展攻击主要的Web应用程序,确认TLS交通仍然实际上脆弱的事实,”研究人员得出结论。
一个拟议的互联网标准称为第一方或同一网站cookie可以保护网站免受违规攻击。如果通过浏览器采用,如果这些请求由不同的网站发起,则这种机制将阻止饼干被列入向网站发送给网站的请求。
也就是说,如果站点A上的代码指示浏览器启动到网站B的请求,那么该请求将不包括站点B的用户身份验证cookie,即使浏览器具有与站点B的活动,经过认证的会话。
这种机制主要旨在防止跨站点请求伪造(CSRF)攻击,但也会破坏突发,因为攻击依赖于类似的启动流氓跨站点请求的方法。
Google Chrome将支持第51版的同一网站cookie的支持,该Cookie在5月份将达到稳定状态。但是,除非机制在所有浏览器中实现,否则网站所有者将对网站所有者开始使用新的“Samesite”标志来获取他们的饼干。