Ranljivost, ki vam omogoča preboj iz izoliranega okolja QEMU

Razkrito podrobnosti kritične ranljivosti (CVE-2019-14378) v privzetem upravljalniku SLIRP, ki se uporablja v QEMU za vzpostavitev komunikacijskega kanala med navideznim omrežnim vmesnikom v sistemu za goste in omrežnim zaledjem na strani QEMU. Težava vpliva tudi na virtualizacijske sisteme, ki temeljijo na KVM (v Uporabniški način) in Virtualbox, ki uporabljata zaledje slirp iz QEMU, ter aplikacije, ki uporabljajo omrežni sklad uporabniškega prostora libSLIRP (TCP/IP emulator).

Ranljivost omogoča izvajanje kode na strani gostiteljskega sistema s pravicami procesa obdelovalnika QEMU, ko se iz gostujočega sistema pošlje posebej oblikovan zelo velik omrežni paket, ki zahteva fragmentacijo. Zaradi napake v funkciji ip_reass(), ki se kliče pri ponovnem sestavljanju dohodnih paketov, se prvi fragment morda ne bo prilegal v dodeljeni medpomnilnik in njegov rep bo zapisan v pomnilniška področja poleg medpomnilnika.

Že za testiranje na voljo delujoč prototip izkoriščanja, ki omogoča obhod ASLR in izvajanje kode s prepisovanjem pomnilnika matrike main_loop_tlg, vključno s seznamom QEMUTimerList z obdelovalci, ki jih kliče časovnik.
Ranljivost je že odpravljena Fedora и SUSE/openSUSE, vendar ostane nepopravljeno v Debian, Arch Linux и FreeBSD. V Ubuntu и RHEL Težava se ne pojavi zaradi neuporabe slirp. Ranljivost v zadnji izdaji ostaja nepopravljena libslirp 4.0 (popravek je trenutno na voljo kot obliž).

Vir: opennet.ru

Dodaj komentar