Katalog CVE

CVE-2026-89853

Nieznane
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

W sterowniku scsi: qla2xxx jądra Linux funkcja qla2x00_free_fce_trace() zwalniała i czyściła ha->fce trzymając tylko fce_mutex. Konsumenci zrzutu firmware qla27xx_fwdt_entry_t264() i qla25xx_copy_fce() odczytują ha->fce (sprawdzenie NULL, a następnie kopiowanie bufora) pod hardware_lock i nigdy nie biorą fce_mutex. Wyłączenie FCE przez debugfs mogło więc zwolnić bufor DMA między sprawdzeniem NULL a kopiowaniem, powodując use-after-free.

Ocena ryzyka

Use-after-free może prowadzić do uszkodzenia pamięci jądra lub awarii systemu. Ryzyko występuje przy jednoczesnym zrzucie firmware i wyłączeniu FCE przez debugfs.

Rekomendacja

Zaktualizuj jądro Linux do wersji zawierającej poprawkę, która publikuje ha->fce pod hardware_lock, a następnie zwalnia bufor DMA po zwolnieniu blokady. Do czasu wdrożenia poprawki unikaj równoczesnego wyłączania FCE przez debugfs podczas zrzutu firmware.

Inne podatności w Linux kernel (qla2xxx)

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

In the Linux kernel, the following vulnerability has been resolved: scsi: qla2xxx: Fix FCE trace use-after-free during firmware dump qla2x00_free_fce_trace() freed and cleared ha->fce while holding only fce_mutex. The firmware-dump consumers qla27xx_fwdt_entry_t264() and qla25xx_copy_fce() read ha->fce (NULL check followed by a copy of the buffer) under hardware_lock and never take fce_mutex. A debugfs FCE disable could therefore free the DMA buffer between a dump's NULL check and its copy, resulting in a use-after-free. Unpublish ha->fce under hardware_lock, then release the lock and free the DMA buffer (dma_free_coherent() may sleep). A concurrent dump either completes its check and copy with the buffer still valid, or observes ha->fce == NULL and skips it.

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