Katalog CVE

CVE-2026-90314

Nieznane
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

W jądrze Linux w funkcji rsc_table_for_each_entry() offset z firmware (u32) był przechowywany jako int ze znakiem. Spreparowany offset, np. 0xFFFFFFF0, stawał się wartością -16, co omijało sprawdzenie dostępności i umożliwiało odczyt poza zakresem bufora (hdr->type).

Ocena ryzyka

Możliwy jest odczyt poza zakresem pamięci jądra wywołany przez spreparowany firmware remoteproc, co może prowadzić do wycieku danych lub awarii systemu.

Rekomendacja

Zaktualizuj jądro Linux do wersji przechowującej offset jako u32 i walidującej go za pomocą porównań bez znaku przed arytmetyką wskaźników.

Inne podatności w Linux kernel

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

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.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS