一些受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服务器陷入被攻击的险境的更多相关文章

  1. 多台web服务器之间共享session

    常见的几种方法如下: 1. 写客户端Cookie的方式 当用户登陆成功以后,把网站域名.用户名.密码.token.session有效时间全部采用cookie的形式写入到客户端的cookie里面,如果用 ...

  2. cookie、session的联系和区别,多台web服务器如何共享session

    1.Cookie与Session的联系: cookie在客户端保存状态,session在服务器端保存状态.但是由于在服务器端保存状态的时候,在客户端也需要一个标识,所以session也可能要借助coo ...

  3. php 高级 多台web服务器共享session的方法

    解决多台web服务器共享session的问题,至少有以下三种方法:   一.将本该保存在web服务器磁盘上的session数据保存到cookie中 即用cookie会话机制替代session会话机制, ...

  4. 如何设置让外网通过路由器IP加端口号访问到局域网一台Web服务器

    场景描述: 我们局域网内所有主机链接一台路由器,通过设置动态获取IP上网,现在想让一台主机作为Web 服务器,让外网用户通过http://ip:port的方式访问. 1:首先修改Apache的端口号: ...

  5. web服务器集群(多台web服务器)后session如何同步和共享

    在访问量上去以后,很多人会采用web集群的方式在满足逐渐增长的用户量.这时候就不得不面对一个问题,那就是在多个服务器下,每次请求都会因为负载均衡而分配到不同的服务器上.用户在登录服务器后,下一次请求被 ...

  6. EG:nginx反向代理两台web服务器,实现负载均衡 所有的web服务共享一台nfs的存储

    step1: 三台web服务器环境配置:iptables -F; setenforce 0 关闭防火墙:关闭setlinux step2:三台web服务器 装软件 step3: 主机修改配置文件:vi ...

  7. session和cookie区别,多台WEB服务器如何共享session,禁用COOKIE后SESSION是否可用,为什么?

    答:session的运行机制: 用户A访问站点Y,如果站点Y指定了session_start();(以下假设session_start()总是存在)那么会产生一个session_id,这个sessio ...

  8. cookie、session的联系和区别,多台web服务器如何共享session?

    cookie在客户端保存状态,session在服务器端保存状态.但是由于在服务器端保存状态的时候,在客户端也需要一个标识,所以session也可能要借助cookie来实现保存标识位的作用.cookie ...

  9. Facebook 运维内幕曝光:一人管理2万台服务器

    Facebook 运维内幕曝光:一人管理2万台服务器 oschina 发布于: 2013年11月23日 (29评) 分享到  新浪微博腾讯微博 收藏+32 11月30日 珠海 源创会,送U盘,先到先得 ...

随机推荐

  1. Struts框架核心工作流程与原理

    1.Struts2架构图  这是Struts2官方站点提供的Struts 2 的整体结构.  执行流程图 2.Struts2部分类介绍  这部分从Struts2参考文档中翻译就可以了. ActionM ...

  2. JVM(三)JVM的ClassLoader类加载器

    1.类加载的生命周期 类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括: (1)加载 (2)验证 (3)准备 (4)解析 (5)初始化 (6)使用 (7)卸载 一共7个阶段.其中验 ...

  3. 源码分析篇 - Android绘制流程(二)measure、layout、draw流程

    performTraversals方法会经过measure.layout和draw三个流程才能将一帧View需要显示的内容绘制到屏幕上,用最简化的方式看ViewRootImpl.performTrav ...

  4. mpvue图片轮播遇到的问题

    小程序官方写法: <swiper indicator-dots="{{indicatorDots}}" autoplay="{{autoplay}}" i ...

  5. Django model转字典的几种方法

    平常的开发过程中不免遇到需要把model转成字典的需求,尤其是现在流行前后端分离架构,Json格式几乎成了前后端之间数据交换的标准,这种model转dict的需求就更多了,本文介绍几种日常使用的方法以 ...

  6. dig命令详解

    dig命令是常用的域名查询工具,可以用来测试域名系统工作是否正常 语法 dig(选项)(参数) 选项 @<服务器地址>:指定进行域名解析的域名服务器: -b<ip地址>:当主机 ...

  7. SpringBoot入门 (七) Redis访问操作

    本文记录学习在SpringBoot中使用Redis. 一 什么是Redis Redis 是一个速度非常快的非关系数据库(Non-Relational Database),它可以存储键(Key)与 多种 ...

  8. tcp/ip通信中udp头部结构udphdrp->check校验计算

    通过raw socket修改通信数据后,可通过函数 set_udp_checksum1 重新校验计算iph->check值 在http://www.cnblogs.com/dpf-10/p/78 ...

  9. Java设计模式学习记录-建造者模式

    前言 今天周末,有小雨,正好也不用出门了,那就在家学习吧,经过了两周的面试,拿到了几个offer,但是都不是自己很想去的那种,要么就是几个人的初创小公司,要么就是开发企业内部系统的这种传统开发,感觉这 ...

  10. XSS事件(一)

    前言 ​ 最近做的一个项目因为安全审计需要,需要做安全改造.其中自然就包括XSS和CSRF漏洞安全整改.关于这两个网络安全漏洞的详细说明,可以参照我本篇博客最后的参考链接.当然,我这里并不是想写一篇安 ...