Уязвимость в специфичном для CPU AMD коде KVM, позволяющая выполнить код вне гостевой системы
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
Исследователи из команды Google Project Zero выявили уязвимость (CVE-2021-29657) в поставляемом в составе ядра Linux гипервизоре KVM, позволяющую обойти изоляцию гостевой системы и выполнить свой код на стороне хост-окружения. Проблема присутствует в коде, используемом на системах с процессорами AMD (модуль kvm-amd.ko) и не проявляется для процессоров Intel.
Исследователями подготовлен рабочий прототип эксплоита, позволяющий из гостевого окружения запустить root shell в хост-окружении на системе с процессором AMD Epyc 7351P и ядром Linux 5.10. Отмечается, что это первая брешь класса "guest-to-host" в самом гипервизоре KVM, не связанная с ошибками в компонентах, выполняемых в пространстве пользователя, таких как QEMU. Исправление было принято в ядро в конце марта. Проблема проявляется начиная с ядра Linux 5.10-rc1 и заканчивая v5.12-rc6, т.е. охватывает только ядра 5.10 и 5.11 (большинство стабильных веток дистрибутивов проблема не коснулась).
Проблема присутствует в механизме nested_svm_vmrun, реализованном с использованием расширения AMD SVM (Secure Virtual Machine) и позволяющем организовать вложенный запуск гостевых систем. Для корректной реализации данной функциональности гипервизор должен перехватывать все инструкции SVM, выполняемые в гостевых системах, эмулировать их поведение и синхронизировать состояние с оборудованием, что является достаточно сложной задачей. Проанализировав предложенную в KVM реализацию исследователи нашли логическую ошибку, позволяющую влиять на содержимое MSR-регистров (Model-Specific Register) хоста из гостевой системы, что можно использовать для запуска кода на уровне хоста.
В частности, выполнение операции VMRUN из гостевой системы второго уровня вложенности (L2, запущенной из другой гостевой системы) приводит ко второму вызову nested_svm_vmrun и повреждению структуры svm->nested.hsave, на которую накладываются данные из vmcb гостевой системы L2. В итоге возникает ситуация, когда на уровне гостевой системы L2 можно освободить память в структуре svm->nested.msrpm, в которой хранится бит MSR, несмотря на то, что он продолжает использоваться, и получить доступ к MSR хост-окружения.
===========
Источник:
OpenNet.RU
===========
Похожие новости
- Главная ссылка к новости (https://googleprojectzero.blog...)
- OpenNews: Раскрыты подробности двух атак на процессоры Intel, AMD и ARM64
- OpenNews: Уязвимости в реализации аппаратно изолированных окружений TrustZone
- OpenNews: Уязвимости в гипервизоре Xen, позволяющие выйти за пределы гостевого окружения
- OpenNews: Уязвимость в гипервизоре KVM
- OpenNews: Уязвимость в vhost-net, позволяющая обойти изоляцию в системах на базе QEMU-KVM
Похожие новости:
- [Производство и разработка электроники, Компьютерное железо, Настольные компьютеры, Процессоры, IT-компании] AMD выпустила бракованные APU из Xbox Series X в виде набора 4700S без встроенной графики
- [Компьютерное железо, Видеокарты, Настольные компьютеры, Процессоры] Нюансы подбора железа без видеокарты
- [Беспроводные технологии] The Influence Of Virtual Assistant App In The Business
- [Open source, IT-инфраструктура, Облачные вычисления, GitHub, Управление сообществом] От Планеты GitHub с любовью
- [Процессоры, Игры и игровые приставки, Транспорт] AMD подтвердила, что поставляет «сердце» игровой консоли для Tesla Model S и X
- [Компьютерное железо, Настольные компьютеры, Процессоры, IT-компании] На трехмерных чиплетах AMD умещается до 192 МБ кэша третьего уровня на одном кристалле
- [Настройка Linux, Системное администрирование, Виртуализация] Мониторинг Virtuozzo Hybrid Server с помощь Prometheus
- [Высокая производительность, Искусственный интеллект, Суперкомпьютеры, Астрономия] Суперкомпьютер Perlmutter создаст самую точную карту Вселенной
- [Системное администрирование, IT-инфраструктура, Виртуализация, Облачные сервисы] Шифрование виртуальных машин в облаке с помощью vSphere Virtual Machine Encryption
- [Информационная безопасность, Облачные вычисления] Колумбийский университет в Нью-Йорке заявил о разработке «устойчивой к взлому» системы облачного ПО
Теги для поиска: #_kvm, #_virtual, #_amd
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 12:44
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
Исследователи из команды Google Project Zero выявили уязвимость (CVE-2021-29657) в поставляемом в составе ядра Linux гипервизоре KVM, позволяющую обойти изоляцию гостевой системы и выполнить свой код на стороне хост-окружения. Проблема присутствует в коде, используемом на системах с процессорами AMD (модуль kvm-amd.ko) и не проявляется для процессоров Intel. Исследователями подготовлен рабочий прототип эксплоита, позволяющий из гостевого окружения запустить root shell в хост-окружении на системе с процессором AMD Epyc 7351P и ядром Linux 5.10. Отмечается, что это первая брешь класса "guest-to-host" в самом гипервизоре KVM, не связанная с ошибками в компонентах, выполняемых в пространстве пользователя, таких как QEMU. Исправление было принято в ядро в конце марта. Проблема проявляется начиная с ядра Linux 5.10-rc1 и заканчивая v5.12-rc6, т.е. охватывает только ядра 5.10 и 5.11 (большинство стабильных веток дистрибутивов проблема не коснулась). Проблема присутствует в механизме nested_svm_vmrun, реализованном с использованием расширения AMD SVM (Secure Virtual Machine) и позволяющем организовать вложенный запуск гостевых систем. Для корректной реализации данной функциональности гипервизор должен перехватывать все инструкции SVM, выполняемые в гостевых системах, эмулировать их поведение и синхронизировать состояние с оборудованием, что является достаточно сложной задачей. Проанализировав предложенную в KVM реализацию исследователи нашли логическую ошибку, позволяющую влиять на содержимое MSR-регистров (Model-Specific Register) хоста из гостевой системы, что можно использовать для запуска кода на уровне хоста. В частности, выполнение операции VMRUN из гостевой системы второго уровня вложенности (L2, запущенной из другой гостевой системы) приводит ко второму вызову nested_svm_vmrun и повреждению структуры svm->nested.hsave, на которую накладываются данные из vmcb гостевой системы L2. В итоге возникает ситуация, когда на уровне гостевой системы L2 можно освободить память в структуре svm->nested.msrpm, в которой хранится бит MSR, несмотря на то, что он продолжает использоваться, и получить доступ к MSR хост-окружения. =========== Источник: OpenNet.RU =========== Похожие новости
|
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 12:44
Часовой пояс: UTC + 5