Cloudanix VulnDB

CVE-2025-21694

Medium · 5.5

CVSS

5.5

EPSS

0.2%

Published

Feb 12, 2025

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A bug in the Linux kernel can freeze crash-dump collection when memory is very low, making it harder for teams to diagnose serious system problems.

Exploitation
Local Privilege
Attacker needs
Low Privilege
Complexity
Low
Impact
Denial Of Service
Component
OS kernel
Class
Denial of service
Remediation
Patch
Effort
Medium
Patch risk
Low

What it actually does

The flaw allows softlockups during __read_vmcore execution in memory-constrained kdump environments by lacking sufficient rescheduling points in the second loop, which can block RCU memory freeing and stall the crashdump process.

Why it matters to the business

Organizations may experience failed or delayed kernel crash dumps on affected Linux systems under memory pressure, increasing downtime during incidents and complicating root-cause analysis for production failures.

How an attack unfolds

An attacker with local access triggers repeated reads of /proc/vmcore in a low-memory kdump context; without cond_resched calls the loop spins long enough to trigger softlockups that interfere with RCU and hang the dump, preventing successful crash collection.

How to fix it

Upgrade the Linux kernel to a fixed version such as 5.4.290 or commit 84c4ed15626574c9ac6c1039ba9c137a77bcc7f2 (or later stable releases containing the cond_resched addition). Rebuild and redeploy initramfs images used for kdump after the update.

How to confirm the fix worked

Confirm the running kernel reports the patch commit or version 5.4.290+, then reproduce a kdump under memory pressure and verify absence of softlockup warnings in the dump logs.

Typical attack path

  1. Obtain local user or process execution on a Linux system configured for kdump
  2. Force the system into a memory-constrained state matching kdump image limits
  3. Trigger repeated access to vmcore data paths that exercise the second loop in __read_vmcore
  4. Observe softlockup messages and subsequent stall of RCU and crashdump completion

How to detect it

Review kernel logs and kdump output for repeated softlockup messages referencing __read_vmcore; inspect audit or process accounting for local processes repeatedly accessing /proc/vmcore shortly before dump failures.

What your security team should do

  • Prioritize kernel upgrades on systems that rely on kdump for production troubleshooting
  • Test kdump functionality after applying fixes in staging environments that mimic memory-constrained conditions
  • Monitor EPSS and threat actor reports for any rise in local DoS techniques targeting kernel procfs paths

The record

In the Linux kernel, the following vulnerability has been resolved: fs/proc: fix softlockup in __read_vmcore (part 2) Since commit 5cbcb62dddf5 ("fs/proc: fix softlockup in __read_vmcore") the number of softlockups in __read_vmcore at kdump time have gone down, but they still happen sometimes. In a memory constrained environment like the kdump image, a softlockup is not just a harmless message, but it can interfere with things like RCU freeing memory, causing the crashdump to get stuck. The second loop in __read_vmcore has a lot more opportunities for natural sleep points, like scheduling out while waiting for a data write to happen, but apparently that is not always enough. Add a cond_resched() to the second loop in __read_vmcore to (hopefully) get rid of the softlockups.

Affected packages

Ecosystem Package Introduced Fixed
Debian:11 linux 0 No fix
Debian:11 linux 0 5.10.234-1
Debian:11 linux-6.1 0 6.1.128-1~deb11u1
Debian:11 linux-6.1 0 6.1.6.1.128-1~deb11u1
Debian:12 linux 0 6.1.128-1
Debian:13 linux 0 6.12.11-1
Linux Kernel 0 5.4.290

Related vulnerabilities