Utnyttbare sårbarheter i nf_tables, watch_queue og IPsec er identifisert i Linux-kjernen

Det er identifisert flere farlige sårbarheter i Linux-kjernen som lar en lokal bruker øke privilegiene sine i systemet. Arbeidsprototyper av utnyttelser er utarbeidet for alle problemene som vurderes.

  • En sårbarhet (CVE-2022-0995) i undersystemet watch_queue hendelsessporing gjør at data kan skrives til en buffer utenfor grensen i kjerneminnet. Angrepet kan utføres av enhver uprivilegert bruker og resultere i at koden deres kjører med kjernerettigheter. Sårbarheten eksisterer i watch_queue_set_size()-funksjonen og er assosiert med et forsøk på å fjerne alle pekere i en liste, selv om det ikke er tildelt minne for dem. Problemet oppstår når du bygger kjernen med alternativet "CONFIG_WATCH_QUEUE=y", som brukes i de fleste Linux-distribusjoner.

    Sårbarheten ble adressert i en kjerneendring lagt til 11. mars. Du kan følge publikasjonene av pakkeoppdateringer i distribusjoner på disse sidene: Debian, SUSE, Ubuntu, RHEL, Fedora, Gentoo, Arch Linux. Utnyttsprototypen er allerede offentlig tilgjengelig og lar deg få root-tilgang når du kjører på Ubuntu 21.10 med kjerne 5.13.0-37.

    Utnyttbare sårbarheter i nf_tables, watch_queue og IPsec er identifisert i Linux-kjernen

  • Sårbarhet (CVE-2022-27666) i esp4- og esp6-kjernemodulene med implementering av ESP-transformasjoner (Encapsulating Security Payload) for IPsec, brukt ved bruk av IPv4 og IPv6. Sårbarheten lar en lokal bruker med normale privilegier overskrive objekter i kjerneminnet og eskalere privilegiene sine på systemet. Problemet er forårsaket av mangel på avstemming mellom den tildelte minnestørrelsen og de faktiske dataene som mottas, gitt at den maksimale meldingsstørrelsen kan overskride den maksimale minnestørrelsen som er tildelt for skb_page_frag_refill-strukturen.

    Sårbarheten ble fikset i kjernen 7. mars (fikset i 5.17, 5.16.15 osv.). Du kan følge publikasjonene av pakkeoppdateringer i distribusjoner på disse sidene: Debian, SUSE, Ubuntu, RHEL, Fedora, Gentoo, Arch Linux. En fungerende prototype av utnyttelsen, som lar en vanlig bruker få root-tilgang til Ubuntu Desktop 21.10 i standardkonfigurasjonen, har allerede blitt lagt ut på GitHub. Det hevdes at med mindre endringer vil utnyttelsen også fungere på Fedora og Debian. Det er bemerkelsesverdig at utnyttelsen opprinnelig ble forberedt for pwn2own 2022-konkurransen, men kjerneutviklerne identifiserte og korrigerte en feil knyttet til den, så det ble besluttet å avsløre detaljene om sårbarheten.

  • To sårbarheter (CVE-2022-1015, CVE-2022-1016) i netfilter-delsystemet i nf_tables-modulen, som sikrer driften av nftables-pakkefilteret. Det første problemet lar en lokal uprivilegert bruker oppnå en out-of-bound-skriving til en tildelt buffer på stabelen. Et overløp oppstår når du behandler nftables-uttrykk som er formatert på en bestemt måte og behandles under kontrollfasen av indekser spesifisert av en bruker som har tilgang til nftables-regler.

    Sårbarheten er forårsaket av det faktum at utviklerne antydet at verdien av "enum nft_registers reg" var en enkelt byte, da når visse optimaliseringer ble aktivert, kunne kompilatoren, i henhold til C89-spesifikasjonen, bruke en 32-bits verdi for det . På grunn av denne funksjonen samsvarer ikke størrelsen som brukes ved kontroll og tildeling av minne med den faktiske størrelsen på dataene i strukturen, noe som fører til at bakdelen av strukturen overlappes med pekere på stabelen.

    Problemet kan utnyttes til å kjøre kode på kjernenivå, men et vellykket angrep krever tilgang til nftables, som kan fås i et eget nettverksnavneområde med CLONE_NEWUSER- eller CLONE_NEWNET-rettigheter (for eksempel hvis du kan kjøre en isolert container). Sårbarheten er også nært knyttet til optimaliseringene som brukes av kompilatoren, som for eksempel er aktivert når du bygger i «CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y»-modus. Utnyttelse av sårbarheten er mulig fra og med Linux-kjernen 5.12.

    Den andre sårbarheten i netfilter er forårsaket av tilgang til et allerede frigjort minneområde (use-after-free) i nft_do_chain-behandleren og kan føre til en lekkasje av uinitialiserte områder av kjerneminne, som kan leses gjennom manipulasjoner med nftables-uttrykk og brukes, for eksempel for å bestemme pekeradresser under utviklingsutnyttelser for andre sårbarheter. Utnyttelse av sårbarheten er mulig fra og med Linux-kjernen 5.13.

    Sårbarhetene er adressert i dagens kjernepatcher 5.17.1, 5.16.18, 5.15.32, 5.10.109, 5.4.188, 4.19.237, 4.14.274 og 4.9.309. Du kan følge publikasjonene av pakkeoppdateringer i distribusjoner på disse sidene: Debian, SUSE, Ubuntu, RHEL, Fedora, Gentoo, Arch Linux. Forskeren som identifiserte problemene kunngjorde utarbeidelse av arbeidsutnyttelser for begge sårbarhetene, som er planlagt publisert om noen dager, etter at distribusjonene har gitt ut oppdateringer til kjernepakkene.

Kilde: opennet.ru

Legg til en kommentar