Sztuczna inteligencja coraz śmielej wspiera specjalistów ds. bezpieczeństwa – nie tylko podczas analizy kodu, ale również przy opracowywaniu działających exploitów. Najnowszym przykładem jest podatność CVE-2026-53264, wykryta w jądrze systemu Linux. Choć sama luka wymaga lokalnego dostępu do systemu, umożliwia eskalację uprawnień do poziomu root. Badacz ze STAR Labs przyznał, że modele AI znacząco przyspieszyły zarówno analizę podatności, jak i opracowanie kodu wykorzystującego błąd. Nowe odkrycie pokazuje, że sztuczna inteligencja staje się praktycznym narzędziem wspierającym badania nad bezpieczeństwem systemów operacyjnych, skracając czas potrzebny do zrozumienia złożonych fragmentów kodu jądra.

Podatność w podsystemie Traffic Control

Luka CVE-2026-53264 została odnaleziona w podsystemie net/sched, odpowiedzialnym za mechanizm Traffic Control (tc). Jest to jeden z kluczowych elementów stosu sieciowego Linuksa, wykorzystywany do kolejkowania pakietów, ograniczania przepustowości, klasyfikacji ruchu oraz implementacji mechanizmów QoS (Quality of Service).

Podsystem ten wykorzystuje zestaw kolejek (queueing disciplines – qdisc), filtrów oraz akcji (actions), które mogą być dynamicznie tworzone i usuwane za pomocą interfejsu Netlink. Ze względu na dużą złożoność oraz intensywne wykorzystanie współbieżności należy on do najbardziej wymagających komponentów jądra. Badania wykazały, że właśnie w tym obszarze występuje błąd zarządzania pamięcią prowadzący do warunku Use-After-Free (UAF). W określonych okolicznościach możliwe jest odwołanie się do obiektu, który został już zwolniony z pamięci, lecz nadal pozostaje dostępny przez inny wątek wykonania.

Race condition prowadzący do Use-After-Free

Źródłem podatności jest funkcja tcf_idr_check_alloc(), odpowiedzialna za wyszukiwanie oraz alokację współdzielonych akcji Traffic Control.

Problem wynika z nieprawidłowej synchronizacji pomiędzy mechanizmem Read-Copy-Update (RCU) a procedurami zwalniania obiektów. Funkcja odczytuje wskaźnik do struktury chronionej przez RCU, podczas gdy równolegle inny fragment kodu może zwolnić tę samą strukturę bez oczekiwania na zakończenie okresu ochronnego (grace period).

Powstaje w ten sposób bardzo krótki, lecz możliwy do wykorzystania przedział czasowy, w którym jądro operuje na nieistniejącym już obiekcie. Atakujący, odpowiednio synchronizując wykonywanie operacji, może doprowadzić do ponownego wykorzystania zwolnionej pamięci i przejąć kontrolę nad jej zawartością.

Jak przebiega atak?

Exploit nie korzysta z klasycznych operacji RTM_NEWACTION ani RTM_DELACTION, ponieważ wymagają one uprawnień CAP_NET_ADMIN w początkowej przestrzeni nazw sieci.

Zamiast tego wykorzystuje komunikaty RTM_NEWTFILTER i RTM_DELTFILTER, które mogą być wykonywane z poziomu nieuprzywilejowanej przestrzeni nazw użytkownika (unprivileged user namespace), w której proces posiada lokalnie uprawnienie CAP_NET_ADMIN.

Badacz zastosował kombinację filtrów flower oraz kolejki clsact, aby zwiększyć prawdopodobieństwo wystąpienia warunku wyścigu i ominąć mechanizmy synchronizacji utrudniające eksploatację.

Po uzyskaniu dostępu do zwolnionego obiektu exploit wykorzystuje techniki wycieku adresów jądra (obejście KASLR) oraz przygotowany łańcuch ROP (Return-Oriented Programming). Ostatecznie modyfikowana jest wartość core_pattern, co pozwala na uruchomienie procesu z uprawnieniami roota i przejęcie pełnej kontroli nad systemem.

Wymagania do skutecznej eksploatacji

W przeciwieństwie do niektórych wcześniejszych podatności LPE, CVE-2026-53264 nie jest uniwersalnym exploitem działającym na każdej konfiguracji.

Powodzenie ataku zależy od spełnienia kilku poniższych warunków:

  • włączona obsługa unprivileged user namespaces,
  • aktywne opcje jądra CONFIG_NET_ACT_GACT,
  • aktywne CONFIG_NET_CLS_FLOWER,
  • możliwość przygotowania odpowiedniego łańcucha ROP dopasowanego do konkretnej wersji jądra,
  • lokalny dostęp do systemu.

Oznacza to, że podatność nie prowadzi do zdalnego wykonania kodu (RCE), lecz stanowi klasyczny przypadek Local Privilege Escalation (LPE). Jeżeli jednak napastnik uzyska wcześniej możliwość uruchomienia dowolnego kodu na serwerze – np. poprzez podatność w aplikacji webowej – CVE-2026-53264 może posłużyć do pełnego przejęcia systemu.

Rola sztucznej inteligencji

Jednym z najciekawszych aspektów badań jest wykorzystanie AI podczas całego procesu analizy. Autor exploita wskazuje, że modele językowe pomogły w:

  • analizie zależności pomiędzy funkcjami jądra,
  • identyfikacji potencjalnych ścieżek prowadzących do Use-After-Free,
  • wygenerowaniu początkowego kodu testowego współpracującego z Kernel Address Sanitizer (KASAN),
  • optymalizacji synchronizacji warunku wyścigu,
  • przyspieszeniu iteracyjnego procesu tworzenia exploita.

Jednocześnie badacz podkreśla, że AI nie zastąpiła wiedzy eksperckiej. Ostateczne zrozumienie działania jądra, przygotowanie stabilnego exploita oraz weryfikacja jego skuteczności nadal wymagały ręcznej analizy i doświadczenia z zakresu bezpieczeństwa systemów operacyjnych.

Poprawka i zalecenia

Podatność została usunięta w najnowszych wersjach jądra Linuksa, a następnie przeniesiona do wspieranych stabilnych wydań. Poprawione wersje obejmują m.in.:

  • 5.10.259,
  • 5.15.210,
  • 6.1.176,
  • 6.6.143,
  • 6.12.94,
  • 6.18.36,
  • 7.0.13.

Administratorzy nie powinni jednak kierować się wyłącznie numerem wersji jądra. Dystrybucje takie jak Red Hat, Ubuntu czy SUSE często stosują backporting, czyli przenoszenie poprawek bezpieczeństwa do starszych wersji pakietów bez zmiany głównego numeru wydania. W związku z tym zalecane jest instalowanie aktualizacji dostarczanych przez producenta dystrybucji oraz weryfikacja informacji w biuletynach bezpieczeństwa.

Dodatkowo warto:

  • ograniczyć możliwość tworzenia nieuprzywilejowanych przestrzeni nazw użytkownika, jeśli nie są wymagane,
  • monitorować wykorzystanie interfejsu Netlink,
  • stosować mechanizmy SELinux lub AppArmor,
  • regularnie aktualizować jądro systemu.

Podsumowanie

CVE-2026-53264 pokazuje, że nawet dobrze znane komponenty jądra Linuksa, takie jak podsystem Traffic Control, mogą zawierać subtelne błędy synchronizacji prowadzące do eskalacji uprawnień. Luka wykorzystuje warunek wyścigu skutkujący błędem Use-After-Free, a jej eksploatacja pozwala lokalnemu użytkownikowi przejąć uprawnienia root, jeśli system spełnia określone warunki konfiguracyjne.

Równie istotny jest kontekst odkrycia – sztuczna inteligencja nie tylko wspiera analizę kodu źródłowego, lecz także przyspiesza opracowywanie dowodów koncepcji i exploitów. Choć wiedza ekspercka pozostaje niezbędna, CVE-2026-53264 stanowi kolejny dowód na to, że AI staje się ważnym elementem współczesnych badań nad bezpieczeństwem systemów operacyjnych.