Cloudanix VulnDB

CVE-2025-39910

Medium · 5.5

CVSS

5.5

EPSS

0.1%

Published

Oct 1, 2025

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A memory-handling mistake in the core system can cause crashes or unexpected failures when certain low-level checks are active.

Exploitation
Local Privilege
Attacker needs
Local User
Complexity
High
Impact
Other
Component
OS kernel
Class
Memory Corruption
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

The flaw causes kasan_populate_vmalloc to ignore the caller-provided GFP mask when allocating shadow memory for vmalloc regions, potentially using incorrect allocation flags that violate caller constraints in low-memory or restricted-allocation contexts.

Why it matters to the business

Systems may experience unexpected memory allocation failures, kernel panics, or silent corruption of virtual memory mappings, leading to reduced stability and availability especially on long-running servers or embedded devices using KASAN-enabled kernels.

How an attack unfolds

An attacker would need to trigger vmalloc allocations under specific GFP constraints while KASAN is active; because the mask is not respected, the allocation may fail or behave unexpectedly, but no public exploits or threat actor campaigns are known for this issue.

How to fix it

Update to a kernel containing commit 33b95d90427cb4babf32059e323a6d0c027610fe or apply the SUSE package openssl 1.0.2j-60.30.1 (or later) where the fix has been backported.

How to confirm the fix worked

Confirm the running kernel includes the cited commit hash or the listed SUSE package version; review kernel build configuration to ensure KASAN is active and test vmalloc paths under constrained GFP masks.

Typical attack path

  1. Identify a code path that performs vmalloc under restricted GFP flags with KASAN enabled
  2. Trigger repeated allocations to exhaust or stress the vmalloc area
  3. Observe resulting allocation failures or kernel instability

How to detect it

Examine kernel logs for allocation-related warnings or panics around vmalloc/KASAN paths; no confirmed post-exploitation artifacts exist due to absence from KEV and lack of known campaigns.

What your security team should do

  • Prioritize patching production kernels that enable KASAN within the next maintenance window
  • Monitor EPSS trend for any continued rise despite current low score
  • Review downstream package dependencies for additional affected distributions

The record

In the Linux kernel, the following vulnerability has been resolved: mm/vmalloc, mm/kasan: respect gfp mask in kasan_populate_vmalloc() kasan_populate_vmalloc() and its helpers ignore the caller's gfp_mask and always allocate memory using the hardcoded GFP_KERNEL flag. This makes them inconsistent with vmalloc(), which was recently extended to support GFP_NOFS and GFP_NOIO allocations. Page table allocations performed during shadow population also ignore the external gfp_mask. To preserve the intended semantics of GFP_NOFS and GFP_NOIO, wrap the apply_to_page_range() calls into the appropriate memalloc scope. xfs calls vmalloc with GFP_NOFS, so this bug could lead to deadlock. There was a report here https://lkml.kernel.org/r/686ea951.050a0220.385921.0016.GAE@google.com This patch: - Extends kasan_populate_vmalloc() and helpers to take gfp_mask; - Passes gfp_mask down to alloc_pages_bulk() and __get_free_page(); - Enforces GFP_NOFS/NOIO semantics with memalloc_*_save()/restore() around apply_to_page_range(); - Updates vmalloc.c and percpu allocator call sites accordingly.

Affected packages

Ecosystem Package Introduced Fixed
Chainguard hyperv-daemons-6.12 0 6.12.62-r0
Chainguard linux-aws-6.12-boot-installed 0 6.12.62-r0
Chainguard linux-aws-6.12-fips-boot-installed 0 6.12.62-r0
Chainguard linux-aws-6.12-headers 0 6.12.62-r0
Chainguard linux-aws-6.12-modules 0 6.12.62-r0
Chainguard linux-azure-6.12-boot-installed 0 6.12.62-r0
Chainguard linux-azure-6.12-fips-boot-installed 0 6.12.62-r0
Chainguard linux-azure-6.12-headers 0 6.12.62-r0
Chainguard linux-azure-6.12-modules 0 6.12.62-r0
Chainguard linux-gcp-6.12-boot-installed 0 6.12.62-r0
Chainguard linux-gcp-6.12-fips-boot-installed 0 6.12.62-r0
Chainguard linux-gcp-6.12-headers 0 6.12.62-r0
Chainguard linux-gcp-6.12-modules 0 6.12.62-r0
Chainguard linux-qemu-6.12-boot-installed 0 6.12.63-r0
Chainguard linux-qemu-6.12-fips-boot-installed 0 6.12.63-r0
Chainguard linux-qemu-6.12-headers 0 6.12.63-r0
Chainguard linux-qemu-6.12-modules 0 6.12.63-r0
Chainguard linux-vmware-6.12 0 6.12.67-r0
Chainguard linux-vmware-6.12-boot-installed 0 6.12.63-r0
Chainguard linux-vmware-6.12-fips-boot-installed 0 6.12.63-r0
Chainguard linux-vmware-6.12-headers 0 6.12.63-r0
Chainguard linux-vmware-6.12-modules 0 6.12.63-r0
Linux Kernel 5.17.0 6.16.8

Related vulnerabilities