Zlokalizowana przez ekspertów z CrowdStrike luka o nazwie VENOM (Virtualized Environment Neglected Operations Manipulation) w popularnych hipervisorach Xen, KVM i QEMU umożliwiała atakującemu przejęcie kontroli nad sąsiednimi instancjami maszyn wirtualnych, o ile te znajdowały się w jednej sieci.

Za „ucieczkę” z maszyny wirtualnej do maszyny fizycznej i przejęcie kontroli nad całą platformą winna jest luka w wirtualnym kontrolerze dyskietek (ang. FDC - Floppy Disk Controller), który domyślnie dodawany jest do nowych maszyn wirtualnych. I nie ma tu znaczenia, czy urządzenie zostanie usunięte z konfiguracji sprzętowej, ponieważ kod odpowiedzialny za obsługę dyskietek nadal działa w tle i jest podatny na przepełnienie bufora.

System operacyjny gościa, który komunikuje się z FDC (host<->stacja dyskietek) wysyła polecenia takie jak seek, read, write, format do portu wejścia/wyjścia FDC. Wirtualny kontroler FDC w QEMU wykorzystuje bufor o stałym rozmiarze do przechowywania tych poleceń i parametrów powiązanych z danymi. Natomiast FDC śledzi, ile danych może odebrać dla każdego polecenia. Po otrzymaniu poleceń wykonuje je i czyści bufor (jak się okazuje nie zawsze) dla następnego polecenia. Jeśli więc uda się przesłać odpowiednią sekwencję poleceń, może to skutkować wykonaniem kodu z uprawnieniami systemu operacyjnego. Na całe szczęście, aby atak teoretycznie odniósł, użytkownik w systemie maszyny gościa musi posiadać prawa roota lub administratora. 

Jak podają autorzy odkrytej luki, błąd ten istniał już od roku 2004 kiedy to dodano obsługę stacji dyskietek do QEMU. Na dzień dzisiejszy nie są podatne VMware i Hiper-V. Natomiast aktualizacje dla Xen, KVM i QEMU zostały już udostępnione. 

AUTOR:

Adrian Ścibor

Podziel się