Niemal wszystkie wersje Linux kernel wydane od 2017 roku zawierają poważną podatność, którą można wykorzystać w zaskakująco prosty sposób. Wystarczy niewielki fragment kodu, by przejąć pełną kontrolę nad systemem.
Badacze bezpieczeństwa ujawnili exploit nazwany Copy Fail, oznaczony jako CVE-2026-31431. To zaledwie kilkaset bajtów, które pozwalają zwykłemu użytkownikowi uzyskać uprawnienia administratora. Skala zagrożenia obejmuje praktycznie wszystkie popularne dystrybucje.
„Lokalna eskalacja uprawnień» brzmi nudno, więc pozwólcie, że to wyjaśnię” – napisał badacz Jorijn Schrijvershof . „To oznacza: atakujący, który ma już jakiś sposób na uruchomienie kodu na komputerze, nawet jako najnudniejszy użytkownik bez uprawnień, może awansować się na roota. Stamtąd może odczytać każdy plik, zainstalować tylne furtki, obserwować każdy proces i przełączać się na inne systemy”.
Schrijvershof dodał, że ten sam skrypt w Pythonie działa niezawodnie w Ubuntu 22.04, Amazon Linux 2023, SUSE 15.6 i Debianie 12.
Jedno uruchomienie i dostęp do roota
Atak nie wymaga skomplikowanych przygotowań ani specjalnych warunków. Wystarczy lokalny dostęp do systemu. Po uruchomieniu exploita użytkownik bez uprawnień może przejąć kontrolę nad systemem i działać jako root. Testy przeprowadzono na wielu środowiskach, w tym na Ubuntu oraz Red Hat Enterprise Linux. Wyniki były identyczne. Ten sam kod działa bez modyfikacji, niezależnie od konfiguracji.
Szczególnie niepokojące są scenariusze związane z kontenerami. W środowiskach opartych na Docker czy Kubernetes atakujący może wydostać się z izolowanego środowiska i uzyskać dostęp do całego systemu hosta.
Eksperci ds. bezpieczeństwa twierdzą, że CopyFail stanowi poważne zagrożenie. Jeden z nich nazwał to „najgorszą luką w jądrze umożliwiającą uzyskanie uprawnień roota w ostatnich czasach”.
Luka ukryta przez lata
Najbardziej zaskakujące jest to, jak długo błąd pozostawał niezauważony. Problem narodził się w wyniku połączenia kilku mechanizmów, które osobno działały poprawnie. Dopiero ich współdziałanie otworzyło furtkę do ataku.
Kluczową rolę odgrywa pamięć podręczna stron, czyli fragment pamięci RAM przechowujący dane plików. Exploit pozwala na modyfikowanie jej zawartości bez ingerencji w pliki na dysku. System korzysta później z tych zmienionych danych, traktując je jako oryginalne. W praktyce oznacza to możliwość podmiany fragmentów krytycznych programów systemowych bez pozostawiania śladów w pamięci trwałej.
Atak bez śladów
Jednym z najbardziej niepokojących aspektów tej podatności jest jej trudność w wykryciu. Cały proces odbywa się w pamięci operacyjnej. Po restarcie systemu zmodyfikowane dane znikają, a analiza dysku nie wykazuje niczego podejrzanego. Tradycyjne metody analizy powłamaniowej mogą nie wykryć żadnych oznak przejęcia systemu.
Kontenery pod szczególnym ryzykiem
Nowoczesna infrastruktura IT w dużej mierze opiera się na kontenerach. Właśnie tam luka może przynieść najwięcej szkód. Izolacja między aplikacjami przestaje działać, gdy atakujący wykorzysta błąd w jądrze współdzielonym przez wszystkie kontenery. To oznacza możliwość przejęcia całego środowiska serwerowego z poziomu pojedynczej aplikacji. W przypadku usług chmurowych scenariusz staje się jeszcze bardziej niebezpieczny.
Poprawki już dostępne, ale czas ma znaczenie
Dobra wiadomość jest taka, że poprawki zostały przygotowane i trafiły do stabilnych wersji jądra. Problem polega na tym, jak szybko użytkownicy i administratorzy je wdrożą.
Eksperci apelują o natychmiastową aktualizację systemów. W środowiskach, gdzie nie jest to możliwe, zaleca się ograniczenie dostępu do niektórych funkcji jądra oraz zastosowanie dodatkowych mechanizmów kontroli.
Każdy dzień zwłoki zwiększa ryzyko wykorzystania tej luki w realnych atakach.
Spodobało Ci się? Podziel się ze znajomymi!
Pokaż / Dodaj komentarze do:
Krytyczna luka w Linuksie. To największe zagrożenie od lat