AMD 旧款处理器被曝内存地址映射漏洞,可攻击硬件保护区域

发布于

IT之家 8 月 14 日消息,安全研究人员 Christopher Domas 公布了一个针对 AMD Family 16h 处理器的攻击方法,该方法通过操纵内存控制器的地址转换逻辑,可读取甚至改写处理器中受硬件保护的敏感内存区域。相关研究成果及工具代码今日以“Skitter Creek Bath Salts”为名在 GitHub 上开源。

> **AMD Family 16h** 是 AMD 于 2013 年起推出的一系列低功耗、入门级微处理器家族,主打低功耗笔记本、平板电脑、微型服务器以及嵌入式,并且全部产品均为集成了 CPU 和 GPU 的 APU。该家族最著名的应用是作为第八代游戏主机(PS4 和 Xbox One)的核心定制 SoC。

![AMD Family 16h](http://pic.zhso.org/2026/08/14/6d4542abc90e.jpg)

该攻击并非传统的软件漏洞或固件缺陷,而是作用于内存寻址的最底层。在物理地址被发送到 DRAM 芯片前,内存控制器会将其转换为通道、列、行等具体坐标。

Domas 发现,在 AMD Family 16h 处理器上,控制“Bank Swizzling”(存储体交错)模式的一个寄存器位可在运行时被切换且不会被锁定。

通过翻转这一位,攻击者可以临时改变物理地址到 DRAM 单元的映射,创建一个“别名”(Alias)地址。利用此别名,系统在不知情的情况下,可以通过一个看似合法的地址访问本应受保护的 DRAM 区域。完成访问后,再将寄存器恢复到原始状态,整个过程几乎不留痕迹。

该攻击可触及多个关键的硬件保护区域:

- **平台安全处理器(PSP)**:PSP 是 AMD 处理器中一个独立的 ARM 核心,负责管理安全启动、密钥等。攻击者可提取其私有内存中的数据,例如 fTPM(固件可信平台模块)用于签名的 RSA 模幂运算代码。
- **系统管理模式(SMM)**:SMM 是 CPU 中权限最高的执行模式(Ring -2),其内存(SMRAM)对操作系统和内核均不可见。攻击者可读取 SMM 的入口代码,理论上可进一步破坏系统固件的完整性。
- **C6 电源状态(C6 DRAM)**:当 CPU 核心进入深度休眠(C6 状态)时,其完整的架构上下文会被保存在 DRAM 中。攻击者可读取这些数据,获取如 CR3 寄存器(页表根)、APIC 基址等敏感信息。
- **CPU 微码(Microcode)**:CPU 从 C6 状态唤醒时,会从 DRAM 中重载微码补丁。攻击者可以读取甚至篡改这份在 DRAM 中的微码副本。

Domas 明确表示,该攻击方法已在 AMD Family 16h 处理器上开发并测试成功。该系列包括较老的 Jaguar 和 Puma 架构 APU,如 Kabini、Temash、Beema 和 Mullins。此漏洞不影响现代的锐龙(Zen 架构及以后)处理器,后者属于 Family 17h 或更新家族。

AMD 已通过安全公告(AMD-SB-7068)确认了此问题。AMD 表示,Family 15h(推土机架构及其改良版)和 16h 处理器中控制内存地址转换的配置寄存器可能无法被锁定。由于这些老旧的处理器家族已停止安全支持,AMD 将不会为其发布修复补丁。

值得注意的是,利用该漏洞需要攻击者已获得系统的 root 或管理员权限。因此,它无法作为初始入侵手段,但构成了严重的权限提升和内部威胁。

Domas 强调,虽然现代 AMD、Intel、ARM 和 RISC-V 处理器的内存控制器也存在类似的地址转换机制,但这并不意味着它们有同样的漏洞,相关研究才刚刚开始。

---

原文链接:[点击查看](https://www.ithome.com/0/989/793.htm)

评论

暂无评论。

0.064441s