CVE-2026-43185

Summary

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)

Affected Software

VendorProductVersion RangeStatus
LinuxLinux0626e6641f6b467447c81dd7678a69c66f7746cf < ceae058eb707ddd0d68f0872f9d9f23b7c30c37baffected
LinuxLinux0626e6641f6b467447c81dd7678a69c66f7746cf < 55abc475d096da4a5356b6efb0cfdc6156bc1550affected
LinuxLinux0626e6641f6b467447c81dd7678a69c66f7746cf < 6b4f875aac344cdd52a1f34cc70ed2f874a65757affected
LinuxLinux5.15affected
LinuxLinux0 < 5.15unaffected
LinuxLinux6.18.16 <= 6.18.*unaffected
LinuxLinux6.19.6 <= 6.19.*unaffected
LinuxLinux7.0 <= *unaffected

Weaknesses

References