В развиваемом проектом QEMU коде эмуляции контроллера флоппи-дисков (FDC) выявлена (https://securityblog.redhat.com/2015/05/13/venom-dont-get-bi.../) критическая уязвимость (CVE-2015-3456), получившая кодовое имя VENOM (http://venom.crowdstrike.com/). Кроме QEMU драйвер также используется в системах виртуализации Xen и KVM. Уязвимость позволяет выйти за пределы гостевой системы и получить управления над базовым хост-окружением.
Пользователь гостевой системы, имеющий доступ к портам ввода/вывода может отправить эмулятору контроллера FDC специально оформленную команду, которая приведёт к переполнению буфера и выполнению произвольного кода на стороне гостевой системы с правами сопутствующего процесса QEMU. Если данный процесс выполняется с правами root, то пользователь может обойти ограничения виртуализации и из гостевого окружения получить root-доступ к основной системе.
Проблема проявляется во всех гостевых системах на базе архитектуры x86 и x86-64, выполняемых с использованием гипервизора Xen в режиме полной виртуализации (HVM) и в системах на базе QEMU/KVM. Тип эмулируемого оборудования и настройки запуска QEMU не имеют значения, так как в режимах PIIX и ICH9 создаётся мост для шины ISA, в котором в любом случае доступен виртуальный контроллер флоппи-дисков.
Обновления с устранением уязвимости уже выпущено для RHEL (https://access.redhat.com/articles/1444903), CentOS (http://lists.centos.org/pipermail/centos-announce/2015-May/0...), Ubuntu (http://www.ubuntu.com/usn/usn-2608-1/) и Debian (https://lists.debian.org/debian-security-announce/2015/msg00...). Оценить появление обновлений в других дистрибутивах можно на следующих страницах: Fedora (https://admin.fedoraproject.org/updates/), openSUSE (http://lists.opensuse.org/opensuse-security-announce/), SLES (https://www.suse.com/support/update/), Slackware (http://www.slackware.com/security/list.php?l=slackware-secur...), Gentoo (http://www.gentoo.org/security/en/index.xml), FreeBSD (http://www.vuxml.org/freebsd/), NetBSD (http://www.netbsd.org/support/security/). В качестве обходного пути защиты предлагается использовать sVirt и seccomp для ограничения привилегий процесса QEMU и ограничение доступа к ресурсам.
URL: https://securityblog.redhat.com/2015/05/13/venom-dont-get-bi.../
Новость: http://www.opennet.me/opennews/art.shtml?num=42223
> Тип эмулируемого оборудования и настройки запуска QEMU не имеют значения, так как в режимах PIIX и ICH9 создаётся мост для шины ISA, в котором в любом случае доступен виртуальный контроллер флоппи-дисков.Ну и зачем так сделали?
Я бы спросил иначе. Нафуя в 2015 году вообще таскать драйвер эмулирующий флоповод?
Те же античные окошки в принципе ничего кроме флопика не признают во время установки, если драйвера надо поставить.P.S. И, да, даже в 2015 году вполне актуальны виртуалки с XP/2003/2000 для каких-нибудь античных прог, написанных в 90ые (а современных аналогов нет или они стоят больше годового бюджета твоей конторы :) ).
В случае виртуалок с XP/2003/2000 эмулируется древний IDE контроллер. Который старые системы понимают без проблем встроенным в систему драйвером.
Вот только virtio-драйвера производительней в разы при существенно меньшем потреблении CPU (тоже в разы). При одной, слабо нагруженной, виртуалке это не столь заметно, а если этих виртуалок у тебя десяток-два на хосте крутится?
Не, можно, конечно, инсталлировать древние окошки под эмулируемый ide-контроллер и эмулируемый же realtek 8139, а потом все драйвера/виртуальные девайсы менять на правильные, но зачем?В конце-концов, часть тех самых древних прог желает работать только с флопиком, то есть тот или иной эмулятор флопика в системе таки должен присутствовать.
Согласен. А вообще надо заметить что частенько wine тянет эти проги лучше новых версий винды.;-)
> Я бы спросил иначе. Нафуя в 2015 году вообще таскать драйвер эмулирующий
> флоповод?может, потому, что виртуалки не только для запихивания в них уебсервисни используются, например?
К сожалению в ядре всё держится на костылях, а передалать так это надо пол ядра переписать...
Можно подумать ты в ядре хоть с пол-шишечки понимаешь Ыгспёрд :-D
Ну не все же такие дегенераты как ты
жду в тред того анонимуса, который противопоставлял "дырявый" докер "сверхнадежным" квм и пр.
Я другой ононим. Но факт в том, что в дыркере дыра на дыре, а тут вообще редчайшее явление.
На солнце обнаружены пятна! Ждём в тред того анонимуса, который противопоставлял "тусклые" лампы накаливания "сверхярким" звёздам и пр.
Эпично, слов нету.
Еще бы exploit.. и все.
Программисты на С они такие программисты... Зная, что язык не контролирует переполнение массива, они все равно не контролируют массивы вручную...
> Программисты на С они такие программисты... Зная, что язык не контролирует переполнение массива, они все равно не контролируют массивы вручную...Эх, а нужно то всего лишь на Go переписать...
Зачем такая экзотика? Есть же Java!
> Зачем такая экзотика? Есть же Java!Javascript же!
Уже
А нужно то всего-то написать маленькую функцию для контроля и кидать данные в массив не напрямую, а через эту функцию. Или несколько таких функций, для разных случаев. Очень сложно, да?
> функций, для разных случаев. Очень сложно, да?Виртуализатор который выдаст 30% от скорости bare metal - никто не возьмет, даже если за это приплатить.
Представь себе что на копирование каждого байта (или ворда) делается не только собственно копирование но еще и вызов функции проверки - а можно ли так копировать?! Ну и получится у тебя очередная ЖабаКотораяНеТормозит.
Во-первых, такая дырища в безопасности всяко хуже. Во-вторых, то, о чем Вы говорите, было актуально лет этак двадцать назад. Сейчас компилятор сам пересобачивает весь код, вставляя свои оптимизации. И вариант с проверкой может оказаться, в результате, даже быстрей.
> Во-первых, такая дырища в безопасности всяко хуже.да флопи вставь твою дырищу.
> Во-первых, такая дырища в безопасности всяко хуже.Хуже когда молчат. Когда увидев орут и фиксят - это ОТЛИЧНО!
> Во-вторых, то, о чем Вы говорите, было актуально лет этак двадцать назад.Театров не будет ... будет сплошное телевидение! (С)
> Сейчас компилятор сам пересобачивает весь код, вставляя свои оптимизации.Это - про оптимизацию скорости или размера. Покажи мне хоть один компилятор пересобачивающий код для устранения секурити дыр :) То что новые добавляют stack smash это немного не то ....
> И вариант с проверкой может оказаться, в результате, даже быстрей.Фантастика! (С)
Впрочем жабщики давно знают что jvm умнее их. Причем не потому что jvm такая умная :)))
> Виртуализатор который выдаст 30% от скорости bare metalbare metal шустрой 1.44M дискетки выдавал порядка 30 кб/с, помнится.
> Эх, а нужно то всего лишь на Go переписать...Нужно всего лишь иметь внутреннюю дисциплину.
> массива, они все равно не контролируют массивы вручную...Судя по древности бага - про драйвер флоповода, писаный левой пяткой, все просто забыли и забили.
Будет повод выпилить!)
хм...
а если не создавал в гипервизоре флопик для гостевой?
прокатит?
> а если не создавал в гипервизоре флопик для гостевой?
> прокатит?Можно ли сломать спинку у лавочки, если она изначально без спинки? Ну вот то-то и оно - упрощение конструкции иногда дает свои результаты :)
ну мало ли...
сперва решил что, гостевой винде, создаешь эмулятор дискетки, запускаешь сплоит.. и вуаля.. гипервизор порутан..а так, непритяно канеш, но не так смертельно уж... сми такие сми...
"Также не имеет значение наличие в гостевой системе файла устройства для доступа к флоппи-диску, так как эксплуатация производится через обращение к портам ввода/вывода."вроде как отсутствие наличия не влияет, или таки да?
> вроде как отсутствие наличия не влияет, или таки да?Не влияет поскольку, даже если флопи не будет бага будет работать. Потому что Тип эмулируемого оборудования и настройки запуска QEMU не имеют значения, так как в режимах PIIX и ICH9 создаётся мост для шины ISA, в котором в любом случае доступен виртуальный контроллер флоппи-дисков.
> even guests without floppy disk explicitly enabled in the libvirt or Xen configuration files are affected.
В новости же синим по зеленому написано, что нет
За тебя его создали принудительно.
> even guests without floppy disk explicitly enabled in the libvirt or Xen configuration files are affected.
эксплойт опять самому копилировать без техподдержки?
да уже написали не парься
Я мой дискета твой сервер шатал, да!
шлюшай... вах, как харашо сказал..красавчеГ
citrix xen кому он нужен теперь,если с версии 6.5 платным стал?!
> отправить эмулятору контроллера FDC специально оформленную команду, которая приведёт к переполнению буфера и выполнению произвольного кода на стороне гостевой системы с правами сопутствующего процесса QEMUПоможет всем: https://grsecurity.net/features.php