iThome
骇客利用GPU与WebGL可开采内存设计漏洞Rowhammer,两分钟就能取得手机权限
在2016年曾揭露存在于动态随机存取内存(DRAM)之Rowhammer漏洞的阿姆斯特丹自由
大学(Vrije Universiteit Amsterdam)漏洞安全实验室VUSec Lab于本周再度披露攻击
Rowhammer的新途径,这次该实验室利用了GPU与浏览器标准之一的WebGL,于两分钟就取
得了Android手机权限,并将其命名为GLitch攻击。
Rowhammer被视为DRAM的设计漏洞,现今的内存为了扩大容量并维持其尺寸,记忆元(
Cell)的密度也愈来愈高。因此,当骇客锁定所要攻击的内存列时,只要重复造访隔壁
列的记忆元,就会造成内存控制电路的电压波动,影响目标内存列,造成位元翻转现
象,例如1变成0或0变成1,骇客只要依照需求持续变更内存内的位元,最终将可操控作
业系统数据并取得最高权限。
GLitch是由两项攻击所组成,先利用旁路攻击(side channel)来判断内存的布局,再
执行可翻转位元的Rowhammer攻击。
整个恶意攻击的情境是骇客先设计一个恶意网站,诱导Android手机以Firefox或Chrome浏
览器造访该站,自远端执行JavaScript,就能开采Rowhammer漏洞,取得系统最高权限。
VUSec Lab说明,执行Rowhammer攻击需要存取闲置内存,因此必须先绕过处理器快取才
能到达DRAM,但此法并不适用于JavaScript,要以JavaScript展开攻击只能剔除快取,与
CPU的随机快取相较,GPU快取有更明确的行为,也更容易剔除快取 ,因此在GLitch攻击
中,他们以GPU取代CPU作为攻击跳板。
美国政府电脑紧急应变中心US-CERT则指出,GLitch攻击只在由CPU与GPU共享内存的平
台上才有效用,诸如智慧型手机或平板电脑等。
至于WebGL则是一个图像API,为浏览器的标准元件之一,主要提供图像密集应用的GPU加
速功能,但它的副作用是在GLitch攻击中,可协助骇客判断内存的快取分布。
GLitch攻击不但是全球首个将GPU应用在Rowhammer攻击的案例,也是首个以JavaScript就
可取得手机权限的攻击途径,且平均而言只要2分钟就能攻陷一支智慧型手机。
VUSec Lab是在执行Android 6.0.1的LG Nexus 5上并使用Firefox 57来示范攻击。不过,
GLitch攻击同样也适用于HTC One M8与LG G2等采用Snapdragon 800与801的行动装置上。
在VUSec Lab的通报下,Google与Mozilla皆已变更了Chrome及Firefox浏览器上的WebGL功
能以杜绝GLitch攻击。
GLitch攻击示范:
https://www.youtube.com/watch?v=YniqBaSK-Eg
https://www.ithome.com.tw/news/122928
备注: