Lucene search

K
xenXen ProjectXSA-431
HistoryMay 16, 2023 - 3:14 p.m.

Mishandling of guest SSBD selection on AMD hardware

2023-05-1615:14:00
Xen Project
xenbits.xen.org
15

0.0004 Low

EPSS

Percentile

8.6%

ISSUE DESCRIPTION

The current logic to set SSBD on AMD Family 17h and Hygon Family 18h processors requires that the setting of SSBD is coordinated at a core level, as the setting is shared between threads. Logic was introduced to keep track of how many threads require SSBD active in order to coordinate it, such logic relies on using a per-core counter of threads that have SSBD active.
When running on the mentioned hardware, it’s possible for a guest to under or overflow the thread counter, because each write to VIRT_SPEC_CTRL.SSBD by the guest gets propagated to the helper that does the per-core active accounting. Underflowing the counter causes the value to get saturated, and thus attempts for guests running on the same core to set SSBD won’t have effect because the hypervisor assumes it’s already active.

IMPACT

An attacker with control over a guest can mislead other guests into observing SSBD active when it is not.

VULNERABLE SYSTEMS

Only Xen version 4.17 is vulnerable.
Only x86 AMD systems are vulnerable. The vulnerability can be leveraged by and affects only HVM guests.