CVE-2025-22060
ŚrednieCVSS 4.7Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 3 - wyżej niż 3% wszystkich znanych CVE
Streszczenie
W jądrze Linux w sterowniku mvpp2 wykryto podatność na uszkodzenie pamięci TCAM parsera. Brak synchronizacji przy równoczesnym dostępie do rejestrów indeksujących TCAM i SRAM może prowadzić do zapisu do niewłaściwych wierszy, a także do błędów TOCTOU przy alokacji wierszy. Problem został zaobserwowany podczas równoległego wywoływania funkcji mvpp2_set_rx_mode() na dwóch rdzeniach, co skutkowało uszkodzeniem wpisu MVPP2_PE_MAC_UC_PROMISCUOUS i odrzucaniem całego ruchu unicast.
Ocena ryzyka
Organizacja narażona jest na blokowanie całego ruchu unicast w interfejsach sieciowych korzystających ze sterownika mvpp2, co może prowadzić do przerw w działaniu usług sieciowych i utraty pakietów.
Rekomendacja
Należy niezwłocznie zaktualizować jądro Linux do wersji zawierającej poprawkę zabezpieczającą operacje na TCAM/SRAM przed równoczesnymi modyfikacjami. W przypadku systemów produkcyjnych zaleca się zastosowanie łatki bezpieczeństwa lub tymczasowe ograniczenie liczby rdzeni obsługujących przerwania sieciowe.
Oryginalny opis (angielski, źródło NVD)
In the Linux kernel, the following vulnerability has been resolved: net: mvpp2: Prevent parser TCAM memory corruption Protect the parser TCAM/SRAM memory, and the cached (shadow) SRAM information, from concurrent modifications. Both the TCAM and SRAM tables are indirectly accessed by configuring an index register that selects the row to read or write to. This means that operations must be atomic in order to, e.g., avoid spreading writes across multiple rows. Since the shadow SRAM array is used to find free rows in the hardware table, it must also be protected in order to avoid TOCTOU errors where multiple cores allocate the same row. This issue was detected in a situation where `mvpp2_set_rx_mode()` ran concurrently on two CPUs. In this particular case the MVPP2_PE_MAC_UC_PROMISCUOUS entry was corrupted, causing the classifier unit to drop all incoming unicast - indicated by the `rx_classifier_drops` counter.

