欧博手机版

欢迎进入欧博手机版(www.aLLbetgame.us),欧博官网是欧博集团的官方网站。欧博官网开放Allbet注册、Allbe代理、Allbet电脑客户端、Allbet手机版下载等业务。

,

研究职员在基于 Qualcomm IPQ40xx 的装备上的 QSEE、Qualcomm 可信执行环境 (TEE) 中发现了多个要害软件破绽(请参阅帖子 ,1 和帖子 ,2 )。研究职员行使这些破绽来禁用 QSEE 执行的平安局限检查,以便以最高权限执行随便代码(参见帖子 ,4 )。由于这些破绽是软件破绽,在研究职员认真任地披露后,高通很容易修复。

在本文研究职员决议剖析 Qualcomm IPQ40xx 系列芯片对电磁故障注入 (EMFI) 的恢复能力,研究职员使用了 Linksys EA8300 WiFi 路由器(见帖子 ,2 )。

研究职员完全意识到 FI 攻击通常超出了 TEE 威胁模子的局限。现实上,ARM 在他们的文档中异常清晰地说明晰这一点。然则,TEE 也用于将 FI 攻击视为合理威胁的装备。因此,纵然 FI 攻击超出了 ARM 的 TEE 局限,它们也可能不适用于特定装备。此类装备上的 TEE 可用于珍爱攻击者感兴趣的资产,使其成为异常有趣的攻击面。每当底层平台(即硬件)容易受到 FI 攻击时,TEE 的平安性就会受到威胁。

早先,你可能以为 ARM TrustZone 硬件原语(例如 NS 位、TrustZone 控制器等)是 FI 攻击最有趣的目的。然则,研究职员决议以执行 QSEE 软件的处置器为目的,以证实其他方式也异常有用。

可信执行环境(TEE)是Global Platform(GP)提出的看法。针对移动装备的开放环境,平安问题也越来越受到关注,不仅仅是终端用户,还包罗服务提供者,移动运营商,以及芯片厂商。TEE是与装备上的Rich OS(通常是Android等)并存的运行环境,而且给Rich OS提供平安服务。它具有其自身的执行空间,比Rich OS的平安级别更高,然则比起平安元素(SE,通常是智能卡)的平安性要低一些。然则TEE能够知足大多数应用的平安需求。从成本上看,TEE提供了平安和成本的平衡。

TEE的位置,TEE是运行在装备中的,提供介于通俗RichOS和SE(智能卡)之间的平安性的框架。当前的许多平安架构照样基于Rich OS + SE的方式,实在这在利便水平和成本上都不能提供“刚恰好”的契合。由于某些小额的支付,DRM,企业VPN等,所需要的平安珍爱强度并不高,还不需要一个单独的SE来珍爱,然则又不能直接放在Rich OS中,由于后者的开放性使其很容易被攻击。以是对于这类应用,TEE则提供了合适的珍爱强度,而且平衡了成本和易开发性。

EMFI

研究职员使用 Riscure 的 EMFI 工具在芯片中注入 EM 故障。该工具通过线圈驱动高压以发生EMFI。这允许研究职员由于芯片电路内的涡流而在晶体管级引入故障。 EMFI 的看法如下图所示。

研究职员的设置图如下所示。他们使用了 Riscure Spider、Riscure EMFI Probe 和 Riscure XYZ 平台。此外,研究职员使用固态继电器来控制目的的外部电源。他们使用 Riscure 的 Inspector FI Python 框架控制所有硬件,以便完全自动地控制攻击参数(即位置、时间和glitch power)。

研究职员通过将 EMFI直接放置在芯片外面上来执行 EMFI 攻击。为了做到这一点,研究职员打开了目的并移除了芯片的散热片,他们没有举行其他物理(侵入性)修改。芯片的现实图片如下所示。

研究职员经常被问到是否真的需要研究职员由 Riscure 制造的实验室级工具来执行研究职员的攻击。他们信托绝对有可能使用更容易获得的工具(如 NewAE 的 ChipShouter)或构建你自己的工具来执行相同类型的攻击。然则,研究职员使用的工具可以更轻松地识别和重现攻击。只管云云,若是你正在使用其他工具重现研究职员的研究,研究职员很愿意你联系他。

只要有可能,研究职员都喜欢从 FI 功效测试最先,以确定目的是否易受攻击。研究职员实现了形貌代码,如下所示,作为一个U-Boot自力应用程序。这个功效测试的目的是在半控制的环境中确定优越的故障参数(例如位置和功率)。通过重复目的指令(即添加指令),研究职员增添了乐成的时机。

研究职员使用目的的 GPIO 引脚作为触发器来计时功效测试。这允许他们在执行添加指令时准确地注入故障。若是打印在串行接口上的效果计数器值与预期差异,研究职员便乐成地修改了软件的预期行为。

在芯片外面举行了约莫 20000 次实验后,研究职员考察到了差其余输出,其中一些如下所示。最有趣的固然是返回修改后的计数器值的实验,这解释目的易受攻击。

研究职员凭证实验的分类绘制实验图,以确定 EMFI的最佳位置,如下所示。有趣的是,研究职员考察到所有乐成的实验都发生在芯片外面的特定区域。

只管研究职员确定目的容易受到 EMFI 的影响,但研究职员还不知道研究职员是否真的可以改变 QSEE 软件自己,由于到现在为止研究职员只针对 U-Boot 代码。然而,由于 U-Boot 和 QSEE 都由统一个处置器执行,只是使用差其余 NS 位,研究职员信托研究职员确定的易受攻击的位置也会在 QSEE 软件中发生故障。因此,研究职员将探头放在研究职员考察到乐成故障的位置之一。这允许研究职员在不移动探头的情形下定位 QSEE 软件,有用地从故障参数搜索空间中删除空间参数。

禁用平安局限

如前所述,研究职员决议以 QSEE 软件为目的,而不是底层的 ARM TrustZone 硬件原语(例如 NS-bit、TZASC)。

研究职员从之前举行的QSEE软件剖析中领会到,种种平安措施完全是由软件实现的。例如,这包罗由SMC处置程序例程对从富执行环境(REE)收到的参数执行的平安局限检查。

研究职员决议以不包罗任何软件破绽的SMC处置程序为目的,确定的候选工具之一是tzbsp_fver_get_version,其反编译如下所示。

2022世界杯资讯

www.x2w99.com)实时更新发布最新最快最有效的2022世界杯资讯资讯。

is_ree_range函数检查a2和a2 +3是否指向非平安内存。这个参数是从REE转达过来的,研究职员假设这个参数在攻击者的控制之下。简朴地说,这个函数验证从 REE 提供的缓冲区是否与平安内存重叠。若是是,tzbsp_fver_get_version 将立刻返回 0xFFFFFFEE。

使用 EM 故障,研究职员的目的是绕过 is_ree_range 函数强制执行的限制。这允许研究职员执行 tzbsp_fver_get_version 的其余部门,以便将 NULL 写入随便地址(包罗平安内存)。

研究职员使用 U-Boot 自力应用程序与来自 REE 的 tzbsp_fver_get_version 举行通讯,如下所示。

研究职员使用 GPIO 信号作为触发器来准确计时 tzbsp_fver_get_version 确切执行的时间。 EM 故障正幸亏触发器设置为高电平和设置低电平之间注入,约莫需要 5.875 微秒(见下图)。

在上面的代码示例中,通过向0x87EAB204写入NULL,研究职员禁用了平安局限表中界说的一个平安局限。关于它是若何事情的更多细节将在第4篇文章中详细注释。这篇文章足以证实只要熟悉到乐成的攻击将禁用每个SMC处置程序例程的平安局限检查所执行的限制就足够了。

研究职员使用相同的目的地址第二次执行tzbsp_fver_get_version,没有注入任何以障,以便验证攻击是否乐成。若是平安局限被乐成禁用,is_ree_range将以为从a2中的REE流传的任何地址都是有用的,包罗平安内存地址。对平安内存地址的写入也将乐成完成。

此外,在代码的最后一行,研究职员从 REE 中作废引用平安局限标志字段。这样做是为了验证恶意 TEE 写入是否确实发生。应该注重的是,由于目的的错误设置,研究职员能够从 REE 中读取平安内存。

通常情形下这是不能能的,或者基本不会发生,否则,QSEE 处置的任何隐秘都市露出给 REE。在研究职员的设置中,研究职员只使用这个错误设置来再次验证实验是否乐成。

研究职员期望至少有以下类型的效果:预期的、乐成的、处置器异常和复位/静音实验。下表显示了研究职员期望为每个效果吸收的串行接口输出。

研究职员举行了约莫 30万次实验,在整个攻击窗口内注入了 EM 故障。研究职员给每个实验一个介于 10% 和 100% 之间的随机功效。 EMFI自己牢靠在研究职员之前确定的芯片外面上的一个易受攻击的位置。整个流动连续了约莫 12 个小时。研究职员绘制了如下图所示的所有实验。

研究职员将整个历程总结如下:

在区域1中,研究职员考察到许多处置器异常。当U-Boot代码被执行时,提醒故障被注入。换句话说,研究职员过早地注入了故障。

在区域2中,研究职员考察到许多乐成的实验。这解释现在正是研究职员要注入故障的时刻。而且,这证实晰tzbsp_fver_get_version就是在此时执行的。

在区域3中,研究职员考察到许多处置器异常。当U-Boot代码被执行时,提醒故障被注入。换句话说,研究职员注入故障太晚了。

乐成率相当低,研究职员考察到预期反映的大多数实验都是不乐成的。只管云云,研究职员考察到一个0.05%的乐成率,在研究职员的测试速率下,这意味着约莫每5分钟就有一个乐成的实验。

然则,若是研究职员将故障参数(即故障延迟和glitch power)设置为乐成实验的参数,则会考察到 5% 的乐成率,即约莫每20秒就有一次乐成实验,这解释绕过局限检查的再现性异常高。这足以证实,研究职员能够通过使用 EM 故障绕过任何设置的局限检查。

若何实现代码执行

研究职员能够在禁用平安局限后实现代码执行,详细历程请点此(https://raelize.com/blog/qualcomm-ipq40xx-achieving-qsee-code-execution/)。

总结

研究职员证实晰 Qualcomm IPQ40xx 系列芯片容易受到 EMFI 的影响,他们行使此破绽绕过 QSEE 执行的平安局限检查,这允许研究职员将受限制的值写入随便地址(包罗平安内存)。

攻击可以使用研究职员的FIRM举行形貌,如下图所示。一旦找到最佳的故障参数,攻击可以每20秒重复一次,这是一个异常高的乐成率。

研究职员的目的是执行QSEE软件的处置器,而不是ARM TrustZone硬件原语。这意味着加固这些硬件原语不足以珍爱装备免受FI攻击,研究职员以为强化处置器自己才是基本。

软件破绽的影响通常比需要物理接见的(硬件)攻击大得多。例如,大规模行使FI攻击是不能能的。只管云云,研究职员要强调的是,这些类型的攻击不应被视为无害的威胁。例如,它们经常被用来获得对平安代码或数据的接见,以便更容易地行使软件破绽。

本文翻译自:https://raelize.com/blog/qualcomm-ipq40xx-breaking-into-qsee-using-fault-injection/ Allbet声明:该文看法仅代表作者自己,与www.allbetgame.us无关。转载请注明:2022世界杯资讯(www.x2w99.com):高通 TEE 可信执行环境(QSEE)破绽的行使剖析
发布评论

分享到:

新2最新网址(www.122381.com):《起义者》大下场:朱怡贞差点牺牲,王世安被击毙,孟安南被锤死
你是第一个吃螃蟹的人
发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。