CVE-2026-72119
WysokieCVSS 7.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 6 - wyżej niż 6% wszystkich znanych CVE
Streszczenie
W jądrze Linux w module CAN BCM rozszerzono użycie blokady bcm_tx_lock dla aktualizacji danych i timerów. Nowe dane ramek są najpierw walidowane w osobnym buforze, a dopiero potem kopiowane pod blokadą, co zapobiega obserwacji częściowo zaktualizowanych ramek. Dodano również obsługę błędów dla memcpy_from_msg() oraz przeniesiono aktualizacje timerów pod blokadę, eliminując rozdarcie odczytu 64-bitowych wartości na platformach 32-bitowych.
Ocena ryzyka
Poprawka eliminuje potencjalne wyścigi i rozdarcia danych, co zwiększa stabilność i bezpieczeństwo systemów CAN.
Rekomendacja
Zastosuj poprawkę jądra, która wprowadza powyższe zmiany w module CAN BCM.
Oryginalny opis (angielski, źródło NVD)
In the Linux kernel, the following vulnerability has been resolved: can: bcm: extend bcm_tx_lock usage for data and timer updates Stage new CAN frame content for an existing tx op into a kmalloc()'d buffer and validate it there, mirroring the approach already used in bcm_rx_setup(). Only copy the validated data into op->frames while holding op->bcm_tx_lock, so bcm_can_tx() and bcm_tx_timeout_handler() can no longer observe a partially updated or unvalidated frame. Add a missing error path for memcpy_from_msg() when copying CAN frame data from userspace. Also move the kt_ival1/kt_ival2/ival1/ival2 updates in bcm_tx_setup() under op->bcm_tx_lock, and read kt_ival1/kt_ival2/count under the same lock in bcm_tx_set_expiry() and bcm_tx_timeout_handler(), closing the torn 64-bit ktime_t read on 32-bit platforms.

