Udnyttelige sårbarheder i nf_tables, watch_queue og IPsec er blevet identificeret i Linux-kernen

Der er identificeret flere farlige sårbarheder i Linux-kernen, som gør det muligt for en lokal bruger at øge deres privilegier i systemet. Der er udarbejdet arbejdsprototyper af udnyttelser til alle de undersøgte problemer.

  • En sårbarhed (CVE-2022-0995) i undersystemet watch_queue hændelsessporing gør det muligt at skrive data til en buffer uden for grænserne i kernehukommelsen. Angrebet kan udføres af enhver uprivilegeret bruger og resultere i, at deres kode kører med kernerettigheder. Sårbarheden findes i funktionen watch_queue_set_size() og er forbundet med et forsøg på at rydde alle pointere på en liste, selvom der ikke er allokeret hukommelse til dem. Problemet opstår, når kernen bygges med "CONFIG_WATCH_QUEUE=y", som bruges i de fleste Linux-distributioner.

    Sårbarheden blev rettet i en kerneændring tilføjet den 11. marts. Du kan følge udgivelserne af pakkeopdateringer i distributioner på disse sider: Debian, SUSE, Ubuntu, RHEL, Fedora, Gentoo, Arch Linux. Exploatsprototypen er allerede offentligt tilgængelig og giver dig mulighed for at få root-adgang, når du kører på Ubuntu 21.10 med kerne 5.13.0-37.

    Udnyttelige sårbarheder i nf_tables, watch_queue og IPsec er blevet identificeret i Linux-kernen

  • Sårbarhed (CVE-2022-27666) i esp4- og esp6-kernemodulerne med implementering af ESP-transformationer (Encapsulating Security Payload) til IPsec, der bruges ved brug af IPv4 og IPv6. Sårbarheden tillader en lokal bruger med normale privilegier at overskrive objekter i kernehukommelsen og eskalere deres privilegier på systemet. Problemet er forårsaget af en manglende afstemning mellem den tildelte hukommelsesstørrelse og de faktiske modtagne data, givet at den maksimale meddelelsesstørrelse kunne overstige den maksimale hukommelsesstørrelse, der er allokeret til skb_page_frag_refill-strukturen.

    Sårbarheden blev rettet i kernen den 7. marts (rettet i 5.17, 5.16.15 osv.). Du kan følge udgivelserne af pakkeopdateringer i distributioner på disse sider: Debian, SUSE, Ubuntu, RHEL, Fedora, Gentoo, Arch Linux. En fungerende prototype af udnyttelsen, som giver en almindelig bruger mulighed for at få root-adgang til Ubuntu Desktop 21.10 i standardkonfigurationen, er allerede blevet udgivet på GitHub. Det hævdes, at udnyttelsen med mindre ændringer også vil fungere på Fedora og Debian. Det er bemærkelsesværdigt, at udnyttelsen oprindeligt blev forberedt til pwn2own 2022-konkurrencen, men kerneudviklerne identificerede og rettede en fejl forbundet med den, så det blev besluttet at afsløre detaljerne om sårbarheden.

  • To sårbarheder (CVE-2022-1015, CVE-2022-1016) i netfilter-undersystemet i nf_tables-modulet, som sikrer driften af ​​nftables-pakkefilteret. Det første problem tillader en lokal uprivilegeret bruger at opnå en out-of-bounds-skrivning til en allokeret buffer på stakken. Et overløb opstår, når der behandles nftables-udtryk, der er formateret på en bestemt måde og behandles under kontrolfasen af ​​indekser, der er angivet af en bruger, der har adgang til nftables-regler.

    Sårbarheden er forårsaget af det faktum, at udviklerne antydede, at værdien af ​​"enum nft_registers reg" var en enkelt byte, når når visse optimeringer var aktiveret, kunne compileren ifølge C89-specifikationen bruge en 32-bit værdi til det. . På grund af denne funktion svarer størrelsen, der bruges ved kontrol og allokering af hukommelse, ikke til den faktiske størrelse af dataene i strukturen, hvilket fører til, at strukturens hale overlappes med pointere på stakken.

    Problemet kan udnyttes til at udføre kode på kerneniveau, men et vellykket angreb kræver adgang til nftables, som kan fås i et separat netværksnavneområde med CLONE_NEWUSER- eller CLONE_NEWNET-rettigheder (hvis du for eksempel kan køre en isoleret container). Sårbarheden er også tæt relateret til de optimeringer, der bruges af compileren, som f.eks. aktiveres, når man bygger i tilstanden "CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y". Udnyttelse af sårbarheden er mulig fra og med Linux-kerne 5.12.

    Den anden sårbarhed i netfilter er forårsaget af adgang til et allerede frigivet hukommelsesområde (use-after-free) i nft_do_chain-handleren og kan føre til et læk af ikke-initialiserede områder af kernehukommelsen, som kan læses gennem manipulationer med nftables-udtryk og bruges, for eksempel at bestemme pointer-adresser under udviklingsudnyttelser for andre sårbarheder. Udnyttelse af sårbarheden er mulig fra og med Linux-kerne 5.13.

    Sårbarhederne er rettet i dagens kernepatches 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 udgivelserne af pakkeopdateringer i distributioner på disse sider: Debian, SUSE, Ubuntu, RHEL, Fedora, Gentoo, Arch Linux. Forskeren, der identificerede problemerne, annoncerede forberedelsen af ​​arbejdsudnyttelser for begge sårbarheder, som er planlagt til at blive offentliggjort om et par dage, efter at distributionerne frigiver opdateringer til kernepakkerne.

Kilde: opennet.ru

Tilføj en kommentar