U Linux kernelu otkrivena je četvrta ranjivost u posljednje dvije tjedna (CVE-2026-46300) koja omogućava nepriviligiranom korisniku da dobije root pristup prepisivanjem podataka u predmemoriji stranica. Ranjivost je dobila kodno ime Fragnesia ili Copy Fail 3.0. Suština ranjivosti slična je ranije otkrivenim ranjivostima Copy Fail i Dirty Frag. Kao i u slučaju Dirty Frag, nova ranjivost prisutna je u xfrm-ESP podsustavu, ali izazvana je drugom greškom i zahtijeva zasebno ispravak. Dostupna je funkcionalna eksploatacija.
Ranjivost se manifestira u Linux kernelima objavljenim nakon 5. svibnja zbog slučajnog aktiviranja ispravka ranjivosti Dirty Frag. Kako bi se riješila ranjivost Fragnesia, predloženo je ispravak za Linux kernel. Analiza ovog ispravka pokazala je da on nije dovoljan, nakon čega je pripremljena druga verzija zakrpe.
Ranjivost je prisutna u xfrm podsustavu u implementaciji mehanizma inkapsulacije ESP (Encapsulating Security Payload) u TCP (ESP-in-TCP, RFC 8229) koji se koristi za tuneliranje IPsec prometa preko TCP-a. Kako bi se izbjeglo suvišno bufiranje, operacije korištenjem AES-GCM algoritma izvršene su na mjestu putem izvođenja XOR operacije na podacima u predmemoriji stranica. Zbog logičke greške stvoreni su uvjeti koji omogućuju prepisivanje jednog bajta u predmemoriji stranica na odabranom pomaku. Ponovnim izvođenjem operacija moguće je bajt po bajt promijeniti sadržaj bilo koje datoteke u predmemoriji stranica.
Sve operacije čitanja iz datoteka prvenstveno vraćaju sadržaj iz predmemorije stranica. U slučaju izmjene podataka u predmemoriji stranica, operacije čitanja iz datoteke rezultirat će vraćanjem ne stvarno pohranjene informacije na uređaju, već zamijenjenih podataka. Eksploatacija ranjivosti svodi se na promjenu predmemorije stranica za izvršnu datoteku s suid root zastavicom, prethodno pročitanu kako bi ušla u predmemoriju stranica. U predloženoj eksploataciji istraživača, prvih 192 bajta datoteke /usr/bin/su u predmemoriji stranica prepisuju se kodom za pokretanje /usr/bin/sh. Sljedeće pokretanje alata 'su' dovodi do toga da će u memoriju biti učitana neoriginalna izvršna datoteka s uređaja, već izmijenjena kopija iz predmemorije stranica.
Za iskorištavanje ranjivosti Fragnesia u sustavu potrebno je omogućiti stvaranje prostora imena identiteta korisnika (user namespace). U Ubuntuu je takva operacija prema zadanim postavkama zabranjena, ali se može omogućiti putem sysctl „kernel.apparmor_restrict_unprivileged_userns=0“ ili AppArmor profila. U ostalim distribucijama dostupnost „user namespace“ nepriviligiranim korisnicima ovisi o postavljanju sysctl „kernel.unprivileged_userns_clone“ (ako je 0, tada je zabranjeno).
Ažuriranja s ispravcima za Linux jezgru i pakete s jezgrom u distribucijama još nisu objavljena. Status otklanjanja ranjivosti u distribucijama može se procijeniti na ovim stranicama: Debian, Ubuntu, SUSE/openSUSE, RHEL, Gentoo, Arch, Fedora. Kao privremena zaštita može se blokirati učitavanje modula jezgre esp4 i esp6:
sh -c "printf 'install esp4 /bin/false\ninstall esp6 /bin/false\n' > /etc/modprobe.d/dirtyfrag.conf; rmmod esp4 esp6 2>/dev/null; true"
Izvor: opennet.ru
