Skip to main content
VulnerabilityPublished Updated

CVE-2026-31589: Linux kernel · mm: call ->free_folio() directly in folio_unmap_invalidate()

Affects Linux kernelSource GCVE Database

0
Compare

Not known to be exploited · CVSS 9.8 Critical.

Data as of 12 Nov 2026, 03:32 UTC

CVSS 3.1 base score
9.8Critical
How severe the flaw is on the 0–10 CVSS scale.

Thin evidence

One scorer or none
CVSS scores by source
CNA (Linux)CVSS 3.19.8
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Exploitation evidence

  1. Disclosed: evidence found.

    CVE published 24 Apr 2026

  2. Detectable: no evidence on record.

    No public nuclei template indexed

  3. Weaponized: no evidence on record.

    No public exploit code indexed in Metasploit or Exploit-DB

  4. Exploited in the wild: no evidence on record.

    Not in CISA KEV and no source reports exploitation

  5. Observed by OffSeq Mirage: no evidence on record.

    No attack traffic recorded by OffSeq Mirage sensors

A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 11 Nov 2026.

What to do

AI-suggested

A fix has been implemented in the Linux kernel to address this vulnerability by modifying folio_unmap_invalidate() to call free_folio() directly while holding the appropriate lock. Users should apply the official Linux kernel updates that include this patch. Since this is not a cloud service, manual patching is required.

Description

CVE-2026-31589 is a critical use-after-free vulnerability in the Linux kernel's memory management subsystem. It occurs because the function filemap_free_folio() was called without holding a reference or lock on the mapping, leading to potential access of freed memory. The issue was fixed by changing folio_unmap_invalidate() to call the free_folio() function directly, following the pattern used in __remove_mapping().

References

Community reviews

Loading reviews…