Vulnerabilitatea care vă permite să ieșiți din mediul izolat QEMU

Dezvăluit detalii critice de vulnerabilitate (CVE-2019-14378) în handler-ul SLIRP implicit utilizat în QEMU pentru a stabili un canal de comunicare între adaptorul de rețea virtuală din sistemul invitat și backend-ul rețelei din partea QEMU. Problema afectează și sistemele de virtualizare bazate pe KVM (în Modul utilizator) și Virtualbox, care utilizează backend-ul slirp de la QEMU, precum și aplicații care folosesc stiva de rețea în spațiul utilizatorului libSLIRP (Emulator TCP/IP).

Vulnerabilitatea permite executarea codului pe partea sistemului gazdă cu drepturile unui proces de gestionare QEMU atunci când un pachet de rețea foarte mare special conceput este trimis de la sistemul oaspete, ceea ce necesită fragmentare. Din cauza unei erori în funcția ip_reass(), apelată la reasamblarea pachetelor primite, este posibil ca primul fragment să nu se potrivească în buffer-ul alocat și coada sa va fi scrisă în zonele de memorie de lângă buffer.

Deja pentru testare disponibil un prototip de lucru al exploit-ului, care prevede ocolirea ASLR și executarea codului prin suprascrierea memoriei matricei main_loop_tlg, inclusiv QEMUTimerList cu handlere apelate de timer.
Vulnerabilitatea a fost deja remediată în Fedora и SUSE/openSUSE, dar rămâne necorectat în Debian, Arch Linux и FreeBSD. În Ubuntu и RHEL Problema nu apare din cauza neutilizarii slirp. Vulnerabilitatea rămâne neremediată în cea mai recentă versiune libslirp 4.0 (remedierea este disponibilă în prezent ca plasture).

Sursa: opennet.ru

Adauga un comentariu