Wszystkie informacje o dwóch nowych lukach w jądrze Linux, które pozwalają nieuprzywilejowanym użytkownikom zdobyć uprawnienia root, zapisując dane w pamięci podręcznej stron. Dla obu luk przygotowano działające exploity.
- PEdit-CoW (CVE-2026-46331, exploit 1, exploit 2) — błąd w mechanizmie copy-on-write w kodzie zmiany nagłówków pakietów (act_pedit), wykorzystywanym w planowaniu pakietów sieciowych (net/sched), umożliwia zapis danych poza przydzielonym buforem, co może być wykorzystane do nadpisania danych w pamięci podręcznej stron po wybranym przesunięciu. Błąd spowodowany jest tym, że sprawdzenie dozwolonego obszaru do zapisu danych odbywało się bez uwzględnienia, że przesunięcie do edytowanych pól może się zmieniać w trakcie wykonywania operacji.
Problem występuje od jądra Linux 5.18 i został usunięty w wersjach 7.1, 7.0.13, 6.18.36 oraz 6.12.94. Zgłoszono możliwość wykorzystania problemu w RHEL 8/9/10, Debian 11/12, openSUSE Leap 15.6, SUSE Linux 15-SP7/16.0 oraz Ubuntu 18.04-25.10 (w wersji Ubuntu 26.4 domyślnie zablokowano możliwość tworzenia przestrzeni nazw użytkowników). Jako obejście tego problemu zaleca się zablokowanie ładowania modułu jądra act_pedit (przestaną działać zasady ograniczania ruchu i nadpisywania nagłówków za pomocą 'tc pedit').
echo "blacklist act_pedit" > /etc/modprobe.d/blacklist-act-pedit.conf
rmmod act_pedit - DirtyClone (CVE-2026-43503, exploit) — obejście luki w zabezpieczeniach Dirty Frag w module xfrm-ESP, stosowanym do przyspieszania operacji szyfrowania w IPsec przy użyciu protokołu ESP (Encapsulating Security Payload). Do klonowania struktury skb w nowym exploicie wykorzystano manipulację rozszerzeniem TEE w netfilter (moduł xt_TEE), przeprowadzającym operację klonowania pakietów sieciowych.
Luka została naprawiona w wydaniach jądra Linux 7.1, 7.0.10, 5.10.257, 5.15.208, 6.1.174, 6.6.141, 6.12.91 i 6.18.33. Problem występuje w Debianie, Ubuntu, Fedory,
RHEL i SUSE. Jako tymczasowe rozwiązanie blokady luki można zabronić ładowania modułów jądra esp4 i esp6.
Aby wykorzystać oba te luki, wymagane są uprawnienia CAP_NET_ADMIN, które nieuprzywilejowany użytkownik może uzyskać poprzez tworzenie przestrzeni nazw identyfikatorów użytkowników (user namespace). W Ubuntu tego rodzaju operacja jest domyślnie zablokowana, ale może być dozwolona poprzez sysctl 'kernel.apparmor_restrict_unprivileged_userns=0' lub profile AppArmor. W innych dystrybucjach dostęp do 'user namespace' dla nieuprzywilejowanych użytkowników zależy od ustawienia sysctl 'kernel.unprivileged_userns_clone' (jeśli 0, to zabronione).
Wykorzystanie podatności sprowadza się do odczytu pliku programu /bin/su z flagą suid root, jego umiejscowienia w pamięci podręcznej stron oraz zastąpienia w pamięci podręcznej stron części kodu programu kodem do uruchomienia /bin/sh. Następne uruchomienie programu spowoduje, że do pamięci załadowany zostanie nie oryginalny plik wykonywalny z nośnika, lecz zmodyfikowana kopia z pamięci podręcznej stron.
Dodatkowo można zauważyć stworzenie exploita dla podatności CVE-2026-23111 w podsystemie nf_tables, naprawionej w lutowych aktualizacjach jądra Linux. Podatność ta jest spowodowana dostępem do pamięci po jej zwolnieniu (use-after-free) i pozwala nieuprzywilejowanemu użytkownikowi uzyskać uprawnienia roota w systemie. Aby przeprowadzić atak, użytkownik musi mieć możliwość tworzenia przestrzeni nazw identyfikatorów użytkowników (user namespace). Działanie exploita zostało zademonstrowane w
Debianie 12/13 i Ubuntu 22.04/24.04.
Źródło: opennet.ru
