Wykryta niedawno podatność CVE-2026-31431, znana jako Copy Fail, uderza w fundamenty bezpieczeństwa jądra Linux, umożliwiając lokalną eskalację uprawnień do poziomu root na niemal każdej dystrybucji wydanej po 2017 roku,,. Błąd ten, tkwiący w kodzie od dziewięciu lat, ma krytyczne znaczenie dla bezpieczeństwa środowisk chmurowych i klastrów Kubernetes, ponieważ pozwala na ucieczkę z kontenera przy użyciu skryptu o objętości mniejszej niż jeden kilobajt,,.
Mechanika Copy Fail: 4 bajty niszczące izolację
Podatność Copy Fail to błąd logiczny w module authencesn (szablon kryptograficzny AEAD używany m.in. przez IPsec) wewnątrz podsystemu krypto jądra Linux,,. Problem wynika z optymalizacji wprowadzonej w 2017 roku, która umożliwiła operacje typu „in-place”,,. W połączeniu z wywołaniem systemowym splice(), które przekazuje dane z plików do gniazd AF_ALG przez referencję (bez kopiowania), atakujący może doprowadzić do sytuacji, w której jądro traktuje strony pamięci podręcznej pliku (page cache) jako bufor zapisu,,,.
W rezultacie lokalny użytkownik bez uprawnień może wykonać kontrolowany, 4-bajtowy zapis do pamięci podręcznej dowolnego pliku, który ma prawo odczytać,,. Atak najczęściej celuje w binaria z ustawionym bitem setuid, takie jak /usr/bin/su,,. Nadpisując zaledwie 4 bajty w pamięci RAM (gdzie przechowywana jest kopia pliku), atakujący wstrzykuje shellcode, który jest wykonywany z uprawnieniami root w momencie uruchomienia programu,,.
Niewidzialność ataku i skala zagrożenia
Z perspektywy architekta bezpieczeństwa najbardziej alarmujący jest fakt, że Copy Fail nie pozostawia śladów na dysku,,. Ponieważ jądro nie oznacza zmodyfikowanej strony jako „dirty”, zmiany nigdy nie są zapisywane na nośnik trwały,,. Oznacza to, że: Standardowe narzędzia do sprawdzania integralności plików (np. sha256sum) nie wykażą żadnych zmian w pliku na dysku,,. Atak jest całkowicie deterministyczny — w przeciwieństwie do błędów typu race condition (jak Dirty COW), działa natychmiastowo i bez ryzyka zawieszenia systemu,,. * Podatność dotyczy wszystkich głównych dystrybucji, w tym Ubuntu 24.04 LTS, Amazon Linux 2023, Red Hat Enterprise Linux (RHEL) 10.1 oraz SUSE 16,,.
Błąd został zidentyfikowany przy użyciu narzędzi AI przez badacza Taeyang Lee z zespołu Theori/Xint Code,,. Choć oryginalny exploit ma 732 bajty, niezależni badacze (jak np. Kimmy) stworzyli jeszcze mniejsze wersje, osiągające zaledwie 434 bajty,.
Podsumowanie i wnioski praktyczne
Podatność została już dodana przez CISA do katalogu znanych eksploitowanych błędów (KEV), co potwierdza realne próby jej wykorzystania przez atakujących,,.
Rekomendacje dla administratorów i działów Security: 1. Priorytetowa aktualizacja jądra: Należy niezwłocznie zainstalować poprawki dostarczone przez dostawców dystrybucji, które przywracają operacje „out-of-place” w module algif_aead,,. 2. Tymczasowe obejście (Mitigacja): Jeśli patch nie może być wdrożony natychmiast, należy zablokować tworzenie gniazd AF_ALG lub wyłączyć moduł jądra poleceniem `rmmod algif_aead` (o ile nie jest wkompilowany na stałe),,,. 3. Monitoring kontenerów: Każdy incydent typu RCE w kontenerze należy traktować jako potencjalny pełny kompromis hosta ze względu na współdzieloną pamięć podręczną stron (page cache),,.

Dodaj komentarz