CWE

普遍的弱点

社区开发的软件和硬件弱点类型清单

2021 CWE最重要的硬件弱点
CWE前25个最危险的弱点
>CWE列表> cwe-单个字典定义(4.10)
ID

CWE-1262:注册接口的不正确访问控制

弱点ID:1262
抽象:根据
结构:简单的
查看自定义信息:
+描述
该产品使用内存映射的I/O寄存器,该寄存器充当软件的硬件功能的接口,但是对这些寄存器的访问控制不当。
+扩展描述

软件通常通过内存映射的寄存器接口访问系统芯片(SOC)或其他设备中的外围设备。恶意软件可以篡改任何可直接或间接通过寄存器接口访问的安全性硬件数据,这可能导致机密性和完整性的丧失。

+关系
部分帮助该表显示了与该弱点相关的弱点和高级类别。这些关系定义为childof,parentof,ementof,并深入了解可能存在于较高和较低抽象水平的类似项目。此外,定义了诸如Peerof和Canalsobe之类的关系,以显示用户可能想要探索的类似弱点。
+与观点“研究概念”相关(CWE-1000)
自然 类型 ID 姓名
Childof 支柱支柱 - 弱点是最抽象的弱点类型,代表了与之相关的所有类别/基础/变体弱点的主题。从技术上讲,柱子与类别不同,因为在技术上仍然是一种描述错误的弱点,而类别代表用于分组相关事物的常见特征。 284 不当访问控制
部分帮助该表显示了与该弱点相关的弱点和高级类别。这些关系定义为childof,parentof,ementof,并深入了解可能存在于较高和较低抽象水平的类似项目。此外,定义了诸如Peerof和Canalsobe之类的关系,以显示用户可能想要探索的类似弱点。
+与视图“硬件设计”相关(CWE-1194)
自然 类型 ID 姓名
成员 类别类别 - 包含共享共同特征的其他条目的CWE条目。 1198 特权分离和访问控制问题
+介绍模式
部分帮助引言的不同模式提供了有关如何以及何时引入这种弱点的信息。该阶段识别可能发生介绍的生命周期中的一个点,而音符提供了与给定阶段中引言有关的典型情况。
阶段 笔记
建筑和设计 如果寄存器接口设计无法充分保护硬件资产免受软件的影响,则可以利用这种弱点。
执行 访问控制策略的误解可能会无意中允许通过寄存器接口访问硬件资产。
+适用的平台
部分帮助该清单显示了可能出现的弱点的可能区域。这些可能适用于特定的命名语言,操作系统,体系结构,范式,技术或一类此类平台。该平台与给定弱点出现在该实例的频率一起列出。

语言

班级:不是特定语言的(不确定的患病率)

操作系统

班级:不是特定于操作系统的(不确定的患病率)

体系结构

班级:不是特定于建筑的(不确定的患病率)

技术

班级:不是针对技术的(不确定的患病率)

+常见后果
部分帮助该表指定与弱点相关的不同个人后果。该范围确定了违反的应用程序安全区域,而影响描述了如果对手成功利用这一弱点,就会产生负面的技术影响。其可能性提供了有关预期相对于列表中其他后果的特定后果的可能性的信息。例如,可能会利用弱点来实现一定的影响,但很可能会利用它来实现不同的影响。
范围 影响 可能性
保密
正直

技术影响:阅读记忆;阅读应用程序数据;修改内存;修改应用程序数据;获得特权或假定身份;旁路保护机制;意外状态;更改执行逻辑

如果软件可以通过寄存器接口读取受保护的信息,则可以违反硬件资产的机密性。存储安全状态,设置和其他关键安全数据的寄存器可能会因软件而无需正确实施的保护而易碎。
+示例的例子

示例1

寄存器接口可提供软件访问硬件功能。该功能是攻击表面。该攻击表面可用于通过寄存器接口在系统上运行不受信任的代码。例如,加密加速器需要一种软件的机制来选择操作模式,并提供要加密或解密的授权或密文数据以及其他功能。该功能通常是通过寄存器提供的。

(不良代码)
可以通过软件访问加密加速器内部寄存器中存储的加密密钥材料。
(好代码)
存储在寄存器中的关键材料绝对不能被软件访问。即使软件可以提供钥匙,也应禁用所有软件的读取路径。
+观察到的例子
参考 描述
虚拟化产品不限制硬件中对调试和其他处理器寄存器的访问,从而允许主机或访客操作系统崩溃
虚拟化产品中的虚拟中断控制器允许通过将某个无效的值写入寄存器来崩溃,这会触发致命错误,而不是返回错误代码
驾驶员公开对模型特定寄存器(MSR)寄存器的访问,允许管理员特权。
虚拟化产品不限制对PCI命令寄存器的访问,从而允许主机崩溃。
+潜在的缓解

阶段:建筑和设计

设计适当的策略,用于从软件中访问硬件。

阶段:实施

确保根据指定的设计实施用于登记的访问控制策略。
+弱点
条件 描述
基本的
(弱点独立于其他弱点的地方)
+检测方法

手动分析

这在实施开始之前适用于体系结构阶段。确保为整个内存图指定访问策略。手动分析可能无法确保实现正确。

有效性:中等

手动分析

控制硬件的寄存器应实现访问控制。可以手动检查此访问控件以进行正确的实现。要检查的项目包括如何设置受信任的各方,如何验证受信任的各方,如何访问验证等。手动分析的有效性将根据构建界面的复杂性而有所不同。

有效性:中等

仿真 /仿真

功能模拟适用于实施阶段。必须为内存映射寄存器创建和执行测试柜,以验证遵守访问控制策略的遵守。此方法可能是有效的,因为需要在设计上进行功能验证,并且将包括对该弱点的验证。在测试期间,可能会覆盖整个内存空间。

有效性:中等

正式验证

正式验证适用于实施阶段。需要创建断言,以捕获非法注册访问方案并证明它们不会发生。正式方法是详尽的,可能非常有效,但是为大型设计创建案例可能是复杂且困难的。

有效性:高

自动分析

信息流跟踪可以在实施阶段适用。安全敏感数据(资产)(例如,存储在寄存器中)会随着时间的推移而自动跟踪,以验证数据并未到达违反内存映射访问策略的非法目的地。与仿真和仿真一起使用时,此方法可能非常有效,因为检测违规行为不依赖于特定的方案或数据值。此方法确实依赖于仿真和仿真,因此必须存在测试柜才能使用此方法。

有效性:高

建筑或设计评论

手动文档审查系统内存图,注册规范以及与访问通过内存映射寄存器暴露的安全性相关功能相关的权限。

有效性:中等

模糊

执行渗透测试(手动或用模糊性进行半自动化)来验证访问控制机制,例如内存保护单元或芯片上的总线防火墙设置,可以充分保护关键的硬件寄存器免受软件访问的影响。

有效性:中等

+内容历史记录
+提交
提交日期 提交者 组织
2020-05-08 妮可·弗恩(Nicole Fern) Tortuga逻辑
+贡献
贡献日期 贡献者 组织
2021-10-11 Anders Nordstrom,Alric Althoff Tortuga逻辑
提供了检测方法和观察的示例
2021-10-12 妮可·弗恩(Nicole Fern) riscure
提供的检测方法
+修改
修改日期 修饰符 组织
2020-08-20 CWE内容团队 MITER
更新的common_cessexquences,explyative_examples,Description,Vaintenance_notes,modes_of_introduction,enetigal_mitigations,Ressect_attack_patterns
2021-10-28 CWE内容团队 MITER
更新的描述,detection_factor,名称,观察_examples,势_METIGATIONS,fealness_ordinalities
2022-04-28 CWE内容团队 MITER
更新相关的_attack_patterns
+先前的输入名称
改变日期 先前的输入名称
2021-10-28 注册接口允许软件访问敏感数据或安全设置
提供更多信息 - 请选择其他过滤器。
页面最后更新:2023年1月31日