CVE-2026-98204

Summary

In the Linux kernel, the following vulnerability has been resolved:

Input: rmi_smbus - fix out-of-bounds read in rmi_smb_write_block()

When chunking writes into SMBus blocks in rmi_smb_write_block(), the loop calculates block_len using the original total length (len) instead of the remaining length (cur_len).

If len is greater than 32 bytes (SMB_MAX_COUNT), block_len remains 32 for every iteration, even on the final partial chunk where fewer than 32 bytes remain. This causes smb_block_write() to read 32 bytes from the advanced data buffer pointer, reading past the end of the input buffer.

Fix this by calculating block_len using cur_len and advancing the buffer and address pointers by block_len.

Affected Software

VendorProductVersion RangeStatus
LinuxLinux82264d0cf7aef2247563c031ff2ab96579d5d0cc < d01337c0892d1509500c727edf81380777c2dd0faffected
LinuxLinux82264d0cf7aef2247563c031ff2ab96579d5d0cc < 7c800af1c6030a5f27d46ce7d6d5d75f9c1efaf8affected
LinuxLinux82264d0cf7aef2247563c031ff2ab96579d5d0cc < 29fbcf5834f0a7f74bfd017c07da2411b35a4e2aaffected
LinuxLinux82264d0cf7aef2247563c031ff2ab96579d5d0cc < 50dd585bee7669eb165e5defcc35d17f3822cfbbaffected
LinuxLinux82264d0cf7aef2247563c031ff2ab96579d5d0cc < e022538e13dd1c82af5ec25ac28f12ca0ab26160affected
LinuxLinux82264d0cf7aef2247563c031ff2ab96579d5d0cc < dc05ec97b8299e48e31367a9bc412c7e9c0e2b42affected
LinuxLinux82264d0cf7aef2247563c031ff2ab96579d5d0cc < 9f0ce5e162eed8b68345abe839c59768bc60f99aaffected
LinuxLinux82264d0cf7aef2247563c031ff2ab96579d5d0cc < 51cfe54f815ae175c7d1126b983d4d7c89715004affected
LinuxLinux4.10affected
LinuxLinux0 < 4.10unaffected
LinuxLinux5.10.271 <= 5.10.*unaffected
LinuxLinux5.15.222 <= 5.15.*unaffected
LinuxLinux6.1.189 <= 6.1.*unaffected
LinuxLinux6.6.158 <= 6.6.*unaffected
LinuxLinux6.12.112 <= 6.12.*unaffected
LinuxLinux6.18.54 <= 6.18.*unaffected
LinuxLinux7.2.8 <= 7.2.*unaffected
LinuxLinux7.3-rc4 <= *unaffected

Weaknesses

References