ZHCAEP3 November 2024 F29H850TU , F29H859TU-Q1
为嵌入式系统实施网络安全策略的一个重要方面是确定系统中的漏洞,列举潜在的攻击类型和场景以及实施网络安全控制来减轻这些攻击。嵌入式控制系统往往更容易受到需要对器件进行本地或物理访问的攻击技术的攻击。其中包括与调试端口的连接、故障注入攻击(例如电源或时钟干扰)和其他侧通道攻击。可靠的嵌入式安全实施可识别这些不同的攻击情形并实施应对措施以减轻这些攻击。
原则上,故障注入攻击会尝试通过在器件的电源电压或系统时钟信号中引入临时异常来重定向 CPU 执行。例如,每个器件数据表都包括电源轨(例如内核、I/O 和模拟)的额定工作电压范围以及工作温度范围。这意味着器件被设计为可在这些电压和温度范围内正确运行并满足所有时序要求;在指定范围之外运行器件可能会导致未指定的行为。在实践中,违反这些规格通常会导致与时序相关的故障:欠压状态会导致违反设置时间,过压状态会导致违反保持时间。或者,可以使用可访问的输入时钟信号(如晶体振荡器输入引脚)在关键时间点直接注入时序故障。定时故障可能会导致在固件中的关键安全决策点跳过指令或重定向执行,从而导致未经授权的访问或暴露嵌入式机密。获取用于执行所需时序分析以成功执行故障注入攻击的工具越来越容易。针对这些类型攻击的对策可能包括内部电压和时钟频率监控电路。
为了防止故障注入攻击,即时检测单位或双位故障的能力是一种很有价值的工具。纠错码逻辑 (ECC) 就是此类保护机制的示例,能够自动纠正 single-bit 故障并检测存储器或总线上的双位故障。该机制使用预先计算的代码(通常随每个数据字一同写入存储器)而运行。ECC 通常用于功能安全环境,但也可用作安全对策,使系统拒绝注入故障或停止执行并发送错误信号进行响应。在 TI 的 AM26x 微控制器中,所有 ECC 保护适用于所有片上存储器和高速缓存,也适用于各种外设子系统和互连。F29x 微控制器具有直接内置于 C29 CPU 和器件互连中的 ECC 保护,在应用程序运行时针对所有存储器和外设的代码和数据故障提供强大的端到端保护。