CVE-2026-74630
WysokieCVSS 7.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 2 - wyżej niż 2% wszystkich znanych CVE
Streszczenie
W jądrze Linuxa funkcja in6_dev_get() może wskrzesić obiekt inet6_dev po jego zwolnieniu. Odczytuje dev->ip6_ptr pod RCU, a następnie bezwarunkowo zwiększa licznik referencji. Jeśli teardown urządzenia wyczyści wskaźnik i zwolni ostatnią referencję między tymi operacjami, inkrementacja może wskrzesić obiekt, którego zwolnienie RCU już zostało zaplanowane, prowadząc do użycia po zwolnieniu.
Ocena ryzyka
Ryzyko obejmuje użycie po zwolnieniu pamięci, co może prowadzić do awarii systemu lub eskalacji uprawnień w jądrze.
Rekomendacja
Zaleca się zastosowanie poprawki jądra, która używa refcount_inc_not_zero() i zwraca NULL, gdy licznik osiągnie zero.
Inne podatności w Linux kernel
Zobacz wszystkie- CVE-2026-99215Nieznane
W jądrze Linux w podsystemie power supply występuje luka use-after-free. Jeśli zasilacz zostanie wyrejestrowany (power_supply_unregister) w trakcie wykonywania callbacku external_power_changed(), sterownik może zwolnić dane, do których callback nadal próbuje uzyskać dostęp, co prowadzi do awarii jądra (NULL pointer dereference).
- CVE-2026-99210Nieznane
W sterowniku accel/rocket jądra Linux funkcja rocket_probe() zapisuje wynik rocket_device_init() w globalnym wskaźniku rdev przed sprawdzeniem, czy jest to wskaźnik błędu. Przy niepowodzeniu rdev pozostaje jako ERR_PTR, a późniejsza próba może pominąć inicjalizację i wyłuskać wskaźnik błędu przy odczycie rdev->num_cores.
- CVE-2026-99209Nieznane
W sterowniku drm/xe jądra Linux funkcja xe_evict_flags() odczytuje tbo->resource->mem_type, ale bufor BO może trafić do eksmisji bez ttm.resource, np. importowany dma-buf, którego zasób zwolniono podczas rozbierania. Prowadzi to do wyłuskania wskaźnika NULL i błędu jądra.
- CVE-2026-99208Nieznane
W sterowniku drm/xe/oa jądra Linux bufory BO typu ttm_bo_type_kernel nie są gwarantowanie zerowane przy alokacji i mogą zawierać dane z wcześniej zwolnionych stron. Ponieważ bufor OA jest mapowalny przez przestrzeń użytkownika, może to ujawnić nieaktualną zawartość pamięci jądra.
- CVE-2026-99207Nieznane
W jądrze Linux w podsystemie scsi: target funkcja target_do_delayed_work() pobierała blokadę delayed_cmd_lock za pomocą zwykłego spin_lock(), nie wyłączając przerwań, podczas gdy wszystkie inne miejsca używają spin_lock_irqsave(). Odkąd komendy mogą być kończone w kontekście przerwania (complete_type=1 z direct_compl_supp), może to prowadzić do zakleszczenia, gdy ukończenie komendy trafi na ten sam CPU, na którym work item trzyma blokadę.
- CVE-2026-99205Nieznane
W jądrze Linux w funkcji sched_change_end() występuje wyścig z __sched_setscheduler() dla zadań zakolejkowanych, ale nieuruchomionych. Po zmianie klasy zadania (np. z SCHED_OTHER na SCHED_RR) wskaźnik rq->next_class nie jest aktualizowany, a wskaźnik potrzeby przeplanowania nie jest ustawiany, co prowadzi do bezczynności CPU mimo obecności gotowego do uruchomienia zadania.
- CVE-2026-99200Nieznane
W jądrze Linux sterownik sieciowy hisi_femac (net: hisilicon) przypisuje netdev_ops dopiero po podłączeniu PHY. Gdy włączone jest CONFIG_NET_SHAPER, phy_attach_direct() odczytuje niezainicjowane netdev_ops, co powoduje panikę jądra z powodu dereferencji NULL.
- CVE-2026-99199Nieznane
W jądrze Linux sterownik hip04_eth (net: hisilicon) wywołuje of_phy_connect() przed przypisaniem ndev->netdev_ops. Przy włączonym CONFIG_NET_SHAPER phy_attach_direct() odczytuje niezainicjowane netdev_ops, powodując panikę jądra z dereferencją NULL.
- CVE-2026-99198Nieznane
W jądrze Linux sterownik owl_emac (net: ethernet: actions) wywołuje owl_emac_phy_init(), która podłącza PHY, przed przypisaniem netdev->netdev_ops. Przy włączonym CONFIG_NET_SHAPER phy_attach_direct() odczytuje niezainicjowane netdev_ops, powodując panikę jądra z dereferencją NULL.
- CVE-2026-99197Nieznane
W jądrze Linux sterownik mv643xx_eth podłącza PHY przed przypisaniem dev->netdev_ops. Przy włączonym CONFIG_NET_SHAPER phy_attach_direct() odczytuje niezainicjowane netdev_ops, powodując panikę jądra z dereferencją NULL.
Oryginalny opis (angielski, źródło NVD)
In the Linux kernel, the following vulnerability has been resolved: ipv6: prevent in6_dev_get() from resurrecting inet6_dev in6_dev_get() reads dev->ip6_ptr under RCU and then unconditionally increments its refcount. Device teardown can clear the pointer and drop the last reference between these operations. The increment then resurrects an object whose RCU free has already been queued, so callers can use it after it is freed. Use refcount_inc_not_zero() and return NULL when the object has already reached zero. RCU keeps the memory accessible through the attempted reference acquisition, and a successful increment pins the object for the caller. An independent run on the exact unpatched 6f5156d7a31a (v7.2-rc3) kernel reproduced the invalid reference acquisition as UID 1000: refcount_t: addition on 0; use-after-free. ip6_mc_source+0xef4/0x17e0 It was followed by the corresponding reference underflow in ip6_mc_source(). The supplied trace from the same unpatched revision additionally shows the access after the RCU read-side section ends: BUG: KASAN: slab-use-after-free in mutex_lock+0x76/0xe0 Write of size 8 at addr ffff888015b50240 by task poc/1219 Bug found and triaged by OpenAI Security Research and validated by Trail of Bits.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

