CVE-2026-64139
Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
19/07/2026
Last modified:
30/07/2026
Description
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
ksmbd: fix SID memory leak in set_posix_acl_entries_dacl() on overflow<br />
<br />
Commit 299f962c0b02 ("ksmbd: use check_add_overflow() to prevent u16<br />
DACL size overflow") added check_add_overflow() guards that break out<br />
of the ACE-building loops in set_posix_acl_entries_dacl() when the<br />
accumulated DACL size would wrap past 65535.<br />
<br />
However, each iteration allocates a struct smb_sid via kmalloc_obj()<br />
at the top of the loop and relies on the kfree(sid) call at the end<br />
of the loop body (the &#39;pass_same_sid&#39; label in the first loop, and<br />
the explicit kfree at the tail of the second loop) to release it.<br />
The newly introduced &#39;break&#39; statements bypass those kfree() calls,<br />
leaking the sid buffer every time an overflow is detected.<br />
<br />
A malicious or malformed file with enough POSIX ACL entries to trip<br />
the overflow check will leak one or more struct smb_sid allocations<br />
on every request that touches the file&#39;s DACL, providing a trivial<br />
kernel memory exhaustion vector.<br />
<br />
Free sid before breaking out of the loops to plug the leak.
Impact
References to Advisories, Solutions, and Tools
- https://git.kernel.org/stable/c/0e198f09cb2a554c04de0fea4e790f1250a943ca
- https://git.kernel.org/stable/c/519fb0a42ce5d7e46935577309fb282a5f2c6ea3
- https://git.kernel.org/stable/c/9d378e17c864da08c3a4df41dae92cfa6468b00a
- https://git.kernel.org/stable/c/af92ee994cc7f7e83a41c2025f32257a2f82a7ef
- https://git.kernel.org/stable/c/eced48cb08f07393a5ea770fdd1026452883c3ad



