Skip to main content
← All vulnerabilities
CVE-2026-98204

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

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 5.10.271, 5.15.222, 6.1.189, 6.6.158, 6.12.112, and 2 more
None on Exploit-DB, Metasploit or GitHub

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.

Timeline

  1. CVE published
  2. Record last updated

Affected versions

  • Linux Linux

    From 82264d0cf7aef2247563c031ff2ab96579d5d0cc · fixed in d01337c0892d1509500c727edf81380777c2dd0f; From 82264d0cf7aef2247563c031ff2ab96579d5d0cc · fixed in 7c800af1c6030a5f27d46ce7d6d5d75f9c1efaf8; From 82264d0cf7aef2247563c031ff2ab96579d5d0cc · fixed in 29fbcf5834f0a7f74bfd017c07da2411b35a4e2a; From 82264d0cf7aef2247563c031ff2ab96579d5d0cc · fixed in 50dd585bee7669eb165e5defcc35d17f3822cfbb; From 82264d0cf7aef2247563c031ff2ab96579d5d0cc · fixed in e022538e13dd1c82af5ec25ac28f12ca0ab26160; From 82264d0cf7aef2247563c031ff2ab96579d5d0cc · fixed in dc05ec97b8299e48e31367a9bc412c7e9c0e2b42; From 82264d0cf7aef2247563c031ff2ab96579d5d0cc · fixed in 9f0ce5e162eed8b68345abe839c59768bc60f99a; From 82264d0cf7aef2247563c031ff2ab96579d5d0cc · fixed in 51cfe54f815ae175c7d1126b983d4d7c89715004

  • Linux Linux

    4.10

  • KernelLinux

    From 4.10.0 · fixed in 5.10.271; From 5.11.0 · fixed in 5.15.222; From 5.16.0 · fixed in 6.1.189; From 6.2.0 · fixed in 6.6.158; From 6.7.0 · fixed in 6.12.112; From 6.13.0 · fixed in 6.18.54; From 6.19.0 · fixed in 7.2.8

References 8

git.kernel.org