去年 3 月 NCC Group 公布的编号为 CVE-2018-11976 的高通芯片漏洞,高通已于本月正式修补。

 

据 NCC Group 之前报道,这一编号为 CVE-2018-11976 的漏洞可窃取高通芯片内所储存的机密信息,并波及采用相关芯片的 Android 设备。它被高通列为重大漏洞,影响超过 40 款的高通芯片,可能波及多达数十亿台的 Android 手机及设备。

 

根据高通的安全公告,CVE-2018-11976 涉及高通芯片安全执行环境(Qualcomm Secure Execution Environment,QSEE)的椭圆曲线数码签章算法(Elliptic Curve Digital Signature Algorithm,ECDSA),漏洞将允许黑客推测出存放在 QSEE 中、以 ECDSA 加密的 224 位与 256 位的金钥,将会让存放在安全环境的私钥外泄至一般环境。

 

 

QSEE 源自于 ARM 的 TrustZone 设计,TrustZone 为系统单芯片的安全核心,它建立了一个隔离的安全环境来供可靠软件与机密信息使用,而其它软件则只能在一般环境中执行,QSEE 即是高通根据 TrustZone 所打造的安全执行环境。

 

NCC Group 资深安全顾问 Keegan Ryan 指出,诸如 TrustZone 或 QSEE 等安全执行环境的设计,被许多移动设备与嵌入式设备广泛采用,但是就算安全环境与一般环境使用的是不同的硬件资源、软件或信息,但它们依然建立在同样的微架构上,于是他们打造了一些工具来监控 QSEE 的信息流与程序流,并找出高通导入 ECDSA 的安全漏洞,成功地从高通芯片上恢复 256 位的加密私钥。

 

Ryan 解释,大多数的 ECDSA 签章是在处理随机数值的乘法回圈,假设黑客能够恢复这个随机数值的少数位,就能利用既有的技术来恢复完整的私钥,他们发现有两个区域可外泄该随机数值的信息,尽管这两个区域都含有对抗旁路攻击的机制,不过他们绕过了这些限制,找出了该数值的部份位,而且成功恢复了 Nexus 5X 手机上所存放的 256 位私钥。

 

不过值得庆幸的是,目前高通已经在本月对这一漏洞进行了修补。