Copy Fail — en sårbarhet i Linux-kärnan som ger root-tillgång på de flesta distributioner

Forskare från företaget Xint har identifierat en sårbarhet i Linux-kärnan (CVE-2026-31431) som gör det möjligt för en icke-privilegerad användare att få root-åtkomst till systemet. Problemet har kodnamnet Copy Fail. En prototyp av exploiten är tillgänglig. Sårbarhetens möjliga exploatering har demonstrerats i Ubuntu 24.04 LTS, Amazon Linux 2023, RHEL 10.1 och SUSE 16, men det noteras att kärnpaketen från andra distributioner, inklusive Debian, Arch, Fedora, Rocky och Alma, också är drabbade, även om de inte har testats separat.

Sårbarheten orsakas av ett logiskt fel i crypto API (AF_ALG) i Linux-kärnan, som inträffade vid en optimering 2017 som tog bort överflödig buffring genom att utföra blockchifferoperationer in-place (AEAD - Authenticated Encryption with Associated Data). Problemet uppstod på grund av oövertänkt användning av funktionen splice(), som överför data mellan filbeskrivare och rör (pipe) utan att kopiera, genom att överföra referenser till element i sidcache. Efter optimeringen vid överföring av en fil till en AF_ALG-socket för dekryptering skrevs inte en referens till en separat buffer till scatterlist-strukturen, utan en direkt referens till element i sidcache av kärnan med filens data.

Vid dekrypteringen av AEAD blandades referensbundna data från autentiseringstagsdata ("authentication tag") med data som kopierades till RX-bufferten från ytterligare autentiserbara data (AAD, Associated Authenticated Data) och chiffertexten, och förskjutningen för skrivrörelsen för autentiseringstagsdata beräknades utifrån de kopierade data utan tillräckliga kontroller, vilket gjorde det möjligt att överskriva godtyckliga områden i sidcache.

Sårbarheten gör det möjligt att vid varje förfrågan överskriva 4 byte på en vald förskjutning, vilket gör att en angripare genom att skicka en serie förfrågningar kan ändra innehållet i sidcache för vilken fil som helst i systemet som är läsbar, efter att ha lyckats få den konverterad till cache. Eftersom innehållet vid alla läsoperationer från filerna först returneras från sidcache, efter att ha ersatt informationen i sidcache, kommer kärnan eller processen att få data från filen som inte är de faktiska, utan manipulerade data, vilket kan användas för att injicera kod i körbara filer eller laddade delade bibliotek.

För att köra kod med root-rättigheter räcker det med att åstadkomma en ändring av sidcache för en exekverbar fil med suid root-flaggan.
I den föreslagna exploateringen görs en läsning av den exekverbara filen /usr/bin/su och en modifiering av det som laddas till sidcache för att infoga egen kod. Vid efterföljande körning av verktyget 'su' kommer inte den ursprungliga exekverbara filen från lagringsmediet att laddas in i minnet, utan en modifierad kopia från sidcache.

Exploateringen är universell, kräver ingen anpassning till distributioner eller kärnversioner, och kan användas med alla distributioner. Eftersom alla containrar använder en gemensam sidcache vid användning av containerisolering, kan sårbarheten utnyttjas för att få åtkomst till värdmiljön från containern (det lovas att publicera en exploatering för att kringgå isoleringen i Kubernetes senare).

Sårbarheten identifierades med hjälp av AI efter cirka en timme av experimenterande analys av kryptosubsystemet i kärnan. Problemet manifesterar sig från och med Linux-kärnan 4.14, släppt 2017, och har åtgärdats i kärnorna 6.18.22, 6.19.12 och 7.0. Status för åtgärdade sårbarheter i distributionerna kan bedömas på dessa sidor: Debian, Ubuntu, SUSE/openSUSE, RHEL, Gentoo, Arch,
Fedora, ROSA.

Som en skyddande omväg kan kärnmodulen algif_aead inaktiveras, vilket används av OpenSSL vid explicit aktivering av motorn afalg och i vissa applikationer (kontrollera om sådana applikationer körs med kommandot 'lsof | grep AF_ALG'):

    echo 'install algif_aead /bin/false' > /etc/modprobe.d/disable-algif.conf
    rmmod algif_aead

    Källa: opennet.ru

Köp pålitlig webbhotell med DDoS-skydd, VPS VDS-servrar 🔥 Köp pålitlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster