描述
扩展描述
与不同的值反映区域的暴露可能导致敏感信息或系统妥协。
为了提高性能,可能需要重复的资源。高速缓冲存储器是一种常见的例子这一概念,使一个数据元素的“本地”副本的高速缓存内存。不幸的是,这速度改进有一个缺点,因为产品需要确保本地副本总是如实反映了原件。如果他们不同步,计算的结果不再是事实。
在硬件设计中,内存不是唯一的项目得到反映。还有许多其他实体得到反映,:寄存器,内存区域,并且,在某些情况下,甚至整个计算单元。例如,在多核处理器,如果所有内存访问每一个核心穿过一个内存管理单元(MMU)然后MMU将成为一个性能瓶颈。在这种情况下,复制本地mmu,只有一个子集的核心,而不是所有人可以解决性能问题。这些本地副本也称为“影子拷贝”或“镜像副本”。
如果原始资源从未改变,本地副本的同步永远不会是一个问题。然而,正本的值有时会改变。当正本变化时,镜像副本也必须改变,变化快。
shadow-copy-possibly-out-of-sync-with-original-copy的这种情况可能发生由于多个场景,包括以下:
- 正本中的值改变后,由于某种原因,原件不“更新”请求发送给它的影子复制。
- 正本中的值改变后,原件忠实地“更新”的请求发送给它的影子副本,但由于某些原因影子复制不“执行”这个更新请求。
- 正本中的值改变后,原件“更新”的请求发送给它的影子,和影子复制忠实地执行此更新请求。然而,在小时间原件有“新”的价值观和影子复制仍持有“旧”的价值观,攻击者可以利用旧值。然后它变成了一个攻击者之间的竞争条件,谁能达到目标的更新过程,影子复制第一,如果攻击者达到第一,攻击者获胜。
- 攻击者可能会“欺骗”更新请求发送到目标影子复制,假装这个更新请求来自原件。这个欺骗请求可能导致目标影子复制更新一些attacker-friendly值的值,而攻击者保持不变的原始副本。
- 假设一个情况的原件有系统恢复回原来的值,如果不听回来的影子复制这样的副本已经成功地完成了更新请求。在这种情况下,攻击可能发生如下:(1)原件可能发送一个更新请求;(2)备份更新;(3)影子复制发回成功完成消息;(4)通过一个单独的问题,攻击者能够拦截影子复制的完成消息。在这种情况下,原件认为更新不成功,因此它恢复到最初的值。现在有一种情况原件有“老”价值,和影子复制“新”的值。
的关系
常见的后果
这个表指定不同的个人相关后果的弱点。标识应用程序范围的安全领域侵犯,而影响了负面的技术影响,如果敌人成功利用这个弱点。可能提供的信息如何可能的具体结果预计将看到列表中相对于其它后果。例如,可能会有高可能性,缺点将被利用来实现一定的影响,但较低的可能性,它将被利用来实现不同的影响。
范围 |
影响 |
可能性 |
保密 完整性 可用性 访问控制 问责制 身份验证 授权 不可抵赖性
|
|
|
示范例子
示例1
假设一个处理器的内存管理单元(MMU)有5个其他影子MMU分配它的各种核心的工作负载。每个MMU的起始地址和结束地址访问内存。任何时候这个访问范围内变化(根据处理器的引导地位),主要的MMU的影子MMU发送更新消息。
假设互连结构不优先考虑这样的“更新”包比其他一般的流量包。这引入了竞争条件。如果攻击者可以用足够的信息,以便洪水目标的攻击数据包达到目标之前,新的访问范围更新,那么攻击者可以利用这个场景。
潜在的缓解措施
阶段:体系结构和设计
每当有多个不同物理副本相同的值的变化和过程来更新它们不是瞬时和原子,是不可能断言原始和影子副本将永远是同步的,总是会有一个时间当他们失去同步。为了减轻相应的风险,建议基本上是:
-
让这个不同步时间尽可能小,和
-
让更新过程尽可能的健壮。
|
脆弱性映射笔记
用法:允许
(CWE ID可以用来映射到现实世界的漏洞) |
原因:可接受的使用 |
理由是: 这CWE条目底部的抽象级别,这是一个首选的抽象级别映射到漏洞的根本原因。 |
评论: 仔细阅读这两个名称和描述,以确保此映射是一个适当的配合。不要试图“力”映射到底层基础/变体只是遵守这首选的抽象级别。 |
笔记
研究的差距
相关问题国家和缓存——创建、保存和更新,是一个巨大的空白CWE预计将在未来的版本中解决。并发和同步关系,错误的行为,和其他地区已经CWE的一些报道,尽管通常一直关注独立进程在同一操作系统——而不是在独立的系统,都是一个更大的系统的一个组成部分。
更多的信息是可用的,请编辑自定义过滤器或选择一个不同的过滤器。
|