JavaScript 超级 BUG!多款 x86/ARM 处理器瞬间遭破解

https://www.oschina.net/news/82108/javascript-bug-cause-cpu-aslr-invalid

来自阿姆斯特丹自由大学系统及网络安全小组 VUSec 的研究人员本月 15 日揭露了一项攻击技术,可绕过 22 款处理器的 “位址空间配置随机载入”(ASLR)保护,波及 Intel、AMD、NVIDIA 及 SAMSUNG 等处理器品牌。

ASLR 是许多操作系统的预设安全机制,它在虚拟位址空间中随机配置应用程序的代码与资料,以提高黑客的攻击门槛,被视为保护网络用户的第一道防线。

而 ASLR 的限制正是现代处理器管理内存的基础,VUSec 研究人员打造了一个 JavaScript 攻击程序可完全去除 ASLR 对处理器所带来的安全保障。

研究人员解释,处理器中的内存管理单元(MMU)是借由快取阶层来改善搜寻页表的效率,但它同时也会被其他程序利用,像是浏览器中所执行的 JavaScript。

于是他们打造了名为 ASLRCache(AnC)的旁路攻击(side-channelattack)程序,可在 MMU 进行页表搜寻时侦测页表位置。

安全研究人员开发了 AnC 的原生版本与 JavaScript 版本,通过原生版本来建立可在 22 款处理器上观察到的 MMU 讯号,再以 JavaScript 版本找出 Firefox 及 Chrome 浏览器上的程序码指标与堆积指标,计算出档案的实际位址,最快只要 25 秒就能让 ASLR 的保护消失无踪。

现阶段 VUSec 已释出 AnC 的原生版本以供研究使用,但为了维护网络使用者的安全,并不打算发表 JavaScript 版本。即便如此,研究人员仍然预期任何拥有较高能力的黑客在几周内就可复制相关的攻击程序。

VUSec 警告,由于 AnC 攻击程序利用的是处理器的基本属性,现在是无解的,对使用者而言,唯一的防范之道就是不执行可疑的 JavaScript 程式,或是直接在浏览器上安装可封锁 JavaScript 的插件。

其实 AnC 早在去年 10 月就出炉了,但当时 VUSec 决定先行知会相关业者,包括处理器、浏览器与操作系统领域,一直到本周才对外公开。

不知道大家有什么想法呢,JavaScript 还能这样玩?

JavaScript也是黑客技术?的更多相关文章

  1. 【腾讯Bugly干货分享】iOS黑客技术大揭秘

    本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/5791da152168f2690e72daa4 “8小时内拼工作,8小时外拼成长 ...

  2. 关于javascript模块加载技术的一些思考

    前不久有个网友问我在前端使用requireJs和seajs的问题,我当时问他你们公司以前有没有自己编写的javascript库,或者javascript框架,他的回答是什么都没有,他只是听说像requ ...

  3. SQL 注入,永不过时的黑客技术

    SQL 注入,永不过时的黑客技术 TalkTalk的信息泄漏事件导致约15万人的敏感信息被暴露,涉嫌造成这一事件的其中一名黑客使用的并不是很新的技术.事实上,该技术的「年纪」比这名15岁黑客还要大两岁 ...

  4. 0X01应用程序黑客技术

    前言 该文章主要是讲解了常见的应用程序黑客技术基本概念,包括消息钩取,API钩取,DLL注入,代码注入 天象独行 0X01:消息钩取 原理:在我们通过键盘,鼠标等输入信息过程中,Windows会通过钩 ...

  5. Web前端--黑客技术揭秘(菜鸟知识)

    一,Web安全的关键点 1.同源策略是众多安全策略的一个,是Web层面上的策略.很重要. 2.同源策略规定:不同域的client脚本在没明白授权的情况下.不能读写对方的资源. 3.同域要求两个网站同协 ...

  6. javascript和web debug技术

    在前端开发中,调试技术是必不可少的技能,本文将介绍五种前端开发必备的调试技术. Weinre移动调试 DOM 断点 debugger断点 native方法hook 远程映射本地调试 Weinre 在移 ...

  7. iOS黑客技术相关

    在黑客的世界里,没有坚不可破的防护系统,也没有无往不胜.所向披靡的入侵利器,有时候看似简单的问题,破解起来也许花上好几天.好几个月,有时候看似很 low 的工具往往能解决大问题:我们以实现微信自动抢红 ...

  8. JavaScript 事件委托的技术原理

    如今的 JavaScript 技术界里最火热的一项技术应该是‘事件委托(event delegation)’了.使用事件委托技术能让你避免对特定的每个节点添加事件监听器:相反,事件监听器是被添加到它们 ...

  9. JavaScript事件委托的技术原理

    如今的JavaScript技术界里最火热的一项技术应该是‘事件委托(event delegation)’了.使用事件委托技术能让你避免对特定的每个节点添加事件监听器:相反,事件监听器是被添加到它们的父 ...

随机推荐

  1. sort的cmp函数

    sort的cmp函数只能写return a>b;或者return a<b;

  2. js图片预加载实现!

    var myImage = (function(){ var imgNode = document.createElement( 'img' ); document.body.appendChild( ...

  3. 47 Majority Element II

    原题网址; https://www.lintcode.com/problem/majority-element-ii/ 描述 给定一个整型数组,找到主元素,它在数组中的出现次数严格大于数组元素个数的三 ...

  4. java接口的意义

    java当中继承一个接口,要重写他的方法的话,那为什么还要多此一举的去实现一个接口呢? 直接把方法写在类当中不就可以了?就是说去掉类名后面的Implements 接口 ,可以不可以呢? 接口的最主要的 ...

  5. 简单DP (Preparing for Xtreme 12.0) | STL map使用

    当水题遇上了map大坑 晚上写一个dp,弄了半天样例一直不过,对着队友的代码一行行看,发现跟自己逻辑完全一样啊... 然后就逐行输出比对,发现预处理出了问题,把map插入新值的地方改了下,果然就好了. ...

  6. HDU 1069 Monkey and Banana (动态规划)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1069 简单记录一下 思路:把长方体的各种摆法都存到数组里面,然后按照长宽排序,再dp即可 转移方程 d ...

  7. RESTful API -- rules

    RESTful介绍 REST与技术无关,代表的是一种软件架构风格,REST是Representational State Transfer的简称,中文翻译为“表征状态转移”或“表现层状态转化”. 推荐 ...

  8. spring容器创建bean对象的方式

    xml文件中有bean的配置,而且这个bean所对应的java类中存在一个无参构造器 那么这个时候spring容器就可以使用反射调用无参构造器来创建实例了(常规的方式) 通过工厂类获得实例(工厂类实现 ...

  9. linux下安装rabbitmq 集群

    1.下载erlang官网地址 http://www.erlang.org/download 挑选合适的版本 然后 wget 比如目前18.3运行命令 wget http://erlang.org/do ...

  10. Odoo models.py BaseModel

    class BaseModel(object): """ Base class for OpenERP models. OpenERP models are create ...