Vulnerabilità VFS di u kernel Linux chì permette l'escalation di privilegi

Una vulnerabilità (CVE-2022-0185) hè stata identificata in l'API Filesystem Context furnita da u kernel Linux chì puderia permette à un utilizatore locale di guadagnà privilegi di root in u sistema. L'investigatore chì hà identificatu u prublema hà publicatu una demo di un sfruttamentu chì permette à u codice per esse eseguitu cum'è root in Ubuntu 20.04 in a cunfigurazione predeterminata. U codice di sfruttamentu hè previstu per esse publicatu in GitHub in una settimana, dopu chì e distribuzioni liberanu un aghjurnamentu chì risolve a vulnerabilità.

A vulnerabilità esiste in a funzione legacy_parse_param() in VFS è hè causata da una mancanza di validazione curretta di a dimensione massima di i paràmetri furniti in i sistemi di fugliale chì ùn sustene micca l'API di u Context Filesystem. Se passate un paràmetru troppu grande, pudete causà un overflow di a variabile intera utilizata per calculà a dimensione di i dati chì sò scritti - u codice hà un verificatu di overflow di buffer "se (len> PAGE_SIZE - 2 - size)", chì ùn Ùn funziona micca se u valore di a dimensione hè più grande di 4094 per via di un overflow integer à traversu u limite inferiore (integer underflow, quandu cast 4096 - 2 - 4095 à unsigned int, uttene 2147483648).

Stu errore permette, quandu accede à una maghjina FS apposta, per causà un overflow di buffer è soprascrive i dati di u kernel dopu l'area di memoria assignata. Per sfruttà a vulnerabilità, i diritti CAP_SYS_ADMIN sò richiesti, i.e. autorità amministratore. U prublema hè chì un utilizatore senza privilegiu pò uttene tali permessi in un containeru isolatu se u supportu per i spazii di nomi d'utilizatori hè attivatu in u sistema. Per esempiu, i spazii di nomi d'utilizatori sò attivati ​​per difettu in Ubuntu è Fedora, ma micca attivati ​​in Debian è RHEL (salvo chì utilizanu piattaforme d'isolazione di container).

U prublema hè manifestatu da u kernel Linux 5.1 è hè stata riparata in l'aghjurnamenti d'ayer 5.16.2, 5.15.16, 5.10.93, 5.4.173. L'aghjurnamenti di u pacchettu di vulnerabilità sò digià stati liberati per RHEL, Debian, Fedora, Ubuntu. A correzione ùn hè ancu dispunibule nantu à Arch Linux, Gentoo, SUSE è openSUSE. Cum'è una soluzione di sicurezza per i sistemi chì ùn utilizanu micca l'isolamentu di u containeru, pudete stabilisce u valore di sysctl "user.max_user_namespaces" à 0: echo "user.max_user_namespaces=0" > /etc/sysctl.d/userns.conf # sysctl -p / etc/ sysctl.d/userns.conf

Source: opennet.ru

Add a comment