CVE-2025-38594

7.8 HIGH

📋 TL;DR

A use-after-free vulnerability in the Linux kernel's Intel IOMMU driver allows attackers with local access to potentially trigger kernel panics or achieve privilege escalation. This affects systems using Intel processors with IOMMU/SVM (Shared Virtual Memory) enabled and running vulnerable kernel versions. The vulnerability occurs during SVA (Shared Virtual Address) unbind operations when pending I/O page faults exist.

💻 Affected Systems

Products:
  • Linux kernel
Versions: Specific versions between the introduction of commit 17fce9d2336d and the fix commits
Operating Systems: Linux distributions using affected kernel versions
Default Config Vulnerable: ✅ No
Notes: Only vulnerable when Intel IOMMU with SVM/SVA features are enabled and in use. Many systems may have these disabled by default.

📦 What is this software?

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

⚠️ Risk & Real-World Impact

🔴

Worst Case

Kernel panic leading to denial of service, or potential privilege escalation allowing full system compromise.

🟠

Likely Case

System crashes or instability when devices with pending I/O page faults are detached from domains.

🟢

If Mitigated

No impact if IOMMU/SVM is disabled or systems are patched.

🌐 Internet-Facing: LOW - Requires local access to exploit.
🏢 Internal Only: MEDIUM - Local attackers or malicious users could exploit this to crash systems or potentially escalate privileges.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: MEDIUM

Exploitation requires local access and knowledge of IOMMU/SVA operations. The vulnerability was discovered through code review and debugging.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Fixed in kernel commits c68332b7ee893292bba6e87d31ef2080c066c65d and f0b9d31c6edd50a6207489cd1bd4ddac814b9cd2

Vendor Advisory: https://git.kernel.org/stable/c/c68332b7ee893292bba6e87d31ef2080c066c65d

Restart Required: Yes

Instructions:

1. Update to a kernel version containing the fix commits. 2. Check with your Linux distribution for security updates. 3. Reboot the system after kernel update.

🔧 Temporary Workarounds

Disable IOMMU/SVM features

linux

Disable Intel IOMMU or Shared Virtual Memory features if not required

Add 'intel_iommu=off' or 'iommu=off' to kernel boot parameters

🧯 If You Can't Patch

  • Disable IOMMU/SVM features via kernel boot parameters
  • Restrict local user access to systems with IOMMU/SVM enabled

🔍 How to Verify

Check if Vulnerable:

Check kernel version and if IOMMU/SVM is enabled: 'cat /proc/cmdline | grep -i iommu' and 'dmesg | grep -i iommu'

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version includes fix commits or check with distribution's security advisory

📡 Detection & Monitoring

Log Indicators:

  • Kernel panic messages mentioning 'refcount_t: underflow' or 'use-after-free'
  • IOMMU-related error messages in dmesg
  • System crashes during device detachment operations

Network Indicators:

  • None - local vulnerability only

SIEM Query:

Search for kernel panic events or refcount underflow warnings in system logs

🔗 References

📤 Share & Export