SoC中哪些硬件层面的漏洞值得关注?

EDA/PCB 时间:2025-11-27来源:

硅安全传统上侧重于密码学,包括加固加密加速器和保护密钥存储。在系统芯片(SoC)设计中,这种方法不够。SoC将多个组件,如核心、内存和第三方IP块集成到一个芯片上。这种集成引入了硬件层面的漏洞,这些漏洞并非针对加密算法本身。

相反,这些威胁利用芯片的物理实现和架构结构。对于系统架构师和工程师来说,了解这些漏洞至关重要。那么,这些非密码风险究竟存在于哪里?这些担忧可分为三大类:侧信道攻击、故障注入攻击和架构隔离缺陷。

侧通道攻击

侧信道攻击(SCA)被动利用硬件在运行过程中产生的非预期信息泄漏。这种泄漏可能包括功耗、电磁辐射或时序的变化(CWE-1300)。

虽然许多已知的SCA针对高性能CPU,但资源受限的微控制器(MCU)也存在脆弱性。MCU可能存在利用内存总线仲裁和片上通信结构的时序侧信道。

该场景如图1所示。该攻击是一个三阶段过程,利用SoC组件观察受害者任务:

图1。对MCU的三相定时侧信道攻击。(图片来源:arXiv)

  1. 准备阶段:CPU上的恶意软件任务(攻击者)将外设(如DMA控制器或定时器)配置为观察工具。

  2. 记录阶段:上下文切换后,受信任的受害任务执行。当受阻者访问内存(3)时,会在共享互连上产生争用。配置后的外设(2)也会经历这种总线争用,导致其作出现细微延迟(例如延迟定时器的开始)。

  3. 检索阶段:攻击者任务重新控制,读取外设状态(4)(例如计时器值),并从测量到的延迟推断受害者的内存访问模式。

故障注入攻击

但是,如果攻击者想做的不仅仅是被动倾听呢?故障注入攻击(FIA)故意诱导硬件错误,以控计算、绕过安全检查或提取机密。

虽然常见的FIA漏洞涉及物理方法,如电压故障或电磁故障注入(CWE-1332),但较新的变体是软件控制故障注入。

例如,“V0LTpwn”攻击利用软件暴露的电源管理接口对物理核心进行降压。如图2所示,该攻击分为三个阶段进行:

图2。软件控制的故障注入攻击(如V0LTpwn)的工作流程。(图片来源:USENIX)

  1. 第一阶段(离线分析):攻击者对代表性芯片进行“电压分析”,以识别一个“可利用的电压窗口”,该窗口能诱发错误而不导致系统崩溃。

  2. 第二阶段(在线分析):攻击者对具体目标芯片进行分析,以找出最易出错的核心。

  3. 第三阶段(攻击):攻击者使用软件在受害者程序运行时触发“定时降压”事件。这会引发硬件故障并损害计算的完整性。

架构与隔离缺陷

即使单个组件安全,连接方式会带来哪些风险?这类漏洞源于多个IP核心(通常来自第三方供应商)集成在共享总线上。安全风险源自互联。

图3。典型的物联网SoC子系统在共享互联上集成多个IP核心。(图片来源:施普林格自然)

图3是基于ARM的物联网子系统的框图,展示了这一挑战。它展示了Cortex-M3处理器、多层AHB(高级高性能总线)互连,以及包括“非ARM IP”(如DMA和WiFi无线电)在内的多种IP。这种架构可能导致两个主要缺陷:

  1. 总线监听:连接到共享AHB互连的恶意或被攻破的IP(如WiFi无线电中的硬件木马)可以被动监控CPU、SRAM及其他外设之间传输的未加密数据。

  2. SoC资源隔离不当(CWE-1189):这是一种设计缺陷,指总线架构未能正确将资源在可信和不可信组件之间分离。如果互联不强制执行访问控制规则,WiFi IP可能会直接访问安全内存区域,绕过任何软件层权限。

总结

全面的SoC安全策略必须超越密码算法。它还必须考虑芯片物理实现和架构设计中的漏洞。这些问题包括通过侧信道的被动信息泄露、通过故障注入进行的主动作,以及由于共享总线上集成IP核心隔离不当导致的数据泄露。应对这些威胁需要一个全面的验证流程,验证整个硬件系统。

引用


关键词: SoC 硬件层面 漏洞

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版