CVE-2025-38517

5.5 MEDIUM

📋 TL;DR

A NULL pointer dereference vulnerability in the Linux kernel's memory allocation tagging subsystem causes a kernel crash when attempting to lock a non-existent semaphore. This occurs when memory profiling is disabled or not properly initialized, leading to a system crash that can cause denial of service. All Linux systems with affected kernel versions are potentially vulnerable.

💻 Affected Systems

Products:
  • Linux Kernel
Versions: Versions containing the vulnerable code up to fixes in stable releases (specific versions depend on distribution backports)
Operating Systems: All Linux distributions using affected kernel versions
Default Config Vulnerable: ⚠️ Yes
Notes: Vulnerable when memory profiling is compiled in but disabled at boot, or when memory allocation fails before alloc_tag_init() is called.

📦 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 →

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 →

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 →

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 →

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 →

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 →

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

Complete system crash and denial of service requiring physical or remote console access to reboot the system.

🟠

Likely Case

System crash during memory allocation failures when memory profiling is disabled, causing service disruption.

🟢

If Mitigated

No impact if patched or if memory profiling is properly enabled and initialized.

🌐 Internet-Facing: LOW - This vulnerability requires local access or ability to trigger memory allocation failures, not directly exploitable over network.
🏢 Internal Only: MEDIUM - Local users or processes that can trigger memory allocation failures could cause system crashes affecting availability.

🎯 Exploit Status

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

Requires ability to trigger memory allocation failures or have memory profiling disabled at boot. Not directly remote exploitable.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Fixed in stable kernel releases via commits: 22bf79c0c2301b6e15a688220284b147774d277e, 99af22cd34688cc0d535a1919e0bea4cbc6c1ea1, febc0b5dbabda414565bdfaaaa59d26f787d5fe7

Vendor Advisory: https://git.kernel.org/stable/c/22bf79c0c2301b6e15a688220284b147774d277e

Restart Required: Yes

Instructions:

1. Update to patched kernel version from your distribution vendor. 2. Reboot system to load new kernel. 3. Verify kernel version after reboot.

🔧 Temporary Workarounds

Enable memory profiling

all

Ensure memory profiling is enabled at boot to avoid the uninitialized state that triggers the vulnerability

Add 'mem_profiling=1' to kernel boot parameters

🧯 If You Can't Patch

  • Monitor system logs for memory allocation failures and kernel crashes
  • Implement resource limits to reduce likelihood of memory allocation failures

🔍 How to Verify

Check if Vulnerable:

Check kernel version and if memory profiling is disabled: cat /proc/cmdline | grep -q mem_profiling=0 && echo 'Potentially vulnerable if kernel version is affected'

Check Version:

uname -r

Verify Fix Applied:

Check kernel version is patched: uname -r and verify it's newer than vulnerable versions. Check dmesg for absence of alloc_tag_top_users crash messages.

📡 Detection & Monitoring

Log Indicators:

  • Kernel panic/Oops messages mentioning alloc_tag_top_users
  • General protection fault errors with null-ptr-deref in KASAN range
  • System crash logs with call trace including alloc_tag_top_users

Network Indicators:

  • None - this is a local kernel vulnerability

SIEM Query:

source="kernel" AND ("alloc_tag_top_users" OR "null-ptr-deref" AND "KASAN")

🔗 References

📤 Share & Export