Processor vulnerability
CVE-2022-23829
Weaknesses in AMD's SPI protection let ring 0 code get around the SMM protection of the flash ROM that holds the firmware.
- Name
- SPI lock bypass
- Vulnerability
- AMD AGESA, SMM and BIOS firmware
- Kind
- Firmware
- CVE published
- 2024-06-18 CVE record
- Advisories
- AMD-SB-1041
The flash chip that holds the BIOS is meant to be writable only from
System Management Mode once the platform has booted; AMD’s
processors carry features that lock it. Oracle’s Hugo Magalhaes and
Volodymyr Pikhur found weaknesses in those features that let kernel
code bypass the SMM ROM protection, and with it change the firmware.
The bulletin names the first three EPYC generations, Ryzen and
Threadripper from the 3000 series to the 7000 desktop series, and
the embedded families, and leaves the fix to board makers’ BIOS
updates.What the sources say of each microarchitecture.
Affected processors
5 of the 5 microarchitectures listed are affected in all or some of their models.
| Microarchitecture | Status | Detail | Source |
|---|---|---|---|
| Zen | Affected | EPYC 7001, Athlon 3000 mobile, EPYC Embedded 3000, Ryzen Embedded R1000 and V1000 | amd.com |
| Zen+ | Affected | Ryzen Embedded R2000 | amd.com |
| Zen 2 | Affected | EPYC 7002, Ryzen 3000 desktop, Ryzen 4000, EPYC Embedded 7002, Ryzen Embedded V2000 | amd.com |
| Zen 3 | Affected | EPYC 7003, Ryzen 5000, Ryzen 6000, Threadripper PRO 5000 WX, EPYC Embedded 7003, Ryzen Embedded 5000 and V3000 | amd.com |
| Zen 4 | Affected | Ryzen 7000 desktop | amd.com |
Mitigations
- Firmware: Platform BIOS changes, from the board maker. Source.
Related CVEs
- CVE-2020-12890 SMM callout in AGESA
- CVE-2020-12954 Chipset option bypasses SPI ROM protection
- CVE-2021-26316 BIOS communication buffer
- CVE-2021-26317 SMM protocol not verified
- CVE-2021-26384 SMI trigger data
- CVE-2021-26388 BIOS directory search
- CVE-2021-39298 SMM interrupt handler
- CVE-2022-23820 SMM communication buffer
- CVE-2022-23821 SPI ROM writes through SMM
- CVE-2023-20555 CpmDisplayFeatureSmm bit overwrite
- CVE-2023-20558 AmdCpmOemSmm control flow
- CVE-2023-20559 AmdCpmGpioInitSmm control flow
- CVE-2023-20563 SMM code protections
- CVE-2023-20565 SMM code protections (second CVE)
- CVE-2023-20571 SMM race with CVE-2018-8897
- CVE-2023-20576 AGESA data authenticity
- CVE-2023-20577 SMM module heap overflow
- CVE-2023-20578 SMM communication buffer race
- CVE-2023-20579 SPI protection bypass from ring 0
- CVE-2023-20587 SPI flash through SMM
- CVE-2023-20594 DXE driver variables (1)
- CVE-2023-20596 SMM Supervisor initialization
- CVE-2023-20597 DXE driver variables (2)
- CVE-2023-31315 SMM lock bypass
- CVE-2023-31342 SMM handler overwrites SMRAM (1)
- CVE-2023-31343 SMM handler overwrites SMRAM (2)
- CVE-2023-31345 SMM handler overwrites SMRAM (3)
- CVE-2024-0179 SMM callout in AmdCpmDisplayFeatureSMM
- CVE-2024-21924 SMM callout in AmdPlatformRasSspSmm
- CVE-2024-21925 AmdPspP2CmboxV2 input validation
- CVE-2024-21947 SMM arbitrary memory write
- CVE-2024-36310 SMM communication buffer bounds
- CVE-2024-36311 SMM communication buffer race
- CVE-2024-36326 RomArmor on resume
- CVE-2024-36343 SMM buffer and TSEG
- CVE-2024-36345 AMD OverDrive SMM module
- CVE-2024-36354 DIMM SPD data and SMM
- CVE-2024-36355 SMM handler and S3 resume
- CVE-2025-29950 SMM stack overwrite
- CVE-2025-54502 LocateProtocol in the APCB SMM driver
- CVE-2026-0438 SMM callout