Dirty Frag: czwarty sposób na roota przez page cache (CVE-2026-43284, CVE-2026-43500)
Tydzień po CopyFailu Hyunwoo Kim ujawnił kolejną lokalną eskalację uprawnień opartą o ten sam prymityw: zapis do page cache pliku tylko do odczytu. Tym razem nie przez crypto, tylko przez obsługę fragmentacji w dwóch protokołach sieciowych. Nazwa: Dirty Frag.
To nie jest pojedynczy bug, tylko łańcuch dwóch CVE:
- CVE-2026-43284 w modułach ESP (Encapsulating Security Payload, czyli IPsec):
esp4,esp6. CVSS 8.8 wg kernel.org, 7.8 wg CISA. Kod podatny od około 2017 (jądra 4.x). - CVE-2026-43500 w RxRPC (protokół AFS): moduł
rxrpc. CVSS 7.8. Podatne od około 2023 (jądra 6.2+).
Dlaczego to ta sama rodzina
Dirty COW, Dirty Pipe i CopyFail miały wspólny mianownik: nieautoryzowany zapis do page cache daje natychmiastową eskalację, bo można podmienić zawartość pliku, który system uznaje za zaufany (np. /usr/bin/su). Dirty Frag robi dokładnie to samo, tylko punktem wejścia jest błędna obsługa fragmentów w ESP i RxRPC. Stąd „Frag" w nazwie.
Efekt końcowy jest identyczny: nieuprzywilejowany użytkownik zostaje rootem. Publiczny PoC jest już dostępny (V4bel/dirtyfrag), a Microsoft raportuje wykorzystanie w atakach post-compromise.
Czy mnie dotyczy
Podatność wymaga załadowanych modułów. Sprawdź:
lsmod | grep -E 'esp4|esp6|rxrpc'
Jeśli któryś jest na liście, jesteś w zasięgu odpowiedniego CVE (o ile nie masz jeszcze patcha). esp4/esp6 są często ładowane na maszynach z IPsec/VPN, rxrpc znacznie rzadziej (głównie AFS).
Możesz też sprawdzić wersję jądra w zakładce CVE Kernel Security Checker: wpisz wynik uname -r, a narzędzie pokaże oba wpisy Dirty Frag, jeśli Twoja wersja bazowa jest w zasięgu.
Mitygacja
Patch dla jądra dopiero się wdraża po dystrybucjach (w chwili pisania status u większości to „work in progress"). Mainline ma już poprawki: commit f4c50a4 dla ESP i aa54b1d dla RxRPC. Zanim trafią do Twojej dystrybucji, najprostsza obrona to zablokowanie podatnych modułów, jeśli ich nie używasz:
sudo tee /etc/modprobe.d/disable-dirtyfrag.conf << 'EOF'
install esp4 /bin/false
install esp6 /bin/false
install rxrpc /bin/false
EOF
Uwaga: blokada esp4/esp6 zerwie IPsec, więc tego nie rób na maszynach, które realnie używają VPN czy tuneli IPsec. Tam trzeba poczekać na patch dystrybucji. rxrpc możesz spokojnie zablokować, jeśli nie korzystasz z AFS.
Po zablokowaniu sprawdź, czy moduły nie są już załadowane (lsmod), bo aktywny moduł wymaga restartu.
Status
To świeża sprawa (ujawniona 7 maja 2026), więc numery załatanych wersji per dystrybucja jeszcze się ustalają. Trzymaj się changeloga swojej dystrybucji i aktualizuj jądro, gdy tylko pojawi się errata.
Ta sama rodzina podatności: CopyFail: 9 lat ukrytej eskalacji uprawnień | Dirty COW, Dirty Pipe, CopyFail: trzy sposoby na roota
Sprawdź swoje jądro: Kernel Security Checker