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. 【JZOJ1259】牛棚安排

    description Farmer John的N(1<=N<=1000)头奶牛分别居住在农场所拥有的B(1<=B<=20)个牛棚的某一个里.有些奶牛很喜欢她们当前住的牛棚,而 ...

  2. 菜鸟nginx源码剖析数据结构篇(五) 基数树 ngx_radix_tree_t[转]

    菜鸟nginx源码剖析数据结构篇(五) 基数树 ngx_radix_tree_t Author:Echo Chen(陈斌) Email:chenb19870707@gmail.com Blog:Blo ...

  3. Python 中的运算符

    1.算数运算符 + 加 - 减 * 乘 计算字符串重复的次数 print("唯美" * 10) / 除 round(10/3, 4)   4代表位数 // 取整数 % 取余数 ** ...

  4. 04-python 学习第四点-装饰器

    装饰器就是一个函数,他是通过不修改某个函数的源代码和调用方式的前提下可以添加新功能的一种函数.在python 中装饰器一般采用高阶函数和嵌套函数达到装饰的作用,下面进行实例讲解: 1.目前有一个网址有 ...

  5. 关于判断是安卓还是ios环境跳转下载页

    H5项目中判断是安卓还是iOS手机就跳转到不同的下载页,项目如下https://github.com/JserJser/dailyPush/tree/master/daily6/H5 这个项目里面我比 ...

  6. nginx配置虚拟主机的两种方式

    一. 通过端口区分不同的虚拟主机 二. 通过域名区分不同的虚拟主机 备注: 1)hosts文件路径:

  7. express 4.x 搭建Node项目框架

    npm install -g express-generator express projectName cd projectName npm install 手动添加文件夹config.models ...

  8. c语言学习笔记 函数数组传递笔记

    今天学习c语言的一个小例子,果然还是陷入了php的编程习惯里,这里记录一下. #include <stdio.h> //例子很简单,就是编写一个函数把传递进来的数组里的值都赋值为1而已 / ...

  9. 通过原生JS打印一个空心菱形图案

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  10. PAT甲级——A1064 Complete Binary Search Tree

    A Binary Search Tree (BST) is recursively defined as a binary tree which has the following propertie ...