GHSA-qm76-89x6-cmqmunknown
In the Linux kernel, the following vulnerability has been resolved: Input: rmi_smbus - fix out...
🔗 CVE IDs covered (1)
📋 Description
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.
🔗 References (10)
- https://nvd.nist.gov/vuln/detail/CVE-2026-98204
- https://git.kernel.org/stable/c/29fbcf5834f0a7f74bfd017c07da2411b35a4e2a
- https://git.kernel.org/stable/c/50dd585bee7669eb165e5defcc35d17f3822cfbb
- https://git.kernel.org/stable/c/51cfe54f815ae175c7d1126b983d4d7c89715004
- https://git.kernel.org/stable/c/7c800af1c6030a5f27d46ce7d6d5d75f9c1efaf8
- https://git.kernel.org/stable/c/9f0ce5e162eed8b68345abe839c59768bc60f99a
- https://git.kernel.org/stable/c/d01337c0892d1509500c727edf81380777c2dd0f
- https://git.kernel.org/stable/c/dc05ec97b8299e48e31367a9bc412c7e9c0e2b42
- https://git.kernel.org/stable/c/e022538e13dd1c82af5ec25ac28f12ca0ab26160
- https://github.com/advisories/GHSA-qm76-89x6-cmqm