smb: client: fix missing iov bounds check in parse_posix_sids()
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 6.6.158, 6.12.112, 6.18.54, 7.2.8
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
Summary
In the Linux kernel, the following vulnerability has been resolved: smb: client: fix missing iov bounds check in parse_posix_sids() In parse_posix_sids(), sidsbuf_end is calculated using the server-supplied out_len without being validated against the actual length of the received iov (iov_len). If a server provides an inflated out_len, sidsbuf_end will point past the end of the iov. This defeats the bounds guards in posix_info_sid_size(), allowing out-of-bounds reads into adjacent kernel memory. Fix this by rejecting responses where the calculated sidsbuf_end would exceed the received iov boundaries or cause pointer wraparound.
Timeline
- CVE published
- Record last updated
Affected versions
- Linux Linux
From a90f37e3d7acfd9824f162830583bbf7846fe252 · fixed in d91b9a3b2b38e5ac1b51e9e5b23fe53ad7b49644; From 858e74876c5cbff1dfd5bace99e32fbce2abd4b5 · fixed in b862996e5105be1293da9cdc85da77b76021c3bd; From 858e74876c5cbff1dfd5bace99e32fbce2abd4b5 · fixed in 2f8ed71aaaba3bc8b19cd9930cc62e63e142b299; From 858e74876c5cbff1dfd5bace99e32fbce2abd4b5 · fixed in eac6917a42899aad0617bbf04798c5dd946a1fe5; From 858e74876c5cbff1dfd5bace99e32fbce2abd4b5 · fixed in b09d092eb24ad0110f16a9b7c1ed5d2a0c1733dc; From 6.6.32 · fixed in 6.6.158
- Linux Linux
6.8
- KernelLinux
fixed in 6.6.158; From 6.7.0 · fixed in 6.12.112; From 6.8.0 · fixed in 6.18.54; From 6.13.0 · fixed in 7.2.8