CVE-2024-49570
NoneCVSS
—
EPSS
0.2%
Published
Feb 27, 2025
CISA due date
—
Cloudanix analysis
A bug in the Linux kernel's graphics logging code could let attackers with local access corrupt memory and potentially take over the system.
- Exploitation
- Local Privilege
- Attacker needs
- Local User
- Complexity
- Moderate
- Impact
- Full Compromise
- Component
- OS kernel
- Class
- Use After Free
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Use-after-free in the xe_bo_move trace event caused by dereferencing the xe_mem_type_to_name[] array at TP_printk evaluation time rather than capture time.
Why it matters to the business
Kernel instability, potential local privilege escalation, or system crashes on affected Linux distributions using Xe graphics drivers; low EPSS and no KEV status indicate limited immediate widespread risk but still requires patching on servers and workstations.
How an attack unfolds
An attacker with local access triggers the xe_bo_move tracepoint under conditions where the referenced memory has already been freed; the TP_printk format then dereferences stale data, allowing controlled memory corruption or information disclosure.
How to fix it
Update the Linux kernel to commit 62cd174616ae3bf8a6cf468718f1ae74e5a07727 or later; for kernels older than 6.10, apply the explicit backport of the fix that avoids dereferencing xe_mem_type_to_name[] inside TP_printk.
How to confirm the fix worked
Confirm the patch is present by checking for the updated trace event definition that stores the string value at event record time; verify no reference to xe_mem_type_to_name[] remains inside the TP_printk format string.
Typical attack path
- Obtain local code execution on a system running a vulnerable kernel with Xe driver tracing enabled
- Force repeated BO moves while simultaneously freeing the associated memory objects
- Trigger the trace event so that TP_printk evaluates the now-freed string pointer
- Leverage the resulting UAF for kernel memory corruption or info leak to escalate privileges
How to detect it
Review kernel logs and ftrace output for oops or warnings referencing xe_bo_move or TP_printk around memory management functions; correlate with process activity that performs frequent buffer object moves.
What your security team should do
- Prioritize kernel updates on all systems exposing Xe graphics tracing
- Disable unnecessary tracepoints in production until patched
- Monitor for kernel oops or crashes involving drm/xe trace events as a temporary detection signal
- Include the fixed commit hash in SBOM and vulnerability scanning rules
The record
In the Linux kernel, the following vulnerability has been resolved: drm/xe/tracing: Fix a potential TP_printk UAF The commit afd2627f727b ("tracing: Check "%s" dereference via the field and not the TP_printk format") exposes potential UAFs in the xe_bo_move trace event. Fix those by avoiding dereferencing the xe_mem_type_to_name[] array at TP_printk time. Since some code refactoring has taken place, explicit backporting may be needed for kernels older than 6.10.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| AlmaLinux:10 | kernel | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-64k | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-64k-core | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-64k-debug | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-64k-debug-core | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-64k-debug-devel | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-64k-debug-devel-matched | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-64k-debug-modules | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-64k-debug-modules-core | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-64k-debug-modules-extra | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-64k-devel | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-64k-devel-matched | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-64k-modules | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-64k-modules-core | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-64k-modules-extra | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-abi-stablelists | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-core | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-cross-headers | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-debug | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-debug-core | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-debug-devel | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-debug-devel-matched | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-debug-modules | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-debug-modules-core | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-debug-modules-extra | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-debug-uki-virt | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-devel | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-devel-matched | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-doc | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-headers | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-modules | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-modules-core | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-modules-extra | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-modules-extra-matched | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt-64k | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt-64k-core | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt-64k-debug | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt-64k-debug-core | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt-64k-debug-devel | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt-64k-debug-modules | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt-64k-debug-modules-core | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt-64k-debug-modules-extra | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt-64k-devel | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt-64k-modules | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt-64k-modules-core | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt-64k-modules-extra | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt-core | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt-debug | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt-debug-core | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt-debug-devel | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt-debug-modules | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt-debug-modules-core | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt-debug-modules-extra | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt-devel | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt-modules | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt-modules-core | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-rt-modules-extra | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-tools | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-tools-libs | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-tools-libs-devel | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-uki-virt | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-uki-virt-addons | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-zfcpdump | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-zfcpdump-core | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-zfcpdump-devel | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-zfcpdump-devel-matched | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-zfcpdump-modules | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-zfcpdump-modules-core | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | kernel-zfcpdump-modules-extra | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | libperf | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | perf | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | python3-perf | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | rtla | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:10 | rv | 0 | 6.12.0-124.8.1.el10_1 |
| AlmaLinux:9 | kernel | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-64k | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-64k-core | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-64k-debug | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-64k-debug-core | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-64k-debug-devel | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-64k-debug-devel-matched | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-64k-debug-modules | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-64k-debug-modules-core | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-64k-debug-modules-extra | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-64k-devel | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-64k-devel-matched | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-64k-modules | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-64k-modules-core | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-64k-modules-extra | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-abi-stablelists | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-core | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-cross-headers | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-debug | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-debug-core | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-debug-devel | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-debug-devel-matched | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-debug-modules | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-debug-modules-core | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-debug-modules-extra | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-debug-uki-virt | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-devel | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-devel-matched | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-doc | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-headers | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-modules | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-modules-core | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-modules-extra | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt-64k | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt-64k-core | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt-64k-debug | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt-64k-debug-core | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt-64k-debug-devel | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt-64k-debug-modules | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt-64k-debug-modules-core | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt-64k-debug-modules-extra | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt-64k-devel | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt-64k-modules | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt-64k-modules-core | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt-64k-modules-extra | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt-core | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt-debug | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt-debug-core | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt-debug-devel | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt-debug-modules | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt-debug-modules-core | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt-debug-modules-extra | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt-devel | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt-modules | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt-modules-core | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-rt-modules-extra | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-tools | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-tools-libs | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-tools-libs-devel | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-uki-virt | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-uki-virt-addons | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-zfcpdump | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-zfcpdump-core | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-zfcpdump-devel | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-zfcpdump-devel-matched | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-zfcpdump-modules | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-zfcpdump-modules-core | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | kernel-zfcpdump-modules-extra | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | libperf | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | perf | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | python3-perf | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | rtla | 0 | 5.14.0-611.5.1.el9_7 |
| AlmaLinux:9 | rv | 0 | 5.14.0-611.5.1.el9_7 |
| Debian:13 | linux | 0 | No fix |
| Debian:13 | linux | 0 | 6.12.16-1 |
| Linux | Kernel | 6.11.0 | 6.12.16 |
| SUSE:Linux Enterprise High Availability Extension 15 SP7 | kernel-default | 0 | 6.4.0-150700.53.3.1 |
| SUSE:Linux Enterprise Live Patching 15 SP7 | kernel-default | 0 | 6.4.0-150700.53.3.1 |
| SUSE:Linux Enterprise Live Patching 15 SP7 | kernel-livepatch-SLE15-SP7_Update_1 | 0 | 1-150700.15.3.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP7 | kernel-64kb | 0 | 6.4.0-150700.53.3.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP7 | kernel-default | 0 | 6.4.0-150700.53.3.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP7 | kernel-default-base | 0 | 6.4.0-150700.53.3.1.150700.17.2.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP7 | kernel-source | 0 | 6.4.0-150700.53.3.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP7 | kernel-zfcpdump | 0 | 6.4.0-150700.53.3.1 |
| SUSE:Linux Enterprise Module for Development Tools 15 SP7 | kernel-docs | 0 | 6.4.0-150700.53.3.1 |
| SUSE:Linux Enterprise Module for Development Tools 15 SP7 | kernel-obs-build | 0 | 6.4.0-150700.53.3.1 |
| SUSE:Linux Enterprise Module for Development Tools 15 SP7 | kernel-source | 0 | 6.4.0-150700.53.3.1 |
| SUSE:Linux Enterprise Module for Development Tools 15 SP7 | kernel-syms | 0 | 6.4.0-150700.53.3.1 |
| SUSE:Linux Enterprise Module for Legacy 15 SP7 | kernel-default | 0 | 6.4.0-150700.53.3.1 |
| SUSE:Linux Enterprise Module for Public Cloud 15 SP7 | kernel-azure | 0 | 6.4.0-150700.20.3.1 |
| SUSE:Linux Enterprise Module for Public Cloud 15 SP7 | kernel-source-azure | 0 | 6.4.0-150700.20.3.1 |
| SUSE:Linux Enterprise Module for Public Cloud 15 SP7 | kernel-syms-azure | 0 | 6.4.0-150700.20.3.1 |
| SUSE:Linux Enterprise Workstation Extension 15 SP7 | kernel-default | 0 | 6.4.0-150700.53.3.1 |
| Ubuntu:24.10 | linux-aws | 0 | 6.11.0-1014.15 |
Related vulnerabilities
- CVE-2025-68285 In the Linux kernel, the following vulnerability has been resolved: libceph: fix… Also affects kernel
- CVE-2025-68287 In the Linux kernel, the following vulnerability has been resolved: usb: dwc3: Fix race… Also affects kernel
- CVE-2025-40277 In the Linux kernel, the following vulnerability has been resolved: drm/vmwgfx: Validate… Also affects kernel
- CVE-2025-40240 In the Linux kernel, the following vulnerability has been resolved: sctp: avoid NULL… Also affects kernel
- CVE-2025-40185 In the Linux kernel, the following vulnerability has been resolved: ice: ice_adapter… Also affects kernel
- CVE-2025-40176 In the Linux kernel, the following vulnerability has been resolved: tls: wait for pending… Also affects kernel
- CVE-2025-40058 In the Linux kernel, the following vulnerability has been resolved: iommu/vt-d: Disallow… Also affects kernel
- CVE-2025-40047 In the Linux kernel, the following vulnerability has been resolved: io_uring/waitid… Also affects kernel