The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги | ]

13.05.2015 20:34  Критическая уязвимость, позволяющая выполнить код вне гостевой системы в Xen, KVM, VirtualBox и QEMU

В развиваемом проектом QEMU коде эмуляции контроллера флоппи-дисков (FDC) выявлена критическая уязвимость (CVE-2015-3456), получившая кодовое имя VENOM. Кроме QEMU драйвер также используется в системах виртуализации Xen, KVM и VirtualBox. Уязвимость позволяет выйти за пределы гостевой системы и получить управления над базовым хост-окружением.

Пользователь гостевой системы, имеющий доступ к портам ввода/вывода (привилегированный пользователь в Linux и любой пользователь в Windows), может отправить эмулятору контроллера FDC специально оформленную команду, которая приведёт к переполнению буфера и выполнению произвольного кода на стороне гостевой системы с правами сопутствующего процесса QEMU. Если данный процесс выполняется с правами root, то пользователь может обойти ограничения виртуализации и из гостевого окружения получить root-доступ к основной системе.

Проблема проявляется во всех гостевых системах на базе архитектуры x86 и x86-64, выполняемых с использованием гипервизора Xen в режиме полной виртуализации (HVM) и в системах на базе QEMU/KVM. Тип эмулируемого оборудования и настройки запуска QEMU не имеют значения, так как в режимах PIIX и ICH9 создаётся мост для шины ISA, в котором в любом случае доступен виртуальный контроллер флоппи-дисков. Также не имеет значение наличие в гостевой системе файла устройства для доступа к флоппи-диску, так как эксплуатация производится через обращение к портам ввода/вывода.

Обновления с устранением уязвимости уже выпущено для RHEL, CentOS, Ubuntu и Debian. Также доступны патчи к QEMU и Xen. Оценить появление обновлений в других дистрибутивах можно на следующих страницах: Fedora, openSUSE, SLES, Slackware, Gentoo, FreeBSD, NetBSD. В качестве обходного пути защиты в RHEL/CentOS предлагается использовать sVirt и seccomp для ограничения привилегий процесса QEMU и ограничение доступа к ресурсам. В Ubuntu в конфигурации по умолчанию при использовании QEMU с libvirt применяется дополнительная изоляция при помощи AppArmor.

Проблема присутствует с 2004 года и вызвана отсутствием проверки переполнения при записи в FIFO-буфер фиксированного размера, используемый в слое эмуляции FDC для хранения команд контроллера и их параметров. Запись в буфер ведётся побайтово, отражая запись данных в порты ввода/вывода, с последующим увеличением индекса, указывающего на текущую позицию в буфере. После выполнения команды индекс сбрасывается в ноль и для следующей команды буфер заполняется заново. Для некоторых команд, таких как FD_CMD_READ_ID и FD_CMD_DRIVE_SPECIFICATION_COMMAND, в определённых ситуациях сброс индекса не производился или производился с задержкой, что даёт возможность полностью заполнить буфер и осуществить запись за его пределы.

Дополнение: Компания Oracle объявила о наличии данной уязвимости в VirtualBox и Oracle VM.

  1. Главная ссылка к новости (https://securityblog.redhat.co...)
  2. OpenNews: Критическая уязвимость в гипервизоре Xen
  3. OpenNews: Уязвимость, позволяющая получить доступ к диску хост-системы из гостевого окружения QEMU/KVM
  4. OpenNews: Уязвимости в Xen, позволяющие из гостевого окружения получить доступ к хост-системе
  5. OpenNews: Уязвимость в SCSI-коде QEMU, позволяющая выйти за пределы гостевого окружения Xen
  6. OpenNews: Уязвимость в KVM, потенциально позволяющая поднять привилегии в гостевой системе
Лицензия: CC-BY
Тип: Интересно / Проблемы безопасности
Ключевые слова: qemu, xen, kvm, security
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Ajax/Линейный | Раскрыть все сообщения | RSS
 
  • 1.1, Аноним (-), 21:08, 13/05/2015 [ответить] [показать ветку] [···]     [к модератору]
  • +2 +/
    Ну и зачем так сделали ... весь текст скрыт [показать]
     
     
  • 2.10, Аноним (-), 22:11, 13/05/2015 [^] [ответить]    [к модератору]  
  • +4 +/
    Я бы спросил иначе. Нафуя в 2015 году вообще таскать драйвер эмулирующий флоповод?
     
     
  • 3.24, dalco (ok), 07:45, 14/05/2015 [^] [ответить]     [к модератору]  
  • +3 +/
    Те же античные окошки в принципе ничего кроме флопика не признают во время устан... весь текст скрыт [показать]
     
     
  • 4.31, none7 (ok), 16:33, 14/05/2015 [^] [ответить]    [к модератору]  
  • +/
    В случае виртуалок с XP/2003/2000 эмулируется древний IDE контроллер. Который старые системы понимают без проблем встроенным в систему драйвером.
     
     
  • 5.39, dalco (ok), 03:37, 15/05/2015 [^] [ответить]     [к модератору]  
  • +1 +/
    Вот только virtio-драйвера производительней в разы при существенно меньшем потре... весь текст скрыт [показать]
     
  • 4.32, Аноним (-), 18:50, 14/05/2015 [^] [ответить]    [к модератору]  
  • +1 +/
    Согласен. А вообще надо заметить что частенько wine тянет эти проги лучше новых версий винды.;-)
     
  • 3.44, arisu (ok), 13:21, 22/05/2015 [^] [ответить]    [к модератору]  
  • +/
    > Я бы спросил иначе. Нафуя в 2015 году вообще таскать драйвер эмулирующий
    > флоповод?

    может, потому, что виртуалки не только для запихивания в них уебсервисни используются, например?

     
  • 2.13, еуые (?), 22:14, 13/05/2015 [^] [ответить]    [к модератору]  
  • –10 +/
    К сожалению в ядре всё держится на костылях, а передалать так это надо пол ядра  переписать...
     
     
  • 3.33, Аноним (-), 19:21, 14/05/2015 [^] [ответить]    [к модератору]  
  • +3 +/
    Можно подумать ты в ядре хоть с пол-шишечки понимаешь Ыгспёрд :-D
     
     
  • 4.40, Аноним (-), 11:42, 15/05/2015 [^] [ответить]    [к модератору]  
  • +/
    Ну не все же такие дегенераты как ты
     
  • 1.2, Аноним (-), 21:09, 13/05/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    жду в тред того анонимуса, который противопоставлял "дырявый" докер "сверхнадежным" квм и пр.
     
     
  • 2.3, Аноним (-), 21:30, 13/05/2015 [^] [ответить]    [к модератору]  
  • +2 +/
    Я другой ононим. Но факт в том, что в дыркере дыра на дыре, а тут вообще редчайшее явление.
     
  • 2.6, Аноним (-), 21:40, 13/05/2015 [^] [ответить]    [к модератору]  
  • +9 +/
    На солнце обнаружены пятна! Ждём в тред того анонимуса, который противопоставлял "тусклые" лампы накаливания "сверхярким" звёздам и пр.
     
  • 1.4, InventoRs (ok), 21:31, 13/05/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • –3 +/
    Эпично, слов нету.
    Еще бы exploit.. и все.
     
  • 1.5, жабабыдлокодер (ok), 21:35, 13/05/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • –2 +/
    Программисты на С они такие программисты... Зная, что язык не контролирует переполнение массива, они все равно не контролируют массивы вручную...
     
     
  • 2.7, Аноним (-), 21:53, 13/05/2015 [^] [ответить]    [к модератору]  
  • –1 +/
    > Программисты на С они такие программисты... Зная, что язык не контролирует переполнение массива, они все равно не контролируют массивы вручную...

    Эх, а нужно то всего лишь на Go переписать...

     
     
  • 3.8, Gannet (ok), 21:59, 13/05/2015 [^] [ответить]    [к модератору]  
  • –2 +/
    Зачем такая экзотика? Есть же Java!
     
     
  • 4.34, Аноним (-), 19:24, 14/05/2015 [^] [ответить]    [к модератору]  
  • –1 +/
    > Зачем такая экзотика? Есть же Java!

    Javascript же!

     
     
  • 5.43, Анонимус сапиенс (?), 12:30, 17/05/2015 [^] [ответить]    [к модератору]  
  • +/
    Уже
     
  • 3.9, жабабыдлокодер (ok), 22:08, 13/05/2015 [^] [ответить]    [к модератору]  
  • –1 +/
    А нужно то всего-то написать маленькую функцию для контроля и кидать данные в массив не напрямую, а через эту функцию. Или несколько таких функций, для разных случаев. Очень сложно, да?
     
     
  • 4.14, Аноним (-), 22:15, 13/05/2015 [^] [ответить]     [к модератору]  
  • +/
    Виртуализатор который выдаст 30 от скорости bare metal - никто не возьмет, даже... весь текст скрыт [показать]
     
     
  • 5.16, жабабыдлокодер (ok), 22:21, 13/05/2015 [^] [ответить]     [к модератору]  
  • –1 +/
    Во-первых, такая дырища в безопасности всяко хуже Во-вторых, то, о чем Вы говор... весь текст скрыт [показать]
     
     
  • 6.21, ананим.orig (?), 22:57, 13/05/2015 [^] [ответить]    [к модератору]  
  • +/
    > Во-первых, такая дырища в безопасности всяко хуже.

    да флопи вставь твою дырищу.

     
  • 6.35, Аноним (-), 19:30, 14/05/2015 [^] [ответить]     [к модератору]  
  • +/
    Хуже когда молчат Когда увидев орут и фиксят - это ОТЛИЧНО Театров не будет ... весь текст скрыт [показать]
     
  • 5.27, Michael Shigorin (ok), 11:45, 14/05/2015 [^] [ответить]    [к модератору]  
  • +2 +/
    > Виртуализатор который выдаст 30% от скорости bare metal

    bare metal шустрой 1.44M дискетки выдавал порядка 30 кб/с, помнится.

     
  • 3.18, Аноним (-), 22:27, 13/05/2015 [^] [ответить]    [к модератору]  
  • +2 +/
    > Эх, а нужно то всего лишь на Go переписать...

    Нужно всего лишь иметь внутреннюю дисциплину.

     
  • 2.11, Аноним (-), 22:12, 13/05/2015 [^] [ответить]    [к модератору]  
  • +4 +/
    > массива, они все равно не контролируют массивы вручную...

    Судя по древности бага - про драйвер флоповода, писаный левой пяткой, все просто забыли и забили.

     
     
  • 3.38, Hile (?), 00:44, 15/05/2015 [^] [ответить]    [к модератору]  
  • +/
    Будет повод выпилить!)
     
  • 1.12, фыва (?), 22:13, 13/05/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • –1 +/
    хм...
    а если не создавал в гипервизоре флопик для гостевой?
    прокатит?
     
     
  • 2.15, Аноним (-), 22:16, 13/05/2015 [^] [ответить]     [к модератору]  
  • +2 +/
    Можно ли сломать спинку у лавочки, если она изначально без спинки Ну вот то-то ... весь текст скрыт [показать]
     
     
  • 3.17, фыва (?), 22:25, 13/05/2015 [^] [ответить]    [к модератору]  
  • –1 +/
    ну мало ли...
    сперва решил что, гостевой винде, создаешь эмулятор дискетки, запускаешь сплоит.. и вуаля.. гипервизор порутан..

    а так, непритяно канеш, но не так смертельно уж... сми такие сми...

     
  • 3.19, sdog (ok), 22:34, 13/05/2015 [^] [ответить]    [к модератору]  
  • +1 +/
    "Также не имеет значение наличие в гостевой системе файла устройства для доступа к флоппи-диску, так как эксплуатация производится через обращение к портам ввода/вывода."

    вроде как отсутствие наличия не влияет, или таки да?

     
     
  • 4.20, Аноним (-), 22:48, 13/05/2015 [^] [ответить]     [к модератору]  
  • +/
    Не влияет поскольку, даже если флопи не будет бага будет работать Потому что Ти... весь текст скрыт [показать]
     
  • 4.36, Аноним (-), 23:54, 14/05/2015 [^] [ответить]    [к модератору]  
  • +/
    > even guests without floppy disk explicitly enabled in the libvirt or Xen configuration files are affected.
     
  • 2.26, Аноним (-), 10:21, 14/05/2015 [^] [ответить]    [к модератору]  
  • +1 +/
    В новости же синим по зеленому написано, что нет
     
  • 2.30, Аноним (-), 13:13, 14/05/2015 [^] [ответить]    [к модератору]  
  • +/
    За тебя его создали принудительно.
     
  • 2.37, Аноним (-), 23:54, 14/05/2015 [^] [ответить]    [к модератору]  
  • +/
    > even guests without floppy disk explicitly enabled in the libvirt or Xen configuration files are affected.
     
  • 1.23, Аноним (-), 04:57, 14/05/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • +1 +/
    эксплойт опять самому копилировать без техподдержки?
     
     
  • 2.25, Аноним (-), 08:00, 14/05/2015 [^] [ответить]    [к модератору]  
  • +/
    да уже написали не парься
     
  • 1.28, Аноним (-), 11:55, 14/05/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • –2 +/
    Я мой дискета твой сервер шатал, да!
     
     
  • 2.29, фыва (?), 12:21, 14/05/2015 [^] [ответить]    [к модератору]  
  • –2 +/
    шлюшай... вах, как харашо сказал..красавчеГ
     
  • 1.41, Гога (?), 11:56, 15/05/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • –2 +/
    citrix xen кому он нужен теперь,если с версии 6.5 платным стал?!
     
  • 1.42, Аноним (-), 09:15, 16/05/2015 [ответить] [показать ветку] [···]     [к модератору]  
  • +/
    Поможет всем https grsecurity net features php ... весь текст скрыт [показать]
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2018 by Maxim Chirkov  
    ДобавитьПоддержатьВебмастеруГИД  
    Hosting by Ihor