Description
In the Linux kernel, the following vulnerability has been resolved: cifs: fix underflow in parse_server_interfaces() In this loop, we step through the buffer and after each item we check if the size_left is greater than the minimum size we need. However, the problem is that "bytes_left" is type ssize_t while sizeof() is type size_t. That means that because of type promotion, the comparison is done as an unsigned and if we have negative bytes left the loop continues instead of ending.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
fe856be475f7cf5ffcde57341d175ce9fd09434b to < 3babdcb5f1809a9a41e31547a063dedf6bb44ccaaffectedfe856be475f7cf5ffcde57341d175ce9fd09434b to < 7190353835b4a219abb70f90b06cdcae97f11512affectedfe856be475f7cf5ffcde57341d175ce9fd09434b to < f7ff1c89fb6e9610d2b01c1821727729e6609308affectedfe856be475f7cf5ffcde57341d175ce9fd09434b to < df2af9fdbc4ddde18a3371c4ca1a86596e8be301affectedfe856be475f7cf5ffcde57341d175ce9fd09434b to < cffe487026be13eaf37ea28b783d9638ab147204affected
Linux Linux
Default version status: affected
4.18affected0 to < 4.18unaffected5.15.224 to ≤ 5.15.*unaffected6.1.79 to ≤ 6.1.*unaffected6.6.18 to ≤ 6.6.*unaffected6.7.6 to ≤ 6.7.*unaffected6.8 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/3babdcb5f1809a9a41e31547a063dedf6bb44cca ↗
- https://git.kernel.org/stable/c/7190353835b4a219abb70f90b06cdcae97f11512 ↗
- https://git.kernel.org/stable/c/f7ff1c89fb6e9610d2b01c1821727729e6609308 ↗
- https://git.kernel.org/stable/c/df2af9fdbc4ddde18a3371c4ca1a86596e8be301 ↗
- https://git.kernel.org/stable/c/cffe487026be13eaf37ea28b783d9638ab147204 ↗