CVE Catalog

CVE-2026-90314

Unknown
Published: Translated: NVD NIST

Summary

In the Linux kernel, rsc_table_for_each_entry() stored a firmware-supplied u32 offset into a signed int. A crafted offset such as 0xFFFFFFF0 became -16, bypassing the availability check and allowing an out-of-bounds read of hdr->type.

Risk Assessment

An out-of-bounds kernel memory read can be triggered by crafted remoteproc firmware, potentially leading to data leakage or system crash.

Recommendation

Update the Linux kernel to a version that stores the offset as u32 and validates it with unsigned comparisons before any pointer arithmetic.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

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.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS