S'han identificat vulnerabilitats explotables a nf_tables, watch_queue i IPsec al nucli de Linux

S'han identificat diverses vulnerabilitats perilloses al nucli Linux que permeten a un usuari local augmentar els seus privilegis al sistema. S'han preparat prototips de treball d'explotacions per a tots els problemes considerats.

  • Una vulnerabilitat (CVE-2022-0995) al subsistema de seguiment d'esdeveniments watch_queue permet escriure dades en una memòria intermèdia fora de límits de la memòria del nucli. L'atac pot ser dut a terme per qualsevol usuari sense privilegis i donar lloc a que el seu codi s'executi amb drets del nucli. La vulnerabilitat existeix a la funció watch_queue_set_size() i s'associa amb un intent d'esborrar tots els punters d'una llista, encara que no s'hi hagi assignat memòria. El problema es produeix quan es construeix el nucli amb l'opció "CONFIG_WATCH_QUEUE=y", que s'utilitza a la majoria de distribucions de Linux.

    La vulnerabilitat es va solucionar en un canvi del nucli afegit l'11 de març. Podeu seguir les publicacions d'actualitzacions de paquets en distribucions en aquestes pàgines: Debian, SUSE, Ubuntu, RHEL, Fedora, Gentoo, Arch Linux. El prototip d'explotació ja està disponible públicament i us permet obtenir accés root quan s'executeu a Ubuntu 21.10 amb el nucli 5.13.0-37.

    S'han identificat vulnerabilitats explotables a nf_tables, watch_queue i IPsec al nucli de Linux

  • Vulnerabilitat (CVE-2022-27666) en els mòduls del nucli esp4 i esp6 amb la implementació de transformacions ESP (Encapsulating Security Payload) per a IPsec, utilitzades quan s'utilitza IPv4 i IPv6. La vulnerabilitat permet a un usuari local amb privilegis normals sobreescriure objectes a la memòria del nucli i augmentar els seus privilegis al sistema. El problema és causat per una manca de conciliació entre la mida de memòria assignada i les dades reals rebudes, atès que la mida màxima del missatge podria superar la mida màxima de memòria assignada per a l'estructura skb_page_frag_refill.

    La vulnerabilitat es va solucionar al nucli el 7 de març (s'ha corregit a 5.17, 5.16.15, etc.). Podeu seguir les publicacions d'actualitzacions de paquets en distribucions en aquestes pàgines: Debian, SUSE, Ubuntu, RHEL, Fedora, Gentoo, Arch Linux. Ja s'ha publicat a GitHub un prototip de funcionament de l'explotació, que permet a un usuari normal obtenir accés root a Ubuntu Desktop 21.10 en la configuració predeterminada. S'afirma que amb canvis menors, l'explotació també funcionarà a Fedora i Debian. Cal destacar que l'explotació es va preparar originalment per a la competició pwn2own 2022, però els desenvolupadors del nucli van identificar i corregir un error associat, per la qual cosa es va decidir revelar els detalls de la vulnerabilitat.

  • Dues vulnerabilitats (CVE-2022-1015, CVE-2022-1016) al subsistema netfilter del mòdul nf_tables, que garanteix el funcionament del filtre de paquets nftables. El primer problema permet a un usuari local sense privilegis aconseguir una escriptura fora dels límits a un buffer assignat a la pila. Es produeix un desbordament quan es processen expressions nftables que tenen un format determinat i es processen durant la fase de verificació dels índexs especificats per un usuari que té accés a les regles de nftables.

    La vulnerabilitat és causada pel fet que els desenvolupadors van donar a entendre que el valor de "enum nft_registers reg" era d'un sol byte, quan quan s'habilitaven determinades optimitzacions, el compilador, segons l'especificació C89, podia utilitzar un valor de 32 bits per a això. . A causa d'aquesta característica, la mida utilitzada a l'hora de comprovar i assignar memòria no es correspon amb la mida real de les dades de l'estructura, la qual cosa fa que la cua de l'estructura es superposi amb els punters de la pila.

    El problema es pot aprofitar per executar codi a nivell del nucli, però un atac amb èxit requereix accés a nftables, que es pot obtenir en un espai de noms de xarxa independent amb drets CLONE_NEWUSER o CLONE_NEWNET (per exemple, si podeu executar un contenidor aïllat). La vulnerabilitat també està estretament relacionada amb les optimitzacions utilitzades pel compilador, que, per exemple, s'activen quan es construeix en el mode “CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y”. L'explotació de la vulnerabilitat és possible a partir del nucli Linux 5.12.

    La segona vulnerabilitat de netfilter és causada per accedir a una àrea de memòria ja alliberada (use-after-free) al controlador nft_do_chain i pot provocar una fuga d'àrees no inicialitzades de la memòria del nucli, que es poden llegir mitjançant manipulacions amb expressions nftables i utilitzar, per exemple, per determinar les adreces dels punters durant les explotacions de desenvolupament per a altres vulnerabilitats. L'explotació de la vulnerabilitat és possible a partir del nucli Linux 5.13.

    Les vulnerabilitats s'aborden als pedaços actuals del nucli 5.17.1, 5.16.18, 5.15.32, 5.10.109, 5.4.188, 4.19.237, 4.14.274 i 4.9.309. Podeu seguir les publicacions d'actualitzacions de paquets en distribucions en aquestes pàgines: Debian, SUSE, Ubuntu, RHEL, Fedora, Gentoo, Arch Linux. L'investigador que va identificar els problemes va anunciar la preparació d'explotacions de treball per a ambdues vulnerabilitats, que està previst que es publiquin d'aquí a uns dies, després que les distribucions alliberin actualitzacions als paquets del nucli.

Font: opennet.ru

Afegeix comentari