Description
In the Linux kernel, the following vulnerability has been resolved:
ksmbd: fix signededness bug in smb_direct_prepare_negotiation()
smb_direct_prepare_negotiation() casts an unsigned __u32 value from sp->max_recv_size and req->preferred_send_size to a signed int before computing min_t(int, ...). A maliciously provided preferred_send_size of 0x80000000 will return as smaller than max_recv_size, and then be used to set the maximum allowed alowed receive size for the next message.
By sending a second message with a large value (>1420 bytes) the attacker can then achieve a heap buffer overflow.
This fix replaces min_t(int, ...) with min_t(u32)
Metrics
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HWeakness enumeration
Affected software
| Vendor | Product | Versions |
|---|---|---|
| Linux | Linux | >= 0626e6641f6b467447c81dd7678a69c66f7746cf, < 56eab82fa6fb5ca024b0514e249d40d9b23ee5a7; >= 0626e6641f6b467447c81dd7678a69c66f7746cf, < a110dbe928561d440e9e117d17331139a0bedace; >= 0626e6641f6b467447c81dd7678a69c66f7746cf, < ceae058eb707ddd0d68f0872f9d9f23b7c30c37b; >= 0626e6641f6b467447c81dd7678a69c66f7746cf, < 55abc475d096da4a5356b6efb0cfdc6156bc1550; >= 0626e6641f6b467447c81dd7678a69c66f7746cf, < 6b4f875aac344cdd52a1f34cc70ed2f874a65757 |
| Linux | Linux | 5.15 |
References
- https://git.kernel.org/stable/c/55abc475d096da4a5356b6efb0cfdc6156bc1550Patch
- https://git.kernel.org/stable/c/56eab82fa6fb5ca024b0514e249d40d9b23ee5a7
- https://git.kernel.org/stable/c/6b4f875aac344cdd52a1f34cc70ed2f874a65757Patch
- https://git.kernel.org/stable/c/a110dbe928561d440e9e117d17331139a0bedace
- https://git.kernel.org/stable/c/ceae058eb707ddd0d68f0872f9d9f23b7c30c37bPatch
Timeline
- Published
- May 6, 2026
- Last modified
- Oct 21, 2026
- NVD status
- Modified