Katalog CVE

CVE-2026-89771

WysokieCVSS 7.8
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.12%

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

Streszczenie

W jądrze Linux rozwiązano wyścig w ring-buffer podczas zmiany rozmiaru subbufora przez czytelników. trace_buffer subbuf_size jest odczytywany bez blokady w ring_buffer_read_page() i ring_buffer_read_start(), podczas gdy może być jednocześnie zmieniany przez ring_buffer_subbuf_order_set(). Poprawka używa bpage::order zamiast trace_buffer::subbuf_size oraz dodaje blokadę mutex w ring_buffer_read_start().

Ocena ryzyka

Wyścig może prowadzić do odczytu niespójnych danych, uszkodzenia pamięci lub awarii jądra podczas jednoczesnego odczytu i zmiany rozmiaru bufora.

Rekomendacja

Zaktualizuj jądro Linux do wersji zawierającej poprawkę synchronizującą odczyt bufora z modyfikacją rozmiaru subbufora.

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: ring-buffer: Fix subbuf resize race with ring buffer readers trace_buffer subbuf_size is read lockless in ring_buffer_read_page() and ring_buffer_read_start(), while it can simultaneously be resized with ring_buffer_subbuf_order_set(). Instead of trace_buffer::subbuf_size, use bpage::order in ring_buffer_read_start() and ring_buffer_read_page(). In ring_buffer_read_start(), even with resize_disabled, there is still a possibility of a race with a buffer modification. Hold the trace_buffer mutex to synchronise with any pending ring buffer order modification. trace_buffer::subbuf_size is now actually useless, remove it. Also, create accessors rb_subbuf_capacity() and rb_page_capacity() which return the actual size available for storing events, while rb_subbuf_size() returns the actual subbuf page-size.

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