Forbidden Attack:7万台web服务器陷入被攻击的险境
一些受VISA HTTPS保护的站点,因为存在漏洞容易受到Forbidden攻击,有将近70,000台服务器处于危险之中。
一种被称为“Forbidden攻击”的新攻击技术揭露许多HTTPS签证网站容易受到网络攻击,大约70,000台服务器处于危险之中。一群国际研究人员(Hanno Böck, Aaron Zauner, Sean Devlin, Juraj Somorovsky, and Philipp Jovanovic)发现该威胁动作可以向访问者的浏览器中注入恶意代码和伪造内容。
该组织已经发表了一篇题为“Nonce-Disrespecting对手:在TLS中对GCM的实用的伪造攻击”的文章。
专家已经发现有184台服务器受到了攻击,其中的一些属于德国证交所德意志交易所和波兰银行业协会Zwizek Bankow Polskich。
这种攻击利用并不新鲜,事实上这种攻击利用已经有至少十年的时间了,但很显然,它已经被遗忘了。Forbidden攻击的漏洞利用证据是十分确凿的,研究人员还现场演示了如何利用它来攻击加密通信。
包括德意志交易所的一些组织已经解决了这个问题, 但是Visa和Zwizek Bankow Polskich仍然是易受攻击的。
该漏洞是由TLS协议中在数据加密时重用相同的随机数引起的。nonce重用为Forbidden攻击打开了大门,黑客可以利用它来生成用于对网站内容进行身份验证的关键材料。
使用相同的nonce使得当浏览器第一次连接到一个HTTPS保护的站点时,威胁活动可以很容易地通过与攻击者共享的传输通道注入伪造的内容 (比如,在一个未加密的无线网络中,攻击者在同一个局域网段)。
此时,篡改的传输不会触发任何可疑行为来提醒受害者。
研究人员在他们发表的论文中这样写道:“在他给NIST Joux[18]的评论中描述了一个由于nonce重用而针对GCM的攻击。这种攻击允许攻击者学习认证密钥和伪造信息。因为nonce的唯一性是典型的密码分析的基本原则,所以Joux称他的攻击为“Forbidden攻击”。不过,它强调了一个在实际实现时重要的失效模式。只要这个nonce被重用了一次并且被我们用来实施了一个针对HTTPS的实用的伪造攻击,这将带来严重的真实性的失效问题。”
黑客可以运行一个Forbidden攻击来篡改通讯和添加恶意的JavaScript代码或添加用于欺诈活动的Web内容。
研究人员在线发布的一个概念验证利用代码显示了攻击的可行性,他们还发布了一个攻击脆弱的Visa网站的视频(https://youtu.be/qByIrRigmyo)。
专家们注意到,通过给予足够的web请求,那些易受攻击的网站会有很高的概率重用nonce,他们估计,对于一个成功的攻击来说需要的请求数量仍然极高。
论文中的一个表格显示,其中包括nonce碰撞的概率在目前的64位大小上是2n。专家们发现,大约230个请求时的概率是3%,235个请求时可以有100%的几率。
研究人员进行的这项研究被分成多个子任务,最初他们扫描网络寻找目标,然后他们试图找到易受攻击的那些。
“我们针对网络连接设备的评估一直被分成多个子任务。最初是发现扫描,紧接着漏洞扫描发现目标设备上使用不同参数的时间跨度约为18天。在本节中,我们描述了在我们的评估中用于发现和分析网络连接设备的方法。”这篇论文中写道。
在被研究人员发现的这70000个网站中,专家们发现了几个有缺陷的TLS实现,其中一个在IBM的Domino Web服务器上,另一个在Radware的负载平衡器上,这两个目前都已经被修复了。
结语
对于企业而言最重要的资产就是应用程序和其中的数据,现有常用的防护手段包括基础设施保护和边界防护,比如防火墙/WAF/IPS等。
- 其一,边界防护是对网络访问和内容进行检查,这些保护措施并不清楚应用程序的行为:内部逻辑和数据处理过程,因此缺乏保护的精确性。
- 其二,边界技术“天真”的认为程序内部是安全的,不安全因素来自外部。但从过去几年的经验中得出,最具毁灭性的攻击,恰恰来自内部,甚至是企业所信赖的员工。这正是边界技术的软肋。
- 其三,过去一段时间的数据表明,明显网络边界逐渐消失。随着互联网的发展,越来越多的消费者开始向云端靠拢,他们更多的工作都是在企业外部完成的,边界技术难以针对这种变化环境提出有效的保护。
RASP,Runtime Application Self-protection,实时应用自我防护,是一种最新的应用层防护技术。能够克服上述问题,在运行时环境结合应用上下文防护,代码级定位漏洞,完爆Forbidden Attack等常见攻击。
Forbidden Attack:7万台web服务器陷入被攻击的险境的更多相关文章
- 多台web服务器之间共享session
常见的几种方法如下: 1. 写客户端Cookie的方式 当用户登陆成功以后,把网站域名.用户名.密码.token.session有效时间全部采用cookie的形式写入到客户端的cookie里面,如果用 ...
- cookie、session的联系和区别,多台web服务器如何共享session
1.Cookie与Session的联系: cookie在客户端保存状态,session在服务器端保存状态.但是由于在服务器端保存状态的时候,在客户端也需要一个标识,所以session也可能要借助coo ...
- php 高级 多台web服务器共享session的方法
解决多台web服务器共享session的问题,至少有以下三种方法: 一.将本该保存在web服务器磁盘上的session数据保存到cookie中 即用cookie会话机制替代session会话机制, ...
- 如何设置让外网通过路由器IP加端口号访问到局域网一台Web服务器
场景描述: 我们局域网内所有主机链接一台路由器,通过设置动态获取IP上网,现在想让一台主机作为Web 服务器,让外网用户通过http://ip:port的方式访问. 1:首先修改Apache的端口号: ...
- web服务器集群(多台web服务器)后session如何同步和共享
在访问量上去以后,很多人会采用web集群的方式在满足逐渐增长的用户量.这时候就不得不面对一个问题,那就是在多个服务器下,每次请求都会因为负载均衡而分配到不同的服务器上.用户在登录服务器后,下一次请求被 ...
- EG:nginx反向代理两台web服务器,实现负载均衡 所有的web服务共享一台nfs的存储
step1: 三台web服务器环境配置:iptables -F; setenforce 0 关闭防火墙:关闭setlinux step2:三台web服务器 装软件 step3: 主机修改配置文件:vi ...
- session和cookie区别,多台WEB服务器如何共享session,禁用COOKIE后SESSION是否可用,为什么?
答:session的运行机制: 用户A访问站点Y,如果站点Y指定了session_start();(以下假设session_start()总是存在)那么会产生一个session_id,这个sessio ...
- cookie、session的联系和区别,多台web服务器如何共享session?
cookie在客户端保存状态,session在服务器端保存状态.但是由于在服务器端保存状态的时候,在客户端也需要一个标识,所以session也可能要借助cookie来实现保存标识位的作用.cookie ...
- Facebook 运维内幕曝光:一人管理2万台服务器
Facebook 运维内幕曝光:一人管理2万台服务器 oschina 发布于: 2013年11月23日 (29评) 分享到 新浪微博腾讯微博 收藏+32 11月30日 珠海 源创会,送U盘,先到先得 ...
随机推荐
- Shell 相互调用
Shell 文件包含 和其他语言一样,Shell 也可以包含外部脚本.这样可以很方便的封装一些公用的代码作为一个独立的文件. Shell 文件包含的语法格式如下: . filename # 注意点号( ...
- 使用node和express+mongodb实现数据增删改功能
2018即将过去,2019即将来临,前端技术不断在在更新,学的东西越来越多.我们只有不断的学习,才不能被淘汰.在前后端分离的一个时代,后端提供接口,前端调用接口,逻辑判断,每个都是独立的工作.如果自己 ...
- Java NIO系列教程(九) ServerSocketChannel
Java NIO中的 ServerSocketChannel 是一个可以监听新进来的TCP连接的通道, 就像标准IO中的ServerSocket一样.ServerSocketChannel类在 jav ...
- java arrayList vector 区别
1. 关系图 List接口一共有三个实现类,分别是ArrayList.Vector和LinkedList 2. ArrayList.Vector和LinkedList区别 ArrayList是最常用的 ...
- Eclipse MAT:浅堆 vs 保留堆
来自:唐尤华 https://dzone.com/articles/eclipse-mat-shallow-heap-retained-heap 有没有想要搞清楚浅堆(Shallow Heap)和保留 ...
- V8源码边缘试探-黑魔法指针偏移
这博客是越来越难写了,参考资料少,难度又高,看到什么写什么吧! 众多周知,在JavaScript中有几个基本类型,包括字符串.数字.布尔.null.undefined.Symbol,其中大部分都可以在 ...
- office web app server部署和简单操作
部署环境:windows server 2012 R2,服务器在AD域中 参考网址: https://msdn.microsoft.com/zh-cn/magazine/jj219455(office ...
- MFC函数—CWinApp::LoadStdProfileSettings
从 InitInstance 成员函数内调用该函数,启用和加载最近使用的(MRU)文件和最后浏览状态的列表.void LoadStdProfileSettings( UINT nMaxMRU = ...
- JS DOM操作(二) Window.docunment对象——操作样式
一 对元素的定位 在 js 中可以利用 id.class.name.标签名进行元素的定位 id.class 用在客户端 name 用在服务端 用 id 定位 -- ...
- FORM中使用onSubmit="return false"防止表单自动提交,以及submit和button提交表单的区别
在页面中有多个input type="text"的文本输入框的情况下没有问题,但是当页面中有只有一个文本框的情况下(),就会出现此问题. 后来在form 中添加:onsubmit= ...