Katalog CVE

CVE-2026-31680

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 wykryto podatność w mechanizmie etykiet przepływu IPv6 (flowlabel). Funkcja `ip6fl_seq_show()` odczytuje dane z globalnej tablicy mieszającej pod osłoną bloku RCU, ale etykiety ekskluzywne zwalniały opcje (`fl->opt`) natychmiast po spadku licznika referencji do zera, podczas gdy struktura `ip6_flowlabel` pozostawała widoczna w tablicy. Prowadziło to do wyścigu, w którym równoczesny odczyt z `/proc/net/ip6_flowlabel` mógł uzyskać dostęp do już zwolnionej pamięci, powodując awarię systemu.

Ocena ryzyka

Organizacja narażona jest na ryzyko awarii systemu (kernel panic) podczas odczytu pliku `/proc/net/ip6_flowlabel` w momencie, gdy inny proces zwalnia etykietę przepływu. Może to prowadzić do przerwania działania usług krytycznych i potencjalnej utraty danych.

Rekomendacja

Należy niezwłocznie zaktualizować jądro Linux do wersji zawierającej poprawkę, która opóźnia zwolnienie opcji `fl->opt` do momentu wywołania `fl_free_rcu()`. Zaleca się monitorowanie dystrybucji pod kątem wydania łatki i zastosowanie jej w trybie pilnym.

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: net: ipv6: flowlabel: defer exclusive option free until RCU teardown `ip6fl_seq_show()` walks the global flowlabel hash under the seq-file RCU read-side lock and prints `fl->opt->opt_nflen` when an option block is present. Exclusive flowlabels currently free `fl->opt` as soon as `fl->users` drops to zero in `fl_release()`. However, the surrounding `struct ip6_flowlabel` remains visible in the global hash table until later garbage collection removes it and `fl_free_rcu()` finally tears it down. A concurrent `/proc/net/ip6_flowlabel` reader can therefore race that early `kfree()` and dereference freed option state, triggering a crash in `ip6fl_seq_show()`. Fix this by keeping `fl->opt` alive until `fl_free_rcu()`. That matches the lifetime already required for the enclosing flowlabel while readers can still reach it under RCU.

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