Cloudanix VulnDB

CVE-2024-45817

None

CVSS

—

EPSS

0.5%

Published

Sep 25, 2024

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A bug in virtualization software can freeze the entire server when certain hardware errors occur, stopping all running virtual machines.

Exploitation
Other
Attacker needs
Other
Complexity
Theoretical
Impact
Other
Component
OS kernel
Class
Other
Remediation
Other
Effort
Other
Patch risk
Other

What it actually does

A deadlock occurs in the Xen hypervisor's vlapic_error function due to attempting to acquire a lock recursively when handling APIC error interrupts configured with illegal vectors.

Why it matters to the business

This vulnerability can cause the Xen hypervisor to become unresponsive, leading to denial of service for all virtual machines running on the affected host and potential disruption to critical workloads.

How an attack unfolds

An attacker with control over a guest VM configures the APIC error interrupt with an illegal vector, which triggers an error condition that leads to recursive locking and deadlock in the hypervisor.

How to fix it

Apply the latest Xen security patches addressing recursive locking in APIC error interrupt handling; test in staging environments before production rollout.

How to confirm the fix worked

Confirm updated Xen version post-patch, reproduce APIC error conditions in isolated test setups to verify absence of deadlock, and review hypervisor logs for lock contention warnings.

Typical attack path

  1. Obtain control within a guest virtual machine
  2. Configure the APIC error interrupt vector to an illegal value
  3. Trigger an APIC error condition to initiate recursion in error handling
  4. Induce recursive lock acquisition resulting in hypervisor deadlock

How to detect it

Monitor hypervisor logs for repeated vlapic_error entries or deadlock indicators; watch for sudden VM unresponsiveness or host crashes correlated with interrupt activity.

What your security team should do

  • Prioritize patching all Xen hosts to the fixed release
  • Implement guest isolation policies limiting APIC configuration access
  • Enable enhanced logging for APIC and interrupt handling events
  • Schedule regular hypervisor health checks and VM failover testing

The record

In x86's APIC (Advanced Programmable Interrupt Controller) architecture, error conditions are reported in a status register. Furthermore, the OS can opt to receive an interrupt when a new error occurs. It is possible to configure the error interrupt with an illegal vector, which generates an error when an error interrupt is raised. This case causes Xen to recurse through vlapic_error(). The recursion itself is bounded; errors accumulate in the the status register and only generate an interrupt when a new status bit becomes set. However, the lock protecting this state in Xen will try to be taken recursively, and deadlock.

Affected packages

Ecosystem Package Introduced Fixed
Alpine:v3.17 xen 0 4.16.6-r2
Alpine:v3.18 xen 0 4.17.5-r1
Alpine:v3.19 xen 0 4.18.3-r0
Alpine:v3.20 xen 0 4.18.3-r0
Alpine:v3.21 xen 0 4.19.0-r0
Alpine:v3.22 xen 0 4.19.0-r0
Debian:11 xen 0 No fix
Debian:12 xen 0 No fix
Debian:12 xen 0 4.17.5+23-ga4e5191dc0-1
Debian:13 xen 0 No fix
Debian:13 xen 0 4.19.1-1
Mageia:9 xen 0 4.17.5-1.git20251028.1.mga9
SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS xen 0 4.13.5_16-150200.3.99.1
SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS xen 0 4.16.6_04-150400.4.62.1
SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS xen 0 4.16.6_04-150400.4.62.1
SUSE:Linux Enterprise Micro 5.1 xen 0 4.14.6_20-150300.3.81.1
SUSE:Linux Enterprise Micro 5.2 xen 0 4.14.6_20-150300.3.81.1
SUSE:Linux Enterprise Micro 5.3 xen 0 4.16.6_04-150400.4.62.1
SUSE:Linux Enterprise Micro 5.4 xen 0 4.16.6_04-150400.4.62.1
SUSE:Linux Enterprise Micro 5.5 xen 0 4.17.5_04-150500.3.39.1
SUSE:Linux Enterprise Micro 5.5 xen 0 4.17.5_06-150500.3.42.1
SUSE:Linux Enterprise Module for Basesystem 15 SP5 xen 0 4.17.5_04-150500.3.39.1
SUSE:Linux Enterprise Module for Basesystem 15 SP5 xen 0 4.17.5_06-150500.3.42.1
SUSE:Linux Enterprise Module for Basesystem 15 SP6 xen 0 4.18.3_06-150600.3.12.1
SUSE:Linux Enterprise Module for Basesystem 15 SP6 xen 0 4.18.3_04-150600.3.9.1
SUSE:Linux Enterprise Module for Server Applications 15 SP5 xen 0 4.17.5_04-150500.3.39.1
SUSE:Linux Enterprise Module for Server Applications 15 SP5 xen 0 4.17.5_06-150500.3.42.1
SUSE:Linux Enterprise Module for Server Applications 15 SP6 xen 0 4.18.3_06-150600.3.12.1
SUSE:Linux Enterprise Module for Server Applications 15 SP6 xen 0 4.18.3_04-150600.3.9.1
SUSE:Linux Enterprise Server 12 SP5 xen 0 4.12.4_54-3.118.1
SUSE:Linux Enterprise Server 12 SP5 xen 0 4.12.4_56-3.121.1
SUSE:Linux Enterprise Server 15 SP2-LTSS xen 0 4.13.5_16-150200.3.99.1
SUSE:Linux Enterprise Server 15 SP4-LTSS xen 0 4.16.6_04-150400.4.62.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP5 xen 0 4.12.4_54-3.118.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP5 xen 0 4.12.4_56-3.121.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP2 xen 0 4.13.5_16-150200.3.99.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP4 xen 0 4.16.6_04-150400.4.62.1
SUSE:Linux Enterprise Software Development Kit 12 SP5 xen 0 4.12.4_54-3.118.1
SUSE:Linux Enterprise Software Development Kit 12 SP5 xen 0 4.12.4_56-3.121.1
SUSE:Manager Proxy 4.3 xen 0 4.16.6_04-150400.4.62.1
SUSE:Manager Server 4.3 xen 0 4.16.6_04-150400.4.62.1
Ubuntu:16.04:LTS xen 0 No fix
Ubuntu:18.04:LTS xen 0 No fix
Ubuntu:20.04:LTS xen 0 No fix
Ubuntu:22.04:LTS xen 0 No fix
Ubuntu:24.04:LTS xen 0 No fix
Ubuntu:24.10 xen 0 No fix
Ubuntu:25.04 xen 0 No fix
Ubuntu:25.10 xen 0 No fix
Ubuntu:Pro:16.04:LTS xen 0 No fix
Ubuntu:Pro:18.04:LTS xen 0 No fix
Ubuntu:Pro:20.04:LTS xen 0 No fix
openSUSE:Leap 15.5 xen 0 4.17.5_04-150500.3.39.1
openSUSE:Leap 15.5 xen 0 4.17.5_06-150500.3.42.1
openSUSE:Leap 15.6 xen 0 4.18.3_06-150600.3.12.1
openSUSE:Leap 15.6 xen 0 4.18.3_04-150600.3.9.1
openSUSE:Leap Micro 5.5 xen 0 4.17.5_04-150500.3.39.1
openSUSE:Leap Micro 5.5 xen 0 4.17.5_06-150500.3.42.1
openSUSE:Tumbleweed xen 0 4.19.0_04-1.1

Related vulnerabilities