cwe - 1318:缺少支持安全特性在芯片上的面料或公共汽车
描述
芯片上的面料或公共汽车不支持或不配置为支持特权分离或其他安全特性,例如访问控制。
扩展描述
某些芯片上的面料和公共汽车,特别是简单和低功耗的公交车,不支持安全特性。除了数据传输和处理的港口,一些面料和公共汽车没有任何接口将特权,不变的身份,或任何其他安全属性来自总线主控。同样的,他们没有专门的信号传输安全敏感数据从奴隶的主人,如为某些类型的交易完成。一些其他的芯片上的面料和巴士支持安全特性和定义特定的接口/信号传输安全属性从主到奴隶,反之亦然。然而,包括这些信号并不是强制性的,可以离开时应取消生成register-transfer-level (RTL)描述织物。这种面料或公交车不应该用于运输任何安全属性来自总线主控。一般来说,外围设备等安全资产不应连接到公共汽车之前的事务总线主控到达公共汽车,除非执行某种形式的访问控制在织物桥或其他中间模块。
的关系
模式的介绍
不同模式的引入提供了信息如何以及何时可以纳入这一弱点。生命周期的阶段识别点的介绍可能发生,而相关的报告提供了一个典型的场景介绍在给定的阶段。
常见的后果
这个表指定不同的个人相关后果的弱点。标识应用程序范围的安全领域侵犯,而影响了负面的技术影响,如果敌人成功利用这个弱点。可能提供的信息如何可能的具体结果预计将看到列表中相对于其它后果。例如,可能会有高可能性,缺点将被利用来实现一定的影响,但较低的可能性,它将被利用来实现不同的影响。
范围 |
影响 |
可能性 |
保密 完整性 访问控制 可用性
|
技术的影响:DoS:崩溃,退出或重新启动;读记忆;修改内存
|
媒介 |
示范例子
示例1
几个系统芯片(soc)使用Advanced-Microcontroller总线架构(AMBA) Advanced-Peripheral总线(APB)协议。APB是一个简单的、低功率总线和使用PPROT[2:0]位指示的安全状态总线主人;PPROT[0]表明特权,PPROT[1]表明安全/不安全的交易,和PPROT[2]表明指令/数据。假设没有SoC织物桥梁。一个奴隶,电源管理单元,包含存储寄存器过热而关机的限制。
APB总线是用于连接多个公共汽车主人,每个都有一个独特的和不可改变的硬件身份,几个奴隶。CPU支持8潜在身份(每个都有不同的特权级别),16种外向交易可以与每个支持的特权级别——8读事务和8写事务支持的特权级别。
因为APB PPROT只能支持多达8事务类型,访问控制检查不能进行交易的奴隶在正确的粒度对所有可能的交易类型。因此,潜在的CPU上运行用户代码可以恶意腐败thermal-shutdown-configuration寄存器燃烧设备,导致永久拒绝服务。
在这种情况下,只有外围设备需要访问保护从8 16个可能的事务类型可以连接到APB总线。外围设备需要保护从剩下的8事务类型可以连接到一个不同的APB总线。或者,一座桥可以实现来处理这样复杂的场景之前转发流量APB总线。
示例2
Open-Core-Protocol ((OCP)织物支持两种配置,width-optional信号传输安全属性:MReqInfo SRespInfo。MReqInfo用于传输安全属性从总线主控奴隶,和SRespInfo用于交通安全属性从总线主控的奴隶。一个SoC使用(OCP连接几个总线主人,每个都有一个独特的和不可改变的硬件身份,几个奴隶。公共汽车主人之一,CPU、报告特权级别(用户或超级用户)除了独特的身份。一个奴隶,电源管理单元,包含存储寄存器过热而关机的限制。
自MReqInfo SRespInfo并不是强制性的,这些信号不配置当autogenerating RTL (OCP织物。因此,织物不能用于传输安全属性从总线主人的奴隶。
恶意代码在CPU上运行-特权级别可以腐败thermal-shutdown-configuration寄存器燃烧设备,造成永久性的拒绝服务。
为了解决这个问题,配置织物包括MReqInfo SRespInfo信号和使用这些交通安全标识和特权级别执行访问控制检查奴隶接口。
潜在的缓解措施
阶段:体系结构和设计
如果面料不支持安全特性,实现安全检查之间的一座桥梁或任何组件主和织物。另外,连接所有织物奴隶没有任何安全资产一个这样的织物和连接外围设备与安全资产来支持安全特性的不同的织物。 |
检测方法
体系结构或设计审查
检查面料规范并确保它包含信号传输安全敏感信号。
|
人工静态分析源代码
缺乏安全特性也可以通过织物RTL的手工RTL审查确认。
|
引用
|