CVE-2026-19676
WysokieCVSS 7.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 10 - wyżej niż 10% wszystkich znanych CVE
Streszczenie
Podatność w weryfikatorze trybu użytkownika dla wywołania systemowego peci_transfer() w Zephyr RTOS. Funkcja z_vrfy_peci_transfer() sprawdzała jedynie uprawnienia do obiektu urządzenia i kopiowała strukturę peci_msg, nie weryfikując wskaźników buf ani wartości len w osadzonych strukturach tx_buffer i rx_buffer, które były przekazywane do sterownika bez sprawdzenia. Umożliwia to użytkownikowi z dostępem do urządzenia PECI zapis do pamięci jądra, odczyt pamięci jądra oraz wywołanie błędu w trybie supervisora.
Ocena ryzyka
Lokalny użytkownik posiadający kod w wątku trybu użytkownika z dostępem do urządzenia PECI może uzyskać pełne obejście izolacji i wykonać dowolny zapis do pamięci jądra, co prowadzi do naruszenia integralności i potencjalnie wykonania kodu z uprawnieniami supervisora. Wymagane jest włączenie CONFIG_USERSPACE oraz jednego ze sterowników PECI (NPCX, XEC lub ITE IT8XXX2).
Rekomendacja
Zaktualizować system Zephyr do wersji zawierającej poprawkę dodającą sprawdzenia K_SYSCALL_MEMORY_READ() i K_SYSCALL_MEMORY_WRITE() dla osadzonych buforów oraz zabezpieczenie size_add_overflow(). Do czasu aktualizacji ograniczyć dostęp do urządzeń PECI wyłącznie do zaufanych aplikacji.
Powiązane podatności
- CVE-2026-121933Krytyczne
W urządzeniu Linksys E5350 w wersji 1.0.00.037 wykryto lukę w funkcji save_settings w pliku /wizard/apply.cgi komponentu Setup Wizard. Manipulacja argumentem wizard_router_pwd może prowadzić do braku uwierzytelnienia. Atak można przeprowadzić zdalnie, a exploit został opublikowany i może być wykorzystany.
- CVE-2026-113373Krytyczne
Sonatype Nexus Repository 3 Pro nie sprawdza statusu konta lokalnego, gdy użytkownik loguje się przez skonfigurowanego dostawcę tożsamości SAML lub OAuth2/OpenID Connect. Użytkownik, którego konto zostało wyłączone lub zablokowane przez administratora w Nexus Repository, może zalogować się ponownie przy użyciu ważnych poświadczeń dostawcy tożsamości dla tego samego konta i otrzymać nową sesję z rolami tego konta.
- CVE-2026-122120Krytyczne
W wtyczkach Yealink w wersjach przed 2.35.219.0 występuje podatność nieautoryzowanego zapisu plików w określonych scenariuszach. Może ona zostać wykorzystana przez atakującego do zdalnego wykonania kodu.
- CVE-2026-121932Krytyczne
W urządzeniu Linksys E5350 1.0.00.037 funkcja system w pliku /wizard/apply.cgi nieprawidłowo obsługuje argument ping_ip/traceroute_ip, co prowadzi do wstrzyknięcia poleceń systemu operacyjnego. Atak można przeprowadzić zdalnie, a exploit jest publicznie dostępny.
- CVE-2026-121931Krytyczne
W Linksys WRT54GL 4.30.18 funkcja system w pliku apply.cgi (komponent Traceroute Diagnostic) nieprawidłowo obsługuje argument traceroute_ip, co umożliwia wstrzyknięcie poleceń systemu operacyjnego. Atak można przeprowadzić zdalnie, a exploit jest publicznie ujawniony.
- CVE-2026-121930Krytyczne
W Linksys WRT54GL 4.30.18 funkcja system w pliku apply.cgi (komponent Ping Diagnostic) nieprawidłowo obsługuje argument ping_ip, co prowadzi do wstrzyknięcia poleceń systemu operacyjnego. Atak można zainicjować zdalnie, a exploit jest publicznie dostępny.
- CVE-2026-113780Krytyczne
W ESP-IDF (framework IoT Espressif) w wersjach od 5.5.5 do 5.5.6, 6.0.4 i 6.1.1 wpis pułapki esp_tee zapisuje ramkę rejestrów kontrolowaną przez wywołującego przez wskaźnik stosu dostarczony przez REE, zanim przełączy się na zaufany stos TEE lub zweryfikuje wskaźnik. Lokalna nieuprzywilejowana aplikacja REE może skierować ten zapis w trybie maszynowym do pamięci wyłącznej TEE na układach ESP32-C5, ESP32-C6, ESP32-C61 i ESP32-H2, naruszając granicę izolacji REE/TEE.
- CVE-2026-107846Krytyczne
W bibliotece bitcoinjs-lib (JavaScript dla Node.js i przeglądarek) w wersjach od 2.3.0 do 5.2.1, 6.1.8 i 7.0.2 funkcja fastMerkleRoot dopełnia nieparzyste poziomy drzewa Merkle'a przez hashowanie ostatniego węzła z samym sobą, ale nie zgłasza sąsiadujących zduplikowanych hashy. Ścieżki walidacji mogą zaakceptować przeliczony korzeń bez sprawdzenia mutacji, umożliwiając peerowi dodanie zduplikowanych transakcji przy zachowaniu oryginalnego korzenia Merkle'a, nagłówka bloku i proof of work.
- CVE-2026-121953Krytyczne
FreeRDP w wersjach przed 3.32.2 zawiera podatność use-after-free w dynamicznym kanale wirtualnym rdpgfx po stronie klienta. Zduplikowany kanał o nowym ChannelId nadpisuje pojedynczy slot callbacku listenera, który funkcja rdpgfx_on_close zwalnia bez wyczyszczenia. Złośliwy serwer RDP może otworzyć i zamknąć taki kanał, a następnie wysłać PDU na oryginalnym kanale, powodując awarię klienta lub potencjalne wykonanie kodu.
- CVE-2026-121952Krytyczne
FreeRDP w wersjach przed 3.32.2 ma podatność out-of-bounds write w proxy, ponieważ funkcja rdp_read_bitmap_cache_v2_capability_set odrzuca tylko wartości numCellCaches większe niż 5, podczas gdy tablica komórek bitmap cache v2 jest później odwoływana pod stałymi indeksami od 0 do 4. Klient łączący się z proxy może zadeklarować mniej niż pięć komórek cache w Confirm Active, powodując uszkodzenie sterty, wyciek danych sterty do backendu lub awarię.
Oryginalny opis (angielski, źródło NVD)
The user-mode verifier for the peci_transfer() system call, z_vrfy_peci_transfer() in drivers/peci/peci_handlers.c, checked only the device object permission and copied the caller-supplied struct peci_msg with k_usermode_from_copy(). That copy validates the outer structure only; the buf pointers and len values inside the embedded struct peci_buf members tx_buffer and rx_buffer remained fully caller-controlled and were passed unchecked to the driver. Every in-tree PECI driver dereferences those pointers in supervisor mode: peci_npcx_transfer() in drivers/peci/peci_npcx.c and peci_it8xxx2_transfer() in drivers/peci/peci_ite_it8xxx2.c copy hardware bytes into rx_buffer.buf[i] and read command bytes out of tx_buffer.buf[i], and peci_xec_read()/peci_xec_write() in drivers/peci/peci_mchp_xec.c do the same with no bound on rx_buffer.len at all. A user-mode thread that has been granted the PECI device object — the normal way an application exposes a device under CONFIG_USERSPACE — could therefore point rx_buffer.buf at kernel data structures and have the driver write hardware-supplied bytes there, or point tx_buffer.buf at kernel memory and have its contents pushed onto the PECI/eSPI out-of-band bus. The impact is a full user-mode-to-kernel escape: an arbitrary kernel write primitive (integrity and, through it, code execution at supervisor privilege), an arbitrary kernel read disclosed to a PECI bus observer, and a trivially reachable supervisor-mode fault if an unmapped address is supplied. Exploitation requires CONFIG_USERSPACE=y, one of the PECI drivers enabled (CONFIG_PECI_NPCX, CONFIG_PECI_XEC or CONFIG_PECI_ITE_IT8XXX2), and local code execution in a user-mode thread holding the PECI device. The fix adds K_SYSCALL_MEMORY_READ() and K_SYSCALL_MEMORY_WRITE() checks over the two embedded buffers, with a size_add_overflow() guard on the frame-check-sequence byte accounted for in the RX length.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

