Katalog CVE

CVE-2026-12232

ŚrednieCVSS 6.1
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.10%

Percentyl 1 - wyżej niż 1% wszystkich znanych CVE

Streszczenie

W sterowniku Intel ALH (dai_alh_get_properties) brak walidacji zakresu dla parametru stream_id, co prowadzi do odczytu poza zakresem z tablicy alh_handshake_map i wycieku informacji z jądra. Podatność można wykorzystać z poziomu przestrzeni użytkownika, jeśli dostęp do urządzenia ALH jest przyznany.

Ocena ryzyka

Lokalny atakujący może uzyskać nieautoryzowany dostęp do danych jądra, a także spowodować awarię systemu (denial of service) przez wywołanie błędu strony.

Rekomendacja

Zastosuj poprawkę, która odrzuca ujemne i zbyt duże wartości stream_id, oraz ogranicz dostęp do urządzenia ALH tylko dla zaufanych procesów.

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

The Intel ALH digital-audio-interface driver function dai_alh_get_properties() in drivers/dai/intel/alh/alh.c used a caller-supplied int stream_id with no range validation. The value indexes the fixed-size static const uint8_t alh_handshake_map[64] array and scales a FIFO register address, so an out-of-range stream_id produces an out-of-bounds read of one byte at an attacker-chosen signed offset from the array. That byte is written into prop->dma_hs_id and the resulting struct dai_properties is copied back to the caller, leaking it. dai_get_properties_copy() is a Zephyr __syscall, and its verifier z_vrfy_dai_get_properties_copy() (drivers/dai/dai_handlers.c) validates only the device-object permission and the destination buffer, not stream_id. A user-mode thread that has been granted access to the ALH DAI device object can therefore call the syscall with an arbitrary stream_id, crossing the userspace/kernel sandbox boundary. The impact is a one-byte-per-call arbitrary-offset kernel information disclosure (and leakage of a computed kernel address via fifo_address); a stream_id that resolves to an unmapped page faults in kernel context, giving a local denial of service. Exploitation requires CONFIG_USERSPACE and device access, making this a local, moderate-severity issue. The fix rejects negative and too-large stream_id values up front and returns NULL, which the copy wrapper maps to -ENOENT.

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