7.8

CVE-2025-21709: kernel: be more careful about dup_mmap() failures and uprobe registering

Modified
AliasesUBUNTU-CVE-2025-21709DEBIAN-CVE-2025-21709CGA-2737-68gg-f7cj
Published 27-02-2025Last modified 15-10-2026

Vulnerability summary

CVE-2025-21709 is a high (CVSS 7.8) vulnerability in linux. EPSS estimates a 0.20% chance of exploitation in the next 30 days, higher than 10% of scored vulnerabilities.

Priority
Routine

Not severe (CVSS 7.8, local access); no exploitation reported by the 5 checked sources

Source freshness unavailable

How is this decided?
CVSS score
7.8/10
010
High · v3.1 (CVE.org)
EPSS score
0.20%
0%100%
Low · 0.00 pp in 30 days
KEVNot listedNot listed by any tracked catalog.
RansomwareNot flaggedNo ransomware use recorded.
Public exploits0No public exploits recorded

Advisory lineage

Upstream 0 · Downstream 14 · Related 15

Timeline

  1. 27-02-2025
    PublishedVulnerability first disclosed.
  2. 15-10-2026
    Last modifiedVulnerability information updated.

Description

In the Linux kernel, the following vulnerability has been resolved: kernel: be more careful about dup_mmap() failures and uprobe registering If a memory allocation fails during dup_mmap(), the maple tree can be left in an unsafe state for other iterators besides the exit path. All the locks are dropped before the exit_mmap() call (in mm/mmap.c), but the incomplete mm_struct can be reached through (at least) the rmap finding the vmas which have a pointer back to the mm_struct. Up to this point, there have been no issues with being able to find an mm_struct that was only partially initialised. Syzbot was able to make the incomplete mm_struct fail with recent forking changes, so it has been proven unsafe to use the mm_struct that hasn't been initialised, as referenced in the link below. Although 8ac662f5da19f ("fork: avoid inappropriate uprobe access to invalid mm") fixed the uprobe access, it does not completely remove the race. This patch sets the MMF_OOM_SKIP to avoid the iteration of the vmas on the oom side (even though this is extremely unlikely to be selected as an oom victim in the race window), and sets MMF_UNSTABLE to avoid other potential users from using a partially initialised mm_struct. When registering vmas for uprobe, skip the vmas in an mm that is marked unstable. Modifying a vma in an unstable mm may cause issues if the mm isn't fully initialised.

CVSS metrics

6 scores · 5 sources · 2 versions

EPSS trend

Probability

0.20%

Chance of exploitation in the next 30 days

Percentile

10%

Versus all other CVEs

30-day change

No change 0.00 pp

From 0.20% on 04-10-2026

04-10-202603-11-2026

Known exploited

Compare KEV catalogs
CISA KEV

Not in the CISA KEV catalog.

ENISA CNW

Not in the ENISA CNW catalog.

CIRCL

Not in the CIRCL catalog.

Public exploits

0 found

No public exploits indexed.

Weaknesses

CWE · root cause

No weakness data has been published for this record.

Affected systems

Version check

Known conditions: local access, low-privilege account, no user interaction (CVSS vector). Other conditions: not stated in public data.

Ubuntu112 products
  • linux< 6.8.0-136.136
  • linux-allwinner-5.19All versions (No fix recorded)
  • linux-aws< 6.8.0-1061.64
  • linux-aws-5.0All versions (No fix recorded)
  • linux-aws-5.11All versions (No fix recorded)
Chainguard5 products
  • linux-aws-6.12< 6.12.57-r2 | < 6.12.65-r0 | < 6.12.66-r0 | < 6.12.62-r2 | < 6.12.77-r1 | < 6.12.68-r0 | < 6.12.65-r2 | < 6.12.72-r0 | < 6.12.70-r0 | < 6.12.71-r0 | < 6.12.74-r1 | < 6.12.69-r0 | < 6.12.65-r1 | < 6.12.62-r1 | < 6.12.80-r0 | < 6.12.74-r0 | < 6.12.67-r0 | < 6.12.62-r0 | < 6.12.60-r4 | < 6.12.63-r0 | < 6.12.76-r0 | < 6.12.68-r1 | < 6.12.72-r1 | < 6.12.57-r1 | < 6.12.78-r0 | < 6.12.77-r0 | < 6.12.77-r2
  • linux-azure-6.12< 6.12.78-r0 | < 6.12.72-r0 | < 6.12.60-r3 | < 6.12.57-r1 | < 6.12.65-r3 | < 6.12.77-r2 | < 6.12.65-r2 | < 6.12.60-r4 | < 6.12.77-r1 | < 6.12.57-r2 | < 6.12.62-r0 | < 6.12.80-r0 | < 6.12.63-r0 | < 6.12.76-r0 | < 6.12.67-r0 | < 6.12.65-r4 | < 6.12.62-r2 | < 6.12.77-r0 | < 6.12.69-r0 | < 6.12.68-r0 | < 6.12.66-r0 | < 6.12.62-r1 | < 6.12.70-r0 | < 6.12.65-r1 | < 6.12.71-r0 | < 6.12.74-r0 | < 6.12.74-r1
  • linux-gcp-6.12< 6.12.77-r0 | < 6.12.77-r2 | < 6.12.74-r0 | < 6.12.60-r4 | < 6.12.65-r0 | < 6.12.70-r0 | < 6.12.76-r0 | < 6.12.72-r0 | < 6.12.68-r0 | < 6.12.57-r1 | < 6.12.74-r1 | < 6.12.60-r3 | < 6.12.77-r1 | < 6.12.66-r0 | < 6.12.69-r0 | < 6.12.68-r1 | < 6.12.71-r0 | < 6.12.67-r0 | < 6.12.63-r0 | < 6.12.62-r0 | < 6.12.80-r0 | < 6.12.57-r2 | < 6.12.62-r2 | < 6.12.65-r2 | < 6.12.78-r0 | < 6.12.65-r1 | < 6.12.62-r1
  • linux-qemu-6.12< 6.12.65-r2 | < 6.12.70-r0 | < 6.12.76-r0 | < 6.12.67-r0 | < 6.12.72-r0 | < 6.12.69-r0 | < 6.12.77-r0 | < 6.12.65-r1 | < 6.12.68-r0 | < 6.12.74-r0 | < 6.12.71-r0 | < 6.12.74-r1 | < 6.12.77-r1 | < 6.12.80-r0 | < 6.12.66-r0 | < 6.12.77-r2 | < 6.12.78-r0
  • linux-vmware-6.12< 6.12.68-r0 | < 6.12.70-r0 | < 6.12.72-r0 | < 6.12.67-r0 | < 6.12.80-r0 | < 6.12.66-r0 | < 6.12.71-r0 | < 6.12.74-r1 | < 6.12.65-r2 | < 6.12.77-r2 | < 6.12.77-r1 | < 6.12.68-r1 | < 6.12.78-r0 | < 6.12.77-r0 | < 6.12.65-r1 | < 6.12.69-r0 | < 6.12.76-r0 | < 6.12.74-r0
Linux2 products
  • linux≥ d2406291483775ecddaee929231a39c70c08fda2, < 74c2471eb891a7dcb3874b21c106cda75f52be30 | ≥ d2406291483775ecddaee929231a39c70c08fda2, < da139948aeda677ac09cc0e7d837f8a314de7d55 | ≥ d2406291483775ecddaee929231a39c70c08fda2, < 64c37e134b120fb462fb4a80694bfb8e7be77b14 | 6.8
  • linux_kernel≥ 6.8, < 6.13.2
Debian1 product
  • linux< 6.12.85-1 | < 6.16.3-1

4 vendors · 120 products

References

24 links
Show all 24 references