CVE-2026-80935
NieznaneStreszczenie
W jądrze Linux w funkcji mt7996_mcu_get_eeprom() sterownika wifi mt76 (układ mt7996) adres docelowy kopii bloku EFUSE/EXT jest wyliczany na podstawie adresu raportowanego przez MCU (event->addr), a ograniczana jest jedynie długość kopii, nigdy przesunięcie docelowe w buforze eeprom.data. Złośliwe lub wadliwe urządzenie może zgłosić dowolny adres i wymusić zapis poza zakresem bufora eeprom.data o rozmiarze do MT7996_EXT_EEPROM_BLOCK_SIZE bajtów.
Ocena ryzyka
Podatność pozwala na uszkodzenie pamięci jądra (out-of-bounds write) przez kontrolowane urządzenie WiFi, co może prowadzić do destabilizacji systemu lub potencjalnego wykonania kodu w kontekście jądra. Wymaga jednak złośliwego lub uszkodzonego sprzętu.
Rekomendacja
Zaktualizuj jądro Linux do wersji zawierającej poprawkę, która odrzuca odpowiedzi MCU wskazujące adres spoza bufora eeprom.data przed wyliczeniem wskaźnika docelowego.
Inne podatności w Linux kernel (mt76 mt7996 driver)
Zobacz wszystkie- CVE-2026-80934Nieznane
W jądrze Linux sterowniki mt7996/mt7992 przekazują firmware'owi HW MAC-TXP dla ramek AddBA req, ale są urządzeniami FW-TXP. Przy zwalnianiu TX funkcja mt76_connac_txp_skb_unmap() błędnie dekoduje txp jako strukturę mt76_connac_fw_txp, przez co pętla unmap wykonuje się zero razy i mapowanie DMA skb w buf[1] nigdy nie jest zwalniane. Każda ramka AddBA req powoduje wyciek jednego mapowania TX DMA, co przy ciągłym ponownym łączeniu klientów wyczerpuje pulę swiotlb WED po około 1-2 dniach.
- CVE-2026-80933Nieznane
W jądrze Linux domyślny firmware EEPROM jest parsowany i kopiowany jako pełny EEPROM bez sprawdzenia jego długości. Obcięty plik może spowodować odczyt poza buforem firmware podczas walidacji wariantu lub kopii zapasowej.
Oryginalny opis (angielski, źródło NVD)
In the Linux kernel, the following vulnerability has been resolved: wifi: mt76: mt7996: bound the device EEPROM address before the EFUSE copy mt7996_mcu_get_eeprom() derives the destination of the EFUSE/EXT block copy from the address reported by the MCU response (event->addr, a device-controlled __le32) and clamps only the copy length, never the destination offset into dev->mt76.eeprom.data. A malicious or malfunctioning device can report an arbitrary address and drive an out-of-bounds write of up to MT7996_EXT_EEPROM_BLOCK_SIZE bytes past eeprom.data. Reject a response whose address would place the copy outside eeprom.data before deriving the destination pointer. Devices that echo the requested in-bounds offset are unaffected.

