CVE-2026-64139CWE-401

CVE-2026-64139

Medium · published July 19, 2026

CVSS v3.1
5.5
EPSS
0%
Percentile
6.4
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

ksmbd: fix SID memory leak in set_posix_acl_entries_dacl() on overflow

Commit 299f962c0b02 ("ksmbd: use check_add_overflow() to prevent u16

DACL size overflow") added check_add_overflow() guards that break out

of the ACE-building loops in set_posix_acl_entries_dacl() when the

accumulated DACL size would wrap past 65535.

However, each iteration allocates a struct smb_sid via kmalloc_obj()

at the top of the loop and relies on the kfree(sid) call at the end

of the loop body (the 'pass_same_sid' label in the first loop, and

the explicit kfree at the tail of the second loop) to release it.

The newly introduced 'break' statements bypass those kfree() calls,

leaking the sid buffer every time an overflow is detected.

A malicious or malformed file with enough POSIX ACL entries to trip

the overflow check will leak one or more struct smb_sid allocations

on every request that touches the file's DACL, providing a trivial

kernel memory exhaustion vector.

Free sid before breaking out of the loops to plug the leak.

The record
Technical detail
CVSS v3.1
5.5 · MEDIUM
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
CVSS v4.0
Not supplied
EPSS
0.00173 · 6.4th percentile
Weakness
CWE-401 · Missing Release of Memory after Effective Lifetime
Published
2026-07-19T20:17Z
Affected products (9)
ProductVersionsFixed in
linux/linux_kernel≥ 6.1.175, < 6.26.2
linux/linux_kernel≥ 6.6.136, < 6.6.1426.6.142
linux/linux_kernel≥ 6.12.84, < 6.12.926.12.92
linux/linux_kernel≥ 6.18.25, < 6.18.346.18.34
linux/linux_kernel≥ 7.0.2, < 7.0.117.0.11
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
References (6)
EPSS history
Timeline
  • 19 JUL 15:40Z
    ksmbd: fix SID memory leak in set_posix_acl_entries_dacl() on overflow
    cvelistv5