Forbidden attack:7万台web服务器陷入被攻击的险境

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介:

最近,根据某国际安全小组的研究表明,金融巨头Visa旗下部分受HTTPS保护的网站最近被发现了一种漏洞,它的存在可以让黑客注入恶意代码,访客浏览器将会访问到恶意内容。

加密重用造成的Forbidden Attack

据统计,受影响一共有184台服务器,其中部分属于德国证券交易所(Deutsche B rse)和波兰银行协会(Zwizek Banków Polskich),它们被发现容易受到某加密技术漏洞的攻击,我们称之为“Forbidden Attack”。此外,还有7万台web服务器被发现存在风险,虽然实际执行攻击会比较困难。

这些数据来自于1月份的全网扫描,当时Deutsche B rse就修补了这个漏洞。但是在上周三的时候,研究人员发现Visa和Zwizek Banków Polskich的漏洞似乎仍然存在,而且官方并没有回复安全研究员私下提交的漏洞信息。

该漏洞源于不正确的传输层安全协议,在数据被加密时,错误重用了相同的加密随机数。TLS的规范其实已经写明,这些数据只能使用一次,当多次重用时,则会导致Forbidden Attack。这种攻击能让黑客自行生成密钥去认证网站内容。这个漏洞利用的首次提交,是 以评论的形式写给国家标准技术研究所的。之所以叫这个名字,是因为其正确加密的基本原则,是必须临时而独特的。

在TLS握手中,那184台HTTPS服务重复使用了客户端浏览器首次连接到HTTPS网站的那个随机数,违背了加密的基本原则。因此,黑客只要有能力监控连接传输的内容,比如处于同一个不安全的wifi环境下,他们就可以将恶意内容注入到传输数据流里,而客户端浏览器并不能检查出任何差错。

研究人员在一篇名为《忽视随机数的恶果:TLS GCM实战伪造内容攻击》的paper中写道:“这是可靠性验证的失败,即使只在同一个时间段里重用一个随机数,也能让黑客通过HTTPS进行伪造内容攻击。”这项研究的结果,也将作为8月份拉斯维加斯黑帽的大会某议题的基础材料。

黑客污染HTTPS认证过的内容的中间人攻击,已经击破了TLS的基本保证。黑客可以绕过保护,添加恶意JS代码或者添加能诱惑访客输入密码、社会安全码或者其他敏感数据的WEB内容。虽然这个漏洞让Forbidden Attack很好的文档规范化了,新的研究结果仍值得我们注意如何利用它去对抗HTTPS保护的网站,网上也有相应的POC代码。

下面则是一段演示视频:

https://www.youtube.com/watch?v=qByIrRigmyo

GCM随机数重用攻击visa.dk的POC

这篇paper是由研究人员Hanno B ck、Aaron Zauner、Sean Devlin、 Juraj Somorovsky、and Philipp Jovanovic共同撰写,里面警告我们网上约7万HTTPS服务器,可能会因为伪随机数算法生成的“随机数”而遭受这类攻击。只要有足够多的WEB请求,黑客就有很大可能性去重用其中一个来执行攻击。然而这样所需WEB请求的数量是比较大的,约2的30次方个请求里取得重复随机数的可能性为3%, 2的35次方个请求后能100%成功。正如paper的标题所述,Forbidden Attack针对的是AES-GCM,世界上最广泛的TLS对称加密协议。

在研究人员发现的7万站点中,黑客需要往WEB连接里填充TB级别的数据,从而创建足够多的请求。因此,这种攻击的理论性可能会高于实际意义。但是,这仍然被大多数运用HTTPS保护的组织当作不可接受的风险。研究人员目前确定了几个TLS实例中生成了伪随机数,其中有IBM的DominoWEB服务器,已于3月打上了补丁。还有个Radware的负载均衡器的案例,也 已经修复了。

自研究人员发布扫描结果后,许多漏洞网站已经修复了。但是只有工程师们深刻意识到这个问题,事情才能显著改善,这也是研究人员发布这篇paper的原因。

Zauner 在邮件中写道,“我敢肯定一年以后我再去扫描一遍,还是会有很多的漏洞案例。可能还有更多方法可以利用它,谁知道呢?”

GCM工作机制浅析

那么,像GCM或者类似CTR模式的CCM,为什么不能在发送的信息中进行随机数重用呢?下面我们将就GCM的工作机制进行解释一番:

当使用AES GCM时,我们并不会运行AES加密的数据。而我们会使用AES去加密标志自增计数器创建的各区块,这就造就了不可预知的比特流(密钥数据流)。然后,我们会用需要加密的数据流与之进行XOR运算。而最初的计数区块,就是用来与其他加密文本一起生成身份验证标记的。

如果我们单独看AES加密算法,可以知道用相同的密钥去加密相同的数据,是会得到相同的加密文本的,这也是我们为啥需要CBC模式下的IV。那么我们在GCM里面重用相同的随机数会发生什么呢?

假设有两个不同的消息A和B,我们如果在其中使用了同一随机数N,这些消息的第一个区块会被这样加密:

C = AES(counter(N,1)) ⊕ A

C = AES(counter(N,1)) ⊕ B

这基本上意味着,我们如果使用相同计数器和相同的随机数去XOR两个加密的区块,会得到XOR的文本:

C ⊕ C = B ⊕ A

如果我们知道其中一个纯文本,我就可以用加密文本与之XOR,从而得到密钥数据流。最后,我们就能解密另一段使用同样的密钥和随机数加密的文本了(这点受限于已知文本长度)。

本文转自d1net(转载)

相关文章
|
2月前
|
SQL 存储 安全
Web 常见攻击方式及防御方法
【10月更文挑战第25天】Web 安全是一个复杂而重要的领域,攻击者不断寻找新的攻击方法,我们需要不断加强防御措施,提高安全意识,以保障 Web 应用的安全运行。通过采取多种防御手段的综合运用,我们可以有效地降低 Web 攻击的风险,保护用户的信息和财产安全。同时,随着技术的不断发展,我们也需要持续关注和研究新的安全威胁和防御方法,以应对不断变化的安全形势。
441 56
|
2月前
|
XML 前端开发 JavaScript
PHP与Ajax在Web开发中的交互技术。PHP作为服务器端脚本语言,处理数据和业务逻辑
本文深入探讨了PHP与Ajax在Web开发中的交互技术。PHP作为服务器端脚本语言,处理数据和业务逻辑;Ajax则通过异步请求实现页面无刷新更新。文中详细介绍了两者的工作原理、数据传输格式选择、具体实现方法及实际应用案例,如实时数据更新、表单验证与提交、动态加载内容等。同时,针对跨域问题、数据安全与性能优化提出了建议。总结指出,PHP与Ajax的结合能显著提升Web应用的效率和用户体验。
70 3
|
2月前
|
Web App开发 网络协议 安全
基于Web攻击的方式发现并攻击物联网设备介绍
基于Web攻击的方式发现并攻击物联网设备介绍
57 4
|
1月前
|
云安全 安全 网络协议
游戏服务器被攻击,游戏盾防护具有哪些作用
在数字化时代蓬勃发展,但也面临着黑客攻击、DDoS和CC攻击等网络安全威胁。游戏盾防护应运而生,专为游戏行业提供全面的网络安全解决方案,不仅有效防御大型DDoS攻击,还能精准抵御特有TCP协议的CC攻击,同时通过智能行为分析和业务安全防护,确保游戏服务器的稳定运行,提升用户体验,维护游戏生态和品牌声誉,助力游戏行业健康发展。
|
2月前
|
安全 前端开发 Java
Web安全进阶:XSS与CSRF攻击防御策略深度解析
【10月更文挑战第26天】Web安全是现代软件开发的重要领域,本文深入探讨了XSS和CSRF两种常见攻击的原理及防御策略。针对XSS,介绍了输入验证与转义、使用CSP、WAF、HTTP-only Cookie和代码审查等方法。对于CSRF,提出了启用CSRF保护、设置CSRF Token、使用HTTPS、二次验证和用户教育等措施。通过这些策略,开发者可以构建更安全的Web应用。
122 4
|
2月前
|
安全 Go PHP
Web安全进阶:XSS与CSRF攻击防御策略深度解析
【10月更文挑战第27天】本文深入解析了Web安全中的XSS和CSRF攻击防御策略。针对XSS,介绍了输入验证与净化、内容安全策略(CSP)和HTTP头部安全配置;针对CSRF,提出了使用CSRF令牌、验证HTTP请求头、限制同源策略和双重提交Cookie等方法,帮助开发者有效保护网站和用户数据安全。
102 2
|
2月前
|
存储 安全 Go
Web安全基础:防范XSS与CSRF攻击的方法
【10月更文挑战第25天】Web安全是互联网应用开发中的重要环节。本文通过具体案例分析了跨站脚本攻击(XSS)和跨站请求伪造(CSRF)的原理及防范方法,包括服务器端数据过滤、使用Content Security Policy (CSP)、添加CSRF令牌等措施,帮助开发者构建更安全的Web应用。
137 3
|
2月前
|
SQL 安全 网络协议
Web 常见攻击方式
【10月更文挑战第25天】这些只是一些常见的 Web 攻击方式,实际上还有许多其他的攻击手段。为了防范这些攻击,需要采取一系列的安全措施,如输入验证、输出编码、安全配置、身份验证等。同时,也需要不断提高用户的安全意识,以减少被攻击的风险。
32 1
|
3月前
|
Java PHP
PHP作为广受青睐的服务器端脚本语言,在Web开发中占据重要地位。理解其垃圾回收机制有助于开发高效稳定的PHP应用。
【10月更文挑战第1天】PHP作为广受青睐的服务器端脚本语言,在Web开发中占据重要地位。其垃圾回收机制包括引用计数与循环垃圾回收,对提升应用性能和稳定性至关重要。本文通过具体案例分析,详细探讨PHP垃圾回收机制的工作原理,特别是如何解决循环引用问题。在PHP 8中,垃圾回收机制得到进一步优化,提高了效率和准确性。理解这些机制有助于开发高效稳定的PHP应用。
61 3
|
3月前
|
存储 安全 前端开发
在前端开发中需要考虑的常见web安全问题和攻击原理以及防范措施
在前端开发中需要考虑的常见web安全问题和攻击原理以及防范措施
325 0