CVE-2026-90314

Summary

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

remoteproc: fix OOB read via signed offset in rsc_table_for_each_entry()

table->offset[i] is a u32 from firmware, but was stored into a signed int. A crafted offset like 0xFFFFFFF0 becomes -16, placing hdr 16 bytes before the table buffer. The subsequent avail check was bypassed because the negative int was promoted to a large size_t in the expression "table_sz - offset - sizeof(*hdr)", yielding a large positive avail and letting the out-of-bounds hdr->type read proceed undetected.

Store the offset as u32 and validate it with unsigned comparisons before any pointer arithmetic.

Affected Software

VendorProductVersion RangeStatus
LinuxLinuxfd2c15ec1dd3c2fdfc6ff03bb9644da9d530e3b9 < 0d385be8f199b349f325cf90584b47b6a044ea79affected
LinuxLinuxfd2c15ec1dd3c2fdfc6ff03bb9644da9d530e3b9 < cc85e0d3d3333fd5fd2d50c9a4578d209d7f2564affected
LinuxLinuxfd2c15ec1dd3c2fdfc6ff03bb9644da9d530e3b9 < 6a01ad25aa4f3a02153cf1d112cb9b65865cd5d8affected
LinuxLinuxfd2c15ec1dd3c2fdfc6ff03bb9644da9d530e3b9 < c82241a9454b2d30d53b50884f94b7972ba44a5eaffected
LinuxLinuxfd2c15ec1dd3c2fdfc6ff03bb9644da9d530e3b9 < bc4940793aaa16a9cf90063b11d6926f8014a1b7affected
LinuxLinuxfd2c15ec1dd3c2fdfc6ff03bb9644da9d530e3b9 < 6fd220604f06c746760183df74b07384c3fdd660affected
LinuxLinuxfd2c15ec1dd3c2fdfc6ff03bb9644da9d530e3b9 < 6282d47b24b0c98d08d02807d676a7f67b4c052eaffected
LinuxLinuxfd2c15ec1dd3c2fdfc6ff03bb9644da9d530e3b9 < bb840ea69347aff7bde5a208e7b5b180669a7656affected
LinuxLinux3.4affected
LinuxLinux0 < 3.4unaffected
LinuxLinux5.10.270 <= 5.10.*unaffected
LinuxLinux5.15.221 <= 5.15.*unaffected
LinuxLinux6.1.188 <= 6.1.*unaffected
LinuxLinux6.6.157 <= 6.6.*unaffected
LinuxLinux6.12.110 <= 6.12.*unaffected
LinuxLinux6.18.52 <= 6.18.*unaffected
LinuxLinux7.2.6 <= 7.2.*unaffected
LinuxLinux7.3-rc1 <= *unaffected

Weaknesses

References