Katalog CVE

CVE-2026-98664

Niskie ryzyko· EPSS 10%
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.20%

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

Streszczenie

W jądrze Linux w sterowniku iio: imu: adis16400 wykryto niechronione odczyty debugfs. Struktura adis16400_serial_number_fops jest zakodowana ręcznie i nigdy nie wywołuje debugfs_file_get(), więc debugfs_remove_recursive() nie czeka na trwający odczyt, a odłączenie zwalnia iio_dev pod nim. Poprzednia zmiana przekształciła product_id i flash_count na DEFINE_DEBUGFS_ATTRIBUTE, ale przeniosła wszystkie trzy pliki do debugfs_create_file_unsafe(). Plik serial_number wyświetla trzy rejestry i nie może być przekonwertowany bez zmiany zwracanych danych. Należy użyć debugfs_create_file().

Ocena ryzyka

Może prowadzić do użycia zwolnionej pamięci (use-after-free) i awarii jądra podczas jednoczesnego odczytu debugfs i odłączenia urządzenia adis16400.

Rekomendacja

Zaktualizuj jądro Linux do wersji zawierającej poprawkę używającą debugfs_create_file() dla pliku serial_number. Unikaj jednoczesnego odczytu debugfs i odłączania urządzenia do czasu aktualizacji.

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: iio: imu: adis16400: fix unprotected debugfs reads adis16400_serial_number_fops is open coded and never calls debugfs_file_get(), so debugfs_remove_recursive() does not wait for a read in progress and unbind frees the iio_dev underneath it. Commit ae1d37a9bb4b ("iio: imu: adis16400: use DEFINE_DEBUGFS_ATTRIBUTE instead of DEFINE_SIMPLE_ATTRIBUTE") converted product_id and flash_count to DEFINE_DEBUGFS_ATTRIBUTE, which protects itself, but moved all three files to debugfs_create_file_unsafe(). serial_number prints three registers as "%.4x-%.4x-%.4x" and DEFINE_DEBUGFS_ATTRIBUTE() formats a single u64, so it cannot be converted without changing what the file returns. adis16475 and adis16550 already use debugfs_create_file() for their open coded files. Use it here too.

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