Van trobar una vulnerabilitat VFS a Linux que permet l'escalada de privilegis

Fa pocs dies es va donar a conèixer la notícia que es va identificar la vulnerabilitat (ja catalogada sota CVE-2022-0185) en l'API de context del sistema de fitxers proporcionada pel nucli de Linux que podria permetre que un usuari local obtingui privilegis de root al sistema.

S'esmenta que el problema és que un usuari sense privilegis pot obtenir aquests permisos en un contenidor aïllat si el suport per a espais de noms d'usuari està habilitat al sistema.

Per exemple, els espais de noms d'usuari estan habilitats per defecte a Ubuntu i Fedora, però no estan habilitats a Debian i RHEL (llevat que s'utilitzin plataformes d'aïllament de contenidors). A més de l'escalada de privilegis, la vulnerabilitat també es pot fer servir per sortir d'un contenidor aïllat si el contenidor té l'autorització CAP_SYS_ADMIN.

la vulnerabilitat existeix a la funció legacy_parse_param() a VFS i es deu a la manca d'una validació adequada de la mida màxima dels paràmetres proporcionats als sistemes de fitxers que no són compatibles amb l'API de context del sistema de fitxers.

Recentment, diversos amics del meu equip CTF Crusaders of Rust i jo vam trobar un desbordament del munt del nucli de Linux 0-day. Trobem l'error a través de fuzzing amb syzkaller i ràpidament el desenvolupem en un exploit LPE d'Ubuntu. Després, ho reescrivim per escapar i rootejar la infraestructura reforçada de CTF de Kubernetes de Google. Aquest error afecta totes les versions del nucli des de la 5.1 (la 5.16 està actualment en curs) i se us ha assignat CVE-2022-0185. Ja hem informat això a la llista de correu de seguretat i distribució de Linux, i lerror es va corregir a partir del llançament daquest article

En passar un paràmetre massa gran, pot provocar un desbordament de la variable sencera utilitzada per calcular la mida de les dades que s'escriuen; el codi té una verificació de desbordament de memòria intermèdia «if (len > PAGE_SIZE – 2 – size)», que no funciona si el valor de mida és més gran que 4094 a causa del desbordament d'enters a través del límit inferior (desbordament d'enters, quan converteix 4096 – 2 – 4095 a int sense signar, obté 2147483648).

Aquest error permet, en accedir a una imatge FS especialment dissenyada, provocar un desbordament del memòria intermèdia i sobreescriure les dades del nucli que segueixen a l'àrea de memòria assignada. Per explotar la vulnerabilitat, calen drets CAP_SYS_ADMIN, és a dir, autoritat de l'administrador.

A partir del 2022, els nostres companys d'equip es van resoldre a trobar un dia 0 al 2022. No estàvem gaire segurs de com començar exactament, però atès que el nostre equip tenia un alt grau de familiaritat amb les vulnerabilitats del kernel de Linux, vam decidir simplement comprar alguns servidors dedicats. i executa el fuzzer syzkaller de Google. El 6 de gener a les 22:30 PST, chop0 va rebre el següent informe sobre una falla de KASAN a legacy_parse_param: slab-out-of-bounds Write in legacy_parse_param. Sembla que syzbot va trobar aquest problema només 6 dies abans quan fuzzing Android, però el problema no es va manejar i pensem ingènuament que ningú més es va adonar.

Finalment, cal esmentar que el problema s'ha estat manifestant des de la versió del nucli de Linux 5.1 i es va solucionar en les actualitzacions que van ser llançades fa pocs dies a les versions 5.16.2, 5.15.16, 5.10.93, 5.4.173.

A més de que ja s'han publicat actualitzacions de paquets de vulnerabilitats per la RHELDebianFedora i Ubuntu. Mentre que la solució encara no està disponible a Arch LinuxGentooSUSE y openSUSE.

Per al cas d'aquestes s'esmenta que com a solució de seguretat per als sistemes que no utilitzen l'aïllament de contenidors, podeu establir el valor de sysctl «user.max_user_namespaces» a 0:

L'investigador que va identificar el problema ha publicat una demostració d'un exploit que permet executar el codi com a root a Ubuntu 20.04 a la configuració predeterminada. Està previst que el codi d'explotació es publiqui a GitHub d'aquí una setmana després que les distribucions publiquin una actualització que solucioni la vulnerabilitat.

Finalment si estàs interessat en poder conèixer més a l'respecte, Pots consultar els detalls al següent enllaç.


Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: AB Internet Networks 2008 SL
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.

  1.   galec va dir

    Una altra raó més per no tocar snap ni amb un pal.