Name
INVD and guest memory integrity
Vulnerability
AMD SEV, SEV-ES and SEV-SNP
Kind
Other
CVE published
2023-11-14 CVE record
Advisories
AMD-SB-3005
INVD invalidates the caches without writing modified lines back to memory. External researchers found that a malicious hypervisor could use it to change which of the cached writes of an SEV-ES or SEV-SNP guest reach memory, and so break the guest’s memory integrity. On the first two EPYC generations AMD offers no fix, as SEV and SEV-ES were not designed to protect integrity; on the third it ships a hot- loadable microcode patch with SEV firmware 1.37.10, to be applied before SEV-SNP is initialized, and later MilanPI 1.0.0.C. AMD found no impact on the fourth generation.

Affected processors

3 of the 4 microarchitectures listed are affected in all or some of their models.

What the sources say of each microarchitecture.
MicroarchitectureStatusDetailSource
ZenAffectedFirst generation EPYC (SEV, SEV-ES): no mitigationamd.com
Zen 2AffectedSecond generation EPYC (SEV, SEV-ES): no mitigationamd.com
Zen 3AffectedThird generation EPYC: microcode 0x0A0011D1 (Milan B1), 0x0A001234 (Milan-X B2) with SEV firmware 1.37.10, or MilanPI 1.0.0.Camd.com
Zen 4Not affectedFourth generation EPYC (Genoa): not found to be affectedamd.com

Mitigations

  • Microcode: A hot-loadable microcode patch with SEV firmware 1.37.10 for the third generation of EPYC, loaded before SNP_INIT_EX, then MilanPI 1.0.0.C. Source.

Sources

  1. AMD-SB-3005: AMD INVD Instruction Security Notice