VENOM: уязвимость QEMU (CVE-2015-3456)

Центр безопасности Red Hat сообщает об уязвимости в QEMU, приводящей к переполнению буфера эмулятора контроллера гибких дисков в QEMU, тем самым подвергая риску безопасность систем виртуализации KVM/QEMU и Xen. Уязвимость была обнаружена Джейсоном Геффнером (Jason Geffner) из CrowdStrike Inc. и получила кодовое название VENOM. Ей был присвоен рейтинг на уровне ВАЖНО и назначен код CVE-2015-3456.

Описание

QEMU — система эмуляции и виртуализации аппаратного обеспечения компьютера с открытым исходным кодом, которая интегрирована в некоторые решения Red Hat для эмуляции оборудования виртуальных машин, работающих под управлением Xen и KVM/QEMU.

Степень воздействия

Привилегированный пользователь виртуальной машины потенциально может вызвать ее сбой, обойти ограничения виртуализации и запустить произвольный код в хост-системе с разрешениями процесса QEMU. Даже если виртуальный дисковод не настроен, эту уязвимость все равно можно будет эксплуатировать. Проблема кроется в контроллере гибких дисков (FDC, Floppy Disk Controller), который инициализируется для каждого гостя x86 и x86_64 независимо от его конфигурации и не может быть отключен или удален.

В настоящее время нет публично доступных эксплойтов, использующих эту уязвимость. Чтобы предотвратить риск потенциальной атаки, можно ограничить разрешения процесса QEMU и его доступ к ресурсам средствами sVirt и seccomp. Другой подход заключается в создании политики, запрещающей недоверенным пользователям выполнять задачи уровня администратора в гостевых системах.

Степень воздействия на программные решения Red Hat

Отсутствие виртуального дисковода в /dev/ не является показателем отсутствия угрозы, так как контроллер FDC будет доступен в любом случае. Пользователь с разрешениями, достаточными для взаимодействия с портами ввода-вывода FDC, — это пользователь root в Linux или любой пользователь в гостевой системе Windows — потенциально может получить несанкционированный доступ к хост-системе. Чтобы минимизировать степень риска, надо запретить недоверенным пользователям получать административные разрешения.

Все программные решения Red Hat, в рамках которых предоставляется QEMU, попадают в группу риска.

Продукт Пакет Рекомендация
Red Hat Enterprise Linux 5 kvm RHSA-2015:1003
xen RHSA-2015:1002
Red Hat Enterprise Linux 6 qemu-kvm RHSA-2015-0998
Red Hat Enterprise Linux 7 qemu-kvm RHSA-2015-0999
Red Hat Enteprise Virtualization 3 (RHEL 6) qemu-kvm-rhev RHSA-2015-1001
Red Hat Enteprise Virtualization 3 (RHEL 7) qemu-kvm-rhev RHSA-2015-1000
OpenStack Platform 4 (RHEL 6) qemu-kvm-rhev RHSA-2015:1004
OpenStack Platform 5 (RHEL 6) qemu-kvm-rhev RHSA-2015:1004
OpenStack Platform 5 (RHEL 7) qemu-kvm-rhev RHSA-2015:1004
OpenStack Platform 6 (RHEL 7) qemu-kvm-rhev RHSA-2015:1004
RHEV-H 3 (RHEL 6) rhev-hypervisor6 RHSA-2015:1011
RHEV-H 3 (RHEL 7) rhev-hypervisor7 RHSA-2015:1011
Обновления гипервизора RHEL

Для установки исправлений qemu-kvm-rhev в RHEL 6.6.z и RHEL 7.1.z (см. таблицу выше) рекомендуется использовать yum (см. секцию Решение).

Обновления гипервизора RHEV (RHEV-H)

Образы RHEV-H были обновлены и теперь включают исправленную версию QEMU (см. RHSA-2015:1011).

Определение уязвимости

Пользователи Red Hat могут проверить наличие вышеупомянутой уязвимости при помощи сценария из лаборатории Red Hat Access: VENOM: QEMU Vulnerability Detector.

Решение

Чтобы исключить риск возникновения инцидентов, установите последние обновления QEMU, KVM и Xen (см. таблицу выше).

Для установки обновлений используйте yum:

yum update

Чтобы обновить только QEMU, выполните:

yum update qemu-kvm

Чтобы изменения вступили в силу, после обновления надо не просто перезапустить виртуальные машины, а выключить их и включить заново. Аналогичного результата можно достичь, выполнив миграцию виртуальных машин на другой узел, что позволит беспрепятственно обновить программы на исходном узле, после чего виртуальные машины можно будет вернуть обратно.

Дополнительная информация

CVE-2015-3456 в блоге безопасности Red Hat

  • Component
  • kvm

Was this helpful?

We appreciate your feedback. Leave a comment if you would like to provide more detail.
It looks like we have some work to do. Leave a comment to let us know how we could improve.