детайли на критична уязвимост () в обработчика на SLIRP, по подразбиране използван в QEMU за организиране на комуникационен канал между виртуалния мрежов адаптер в гостоприемната система и мрежовия бекенд на страната на QEMU. Проблемът засяга също системи за виртуализация на базата на KVM (в режим ) и Virtualbox, в които се използват бекенд slirp от QEMU, както и приложения, използващи мрежовия стек в потребителското пространство (емулатор на TCP/IP).
Уязвимостта позволява изпълнение на код на страната на хост-системата с правата на процеса-обработчик QEMU при изпращане от гостоприемната система на специално форматиран много голям мрежов пакет, за който е необходимо извършване на фрагментация. Поради грешка в функцията ip_reass(), извиквана при повторното сглобяване на входящи пакети, първият фрагмент може да не се побере в заделения буфер и неговият край ще бъде записан в следващите области на паметта след буфера.
За тестване вече работен прототип на експлойт, в който е предвидено заобикалянето на ASLR и изпълнението на код чрез презаписване на паметта на масива main_loop_tlg, включващ списъка QEMUTimerList с обработчици, извиквани по таймер.
Уязвимостта вече е отстранена в и , но остава неизправна в , и . В и проблемът не се проявява поради неупотреба на slirp. Уязвимостта остава неизправна в последното издание (поправката засега е налична под формата на ).
Източник: opennet.ru
