LiveActive security incident?Get immediate response
CVE Record

CVE-2026-45990: slub: fix data loss and overflow in krealloc()

In the Linux kernel, the following vulnerability has been resolved: slub: fix data loss and overflow in krealloc() Commit 2cd8231796b5 ("mm/slub: allow to set node and align in k[v]realloc") introduced the ability to force a reallocation if the original object does not satisfy new alignment or NUMA node, even when the object is being shrunk. This introduced two bugs in the reallocation fallback path: 1. Data loss during NUMA migration: The jump to 'alloc_new' happens before 'ks' and 'orig_size' are initialized. As a result, the memcpy() in the 'alloc_new' block would copy 0 bytes into the new allocation. 2. Buffer overflow during shrinking: When shrinking an object while forcing a new alignment, 'new_size' is smaller than the old size. However, the memcpy() used the old size ('orig_size ?: ks'), leading to an out-of-bounds write. The same overflow bug exists in the kvrealloc() fallback path, where the old bucket size ksize(p) is copied into the new buffer without being bounded by the new size. A simple reproducer: // e.g. add to lkdtm as KREALLOC_SHRINK_OVERFLOW while (1) { void *p = kmalloc(128, GFP_KERNEL); p = krealloc_node_align(p, 64, 256, GFP_KERNEL, NUMA_NO_NODE); kfree(p); } demonstrates the issue: ================================================================== BUG: KFENCE: out-of-bounds write in memcpy_orig+0x68/0x130 Out-of-bounds write at 0xffff8883ad757038 (120B right of kfence-#47): memcpy_orig+0x68/0x130 krealloc_node_align_noprof+0x1c8/0x340 lkdtm_KREALLOC_SHRINK_OVERFLOW+0x8c/0xc0 [lkdtm] lkdtm_do_action+0x3a/0x60 [lkdtm] ... kfence-#47: 0xffff8883ad756fc0-0xffff8883ad756fff, size=64, cache=kmalloc-64 allocated by task 316 on cpu 7 at 97.680481s (0.021813s ago): krealloc_node_align_noprof+0x19c/0x340 lkdtm_KREALLOC_SHRINK_OVERFLOW+0x8c/0xc0 [lkdtm] lkdtm_do_action+0x3a/0x60 [lkdtm] ... ================================================================== Fix it by moving the old size calculation to the top of __do_krealloc() and bounding all copy lengths by the new allocation size.

UnknownCVSS not scoredNot KEV-listedUpdated
Glexia's TakeAutomated analysisunknown

Security readout for executives and security teams

Plain-English summary

CVE-2026-45990 is a Linux kernel memory allocator bug in krealloc()/kvrealloc(). Under specific reallocation cases, the kernel could lose copied data or write past a smaller destination buffer. The public record names upstream stable fixes, but does not provide CVSS, CWE, distro package status, or evidence of active exploitation.

Executive priority

Monitor and patch through normal kernel update channels unless vendor advisories assign higher severity. The issue is kernel memory corruption, but current public evidence lacks active exploitation, CVSS scoring, and clear remote attackability.

Technical view

A prior SLUB change allowed forced reallocation for alignment or NUMA placement during shrink operations. In fallback paths, old-size handling was wrong: one NUMA migration path copied zero bytes, and shrink paths could copy the old bucket size into a smaller allocation. Fixes calculate old size earlier and bound copies by the new allocation size.

Likely exposure

Exposure is likely limited to systems running affected Linux kernel versions or builds containing commit 2cd8231796b5 without the listed stable fixes. Distro impact cannot be concluded from the bundle alone; validate against each vendor kernel package and backport history.

Exploitation context

The bundle includes a kernel test reproducer showing a KFENCE out-of-bounds write. It does not cite public exploitation, KEV listing, privilege requirements, attack surface, or a complete exploit path. Treat exploitability as unproven from available evidence.

Researcher notes

Key research gaps are exploitability, triggerability from unprivileged paths, distro backport status, and whether reachable kernel subsystems commonly request forced alignment or NUMA reallocation while shrinking. The affected version data in the bundle appears incomplete and should not be treated as a full product matrix.

Mitigation direction

  • Apply vendor kernel updates that include the upstream stable fixes.
  • If self-building kernels, incorporate the referenced stable commits.
  • Check Linux distribution advisories for exact affected package versions.
  • Prioritize systems using custom kernels or out-of-tree kernel modules.
  • Reboot or live-patch according to vendor kernel update guidance.

Validation and detection

  • Inventory running kernel versions across Linux fleets.
  • Confirm whether vendor packages include the referenced stable commits.
  • Review kernel source or package changelogs for the krealloc()/kvrealloc() fix.
  • Check whether custom kernels include commit 2cd8231796b5 without follow-up fixes.
  • Track CVE and vendor advisories for CVSS, CWE, and distro mappings.
Prepared
Confidence
medium
Sources
5

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cve · low confidence lookup

CVE-2026-45990 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
Unknown
CVSS
Not scored
Known Exploited
No
Published
Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

0CVSS vectors
3Timeline events
0ADP providers
4Source links

Vulnerability timeline

Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.

  1. CVE reservedCVE Program

    The CVE ID was reserved by the assigning CNA.

  2. CVE publishedCVE Program

    The CVE record was published.

  3. CVE updatedCVE Program

    The CVE record metadata indicates this as the latest update time.

Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
LinuxLinux2cd8231796b5e7133b1c3d66ad7d2a3c42c97258, 2cd8231796b5e7133b1c3d66ad7d2a3c42c97258, 2cd8231796b5e7133b1c3d66ad7d2a3c42c97258unaffected
LinuxLinux6.18, 0, 6.18.27, 7.0.4, 7.1affected
Weakness

CWE details

No CWE listed

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.