Katalog CVE

CVE-2026-68203

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

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.21%

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

Streszczenie

W jądrze Linux w sterowniku vivid występują błędy w funkcji vivid_init() dotyczące czyszczenia zasobów. Gdy platform_device_register() zawiedzie, struktura device w vivid_pdev jest już zainicjalizowana, ale ścieżka błędu nie zwalnia referencji do urządzenia, co prowadzi do wycieku referencji. Dodatkowo etykieta unreg_driver błędnie wywołuje platform_driver_register() zamiast platform_driver_unregister(), co psuje czyszczenie, gdy tworzenie workqueue zawiedzie po pomyślnej rejestracji sterownika.

Ocena ryzyka

Wycieki referencji i nieprawidłowe czyszczenie mogą prowadzić do problemów z zarządzaniem pamięcią i zasobami, co może powodować niestabilność systemu lub trudne do zdiagnozowania błędy.

Rekomendacja

Zastosuj poprawkę jądra Linux, która dodaje wywołanie platform_device_put() przed skokiem do wspólnej ścieżki czyszczenia oraz poprawia wywołanie w etykiecie unreg_driver na platform_driver_unregister().

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: media: vivid: fix cleanup bugs in vivid_init() When platform_device_register() fails in vivid_init(), the embedded struct device in vivid_pdev has already been initialized by device_initialize(), but the failure path jumps to free_output_strings without dropping the device reference for the current platform device: vivid_init() -> platform_device_register(&vivid_pdev) -> device_initialize(&vivid_pdev.dev) -> setup_pdev_dma_masks(&vivid_pdev) -> platform_device_add(&vivid_pdev) This leads to a reference leak when platform_device_register() fails. Fix this by calling platform_device_put() before jumping to the common cleanup path. Also, the unreg_driver label incorrectly calls platform_driver_register() instead of platform_driver_unregister(), which breaks cleanup when workqueue creation fails after successful driver registration. Fix that as well. The reference leak was identified by a static analysis tool I developed and confirmed by manual review. The incorrect cleanup call was found during code inspection.

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