研究人员设计出一种安卓设备入侵新方法,不用搞定任何软件漏洞,而是利用RAM芯片的物理设计缺陷。该攻击技术也可影响其他ARM(进阶精简指令集机器)和基于x86芯片的设备和计算机。
该攻击源于过去10年间一直在往越来越小的芯片中植入更大DRAM(动态随机存取存储)能力的努力,密集的存储会导致相邻存储单元在特定条件下相互泄漏电荷。
比如说,快速重复地访问物理存储位置——如今被称为“锤击(hammering)”,可导致邻近位置的比特位值从0变1或从1变0,也就是发生了位翻转。
尽管此类电气干扰已经为人所知,且被厂商从可靠性角度进行了研究——因为内存崩坏可导致系统崩溃,但研究人员证实,若以可控方式触发,位翻转还能造成很严重的安全影响。
2015年3月,谷歌 Project Zero 展示了2个基于 x86-64 CPU 架构内存“行锤击(row hammer)”效应的提权漏洞利用。其中一个漏洞利用可使代码跳过谷歌Chrome沙箱检测,直接在操作系统中执行,另一个则能获取Linux机器上的内核级权限。
自那以后,其他研究人员对此问题进行了进一步研究,证实该漏洞可通过JavaScript从网站进行利用,能影响到云环境中运行的虚拟服务器。不过,智能手机和其他移动设备所用的ARM架构与之大不相同,这种技术能否用在ARM上尚存疑问。
但现在,研究人员证明了“行锤击(Rowhammer)”攻击不仅对ARM有效,甚至更容易在x86上实现。
研究人员将他们的新攻击命名为Drammer——意为确定性的Rowhammer,并计划在26号举行的第23届ACM计算机与同信安全大会上予以公布。该攻击技术是在之前的Rowhammer技术基础之上发展起来的。
研究人员创建了一个不需要任何权限的恶意安卓应用,通过不可检测的内存位翻转执行时可以获取到root权限。
研究人员测试了来自不同厂家的27款安卓设备,其中21种使用ARMv7(32位),6种使用ARMv8(64位)架构。他们在17台ARMv7设备和1台ARMv8设备上成功进行了位翻转,表明ARM对这种攻击技术也是防护薄弱的。
而且,Drammer能与Stagefright或BAndroid之类其他安卓漏洞联合使用,打造不需要用户手动下载恶意App的远程攻击。
事实上,以软件来修复硬件问题几乎是不可能的。硬件厂商正在调查该问题,或许会在未来推出的存储芯片中解决该问题,但现有设备上的芯片大概就一直是这个状态了。
更糟的是,很难说清到底哪些设备受影响——因为影响因素实在太多,还没进行全面的调查。比如说,设备电量低于一定阈值的时候,存储控制器的表现有可能不一样,因而满电量时看起来无漏洞的设备,在电量低时有可能被入侵。
因为想调查对ARM设备的影响,Drammer便在安卓上进行了演示,但类似底层技术适用于所有架构和操作系统。新型攻击是对之前技术的大幅改进,之前的攻击技术需要一定的运气,或者只在某些平台才有的能被轻松关闭的一些特殊功能。
Drammer依赖很多硬件子系统都使用的DMA(直接存储器存取)缓冲区,这些子系统包括有显卡、网卡和声卡。虽然Drammer采用安卓的ION内存分配程序实现,但所有操作系统都含有分配DMA缓冲区的API和方法,这也是研究报告中重点阐的警告之一。
这是第一次,不靠任何特性,就实现了针对性的、完全可靠的、确定的Rowhammer攻击。这一内存马杀鸡甚至不仅仅针对安卓,任何Linux平台,或许其他操作系统都可享受到。因为它利用的是操作系统内核里内存管理的固有特性。
正文
基于硬件的攻击,无需软件漏洞和用户许可
此篇文章发布距今已超过1232天,您需要注意文章的内容或图片是否可用!
还没有评论,来说两句吧...