PwnEscape (CVE-2026-99999) to krytyczna luka w jądrze Linuksa, oceniona na 9,3 w skali CVSS 3.1. Dotyczy przetwarzania pakietów IPv4: nieprawidłowe metadane dołączone do ruchu z maszyny wirtualnej mogą sprawić, że jądro zmieni nagłówek pakietu już po jego sprawdzeniu, a później zaufa zmienionym danym podczas fragmentacji. Zgłoszone skutki obejmują ujawnienie pamięci hosta; w warunkach laboratoryjnych badacz zademonstrował też ucieczkę z maszyny wirtualnej do hosta.
4
8
23
Jak metadane sumy kontrolnej prowadzą do odczytu pamięci
Niektóre urządzenia sieciowe przekazują jądru metadane informujące, że obliczenie sumy kontrolnej pakietu trzeba dokończyć później. W PwnEscape problem polega na tym, że do stosu IPv4 mogą trafić nieprawidłowe lub niezaufane metadane. Podczas uzupełniania sumy kontrolnej jądro może wtedy nadpisać część nagłówka, który wcześniej już przetworzyło. Poprawka dodaje kontrolę pola checksum_start przed wykonaniem tego obliczenia.
19
23
Powstaje w ten sposób rozbieżność między sprawdzeniem danych a ich późniejszym użyciem. Kod odpowiedzialny za fragmentację opiera się na zmienionym nagłówku IPv4, by ustalić, ile danych nagłówka skopiować. W opisanym teście potraktował nagłówek jako mający 60 bajtów, mimo że dostępnych było tylko 28 bajtów logicznych danych pakietu. Pozostałe 32 bajty pochodziły z pamięci leżącej poza logiczną granicą pakietu. To wartość z konkretnego testu, a nie informacja, że każdy pakiet ujawnia dokładnie 32 bajty.
18
Dlaczego to problem z izolacją maszyn wirtualnych
Błąd znajduje się w stosie sieciowym Linuksa, a nie w kodzie hipernadzorcy KVM. Ruch z maszyny gościa może przechodzić przez wspólną ścieżkę przetwarzania pakietów w jądrze hosta. Dlatego sama wymiana hipernadzorcy nie usuwa podatności w tej ścieżce. Zagrożone są hosty z podatnym jądrem, które przetwarzają kontrolowany przez atakującego ruch z maszyn wirtualnych.
3
8
Atak wymaga możliwości uruchomienia kodu wewnątrz maszyny gościa, by wysyłać spreparowane pakiety. Dostępne relacje nie opisują PwnEscape jako ataku bez uwierzytelnienia na dowolny komputer z Linuksem osiągalny przez internet.
4
7
Co zademonstrowali badacze
Według doniesień udało się wykazać ujawnianie pamięci hosta w produkcyjnych środowiskach testowych Vercel. Osobno badacz zademonstrował wykonanie kodu na poziomie hosta w laboratorium. To dwa odrębne wyniki: dostępne materiały nie potwierdzają, że w produkcyjnych systemach Vercel uzyskano uprawnienia roota.
4
6
Paulos Yibelo odkrył problem, biorąc udział w wyzwaniu bezpieczeństwa Sandbox organizowanym przez Vercel. W relacjach podano, że w ramach wyzwania nadesłano 1285 zgłoszeń, a PwnEscape było jedynym zakwalifikowanym jako krytyczne. Te dane nie dowodzą, że uzyskano dostęp do danych klientów.
24
30
37
Poprawki: co powinni sprawdzić administratorzy
Poprawka w głównym repozytorium Linuksa jest oznaczona jako commit 6785011f8b16 o tytule ipv4: validate checksum_start before completing checksum. Wydania stabilne zawierające poprawkę to 5.10.272, 5.15.223, 6.1.190, 6.6.159, 6.12.113, 6.18.57 i 7.2.11.
12
27
Ponieważ luka dotyczy przetwarzania pakietów przez jądro hosta, administratorzy powinni sprawdzić i zaktualizować właśnie jądro hosta. Aktualizacja oprogramowania wewnątrz maszyn gości nie zastępuje tej poprawki. Dystrybucje mogą stosować własne numery wersji i harmonogramy wydań, dlatego należy sprawdzić komunikat dostawcy i potwierdzić, że host działa na załatanej wersji jądra.
1
6
Według informacji AlmaLinux z 16 października poprawione jądra były już dostępne. To stan na konkretny dzień, a nie pełny obraz wdrożeń we wszystkich dystrybucjach — dostępność poprawek może się różnić w zależności od dostawcy i wydania.
6