描述
设备丢失或错误地实现电路和传感器检测和减轻跳过强调安全的CPU指令时发生。
扩展描述
硬件的操作条件变化的方式可能导致意想不到的行为发生,包括CPU跳过重要的安全指示。一般来说,这可能发生由于电子干扰或当其预期之外的设备运行条件。
在实践中,应用程序代码可能包含安全敏感的条件分支(例如,接受或拒绝用户提供的密码)。这些条件分支通常由一个单一的条件实现分支指令程序的二进制,如果跳过,可能导致有效抛——即分支条件。,导致错误的安全敏感的分支。这个影响过程,如固件的验证,密码验证,和其他安全敏感决策点。
攻击者可以使用故障注入技术来改变硬件的操作条件,强调安全的指令更频繁地跳过或更可靠的比在“自然”环境。
的关系
模式的介绍
不同模式的引入提供了信息如何以及何时可以纳入这一弱点。生命周期的阶段识别点的介绍可能发生,而相关的报告提供了一个典型的场景介绍在给定的阶段。
阶段 |
请注意 |
架构和设计 |
未能设计适当的对策来常见的故障注入技术可以体现这个弱点。 |
实现 |
这个弱点可能出现如果硬件设计不正确实现对策以防止故障注入。 |
常见的后果
这个表指定不同的个人相关后果的弱点。标识应用程序范围的安全领域侵犯,而影响了负面的技术影响,如果敌人成功利用这个弱点。可能提供的信息如何可能的具体结果预计将看到列表中相对于其它后果。例如,可能会有高可能性,缺点将被利用来实现一定的影响,但较低的可能性,它将被利用来实现不同的影响。
范围 |
影响 |
可能性 |
保密 完整性 身份验证
|
技术的影响:旁路保护机制;改变执行逻辑;意想不到的状态
根据上下文,指令不可以有一个广泛的后果相关的通用绕过安全关键代码。 |
高 |
示范例子
示例1
智能卡包含身份验证凭证,作为授权进入大楼。凭证只访问时提出了一个正确的销卡。
卡发出的凭证注入电压异常时,设备的电源线在特定时间后提供一个不正确的销卡,导致内部程序接受不正确的销。
有几种方法这一弱点可能是固定的。
- 添加一个内部过滤器或内部电源与设备上的电源销系列
- 添加传感电路复位设备如果检测到宽容的条件
- 添加额外的执行传感电路监控执行订单异常和中止或重置装置在故障条件下的动作
观察到的例子
参考 |
描述 |
|
故障注入攻击绕过验证模式,可能允许任意代码执行。 |
潜在的缓解措施
阶段:体系结构和设计
如果输入,设计策略,以确保安全失败Vcc等修改的可接受的范围。 |
阶段:体系结构和设计
设计策略,以确保安全的行为如果指令尝试被忽略。 |
阶段:体系结构和设计
识别关键任务的秘密,应该擦如果发现断层,和设计一种机制来删除。 |
实施阶段:
添加冗余通过执行一个操作多次,在空间或时间,执行多数表决。此外,让有条件的指令时间不可预测的。 |
实施阶段:
使用冗余操作或金丝雀发现和应对的缺点。 |
实施阶段:
确保在实践中应对故障足够强大。例如,一个低功率检测机制,需要50个时钟周期触发低电压可能是一个安全机制不足,如果指令计数器已经没有其他CPU活动发生发展。 |
弱点Ordinalities
Ordinality |
描述 |
主 |
(其他弱点的弱点存在独立的) |
检测方法
自动静态分析
这个弱点可以使用自动静态分析发现一旦开发者表示的代码路径保护至关重要。
|
模拟/仿真
这个弱点可以发现使用自动化的动态分析。两个仿真的CPU指令跳过,以及CPU的RTL模拟IP,可以显示部分的代码由于指令跳过敏感的缺点。
|
手动分析
这个弱点可以发现使用手册(静态)分析。分析师对高级安全目标匹配的代码。这种方法不如模拟精确,特别是分析是在更高级别完成的语言而不是在汇编级。
|
功能区域
引用
|