QubesOS: уязвимость в qvm-copy-to-vm позволяет выполнить код в dom0
Arbitrary code execution in QubesOS via copy-to-VM error reporting backchannel
Опубликован бюллетень безопасности QSB-118, описывающий критическую уязвимость в Qubes OS. При копировании файла из dom0 в скомпрометированный квоб через qvm-copy-to-vm, атакующий может внедрить произвольную команду в dom0, получив полный контроль над системой. Проблема вызвана недостаточной санитизацией имени файла в функции sanitize_remote_filename(), которая пропускает shell-метасимволы, и последующим вызовом system() в display_error(). Все версии Qubes OS уязвимы. Исправление доступно в пакете qubes-core-dom0-linux 4.3.22.
Проблема в том, что sanitize_remote_filename() удаляет только не-ASCII символы и двойные кавычки, но оставляет shell-метасимволы на месте.
- msm_
Ого, это серьёзно. Заставляет задуматься, что даже несмотря на то, что поверхность атаки QubesOS такая крошечная (хорошо спроектирована для безопасности), всё равно находятся уязвимости.
Стоит отметить, что (как я понимаю) эта уязвимость возникает только при копировании в VM из Dom0:
>Обратите внимание, что вариант VM для `qvm-copy-to-vm` не затронут, поскольку его
>версия функции сообщения об ошибках не использует `system()`:
Поскольку вы не должны использовать Dom0 для обычной работы и уж точно не для взаимодействия с вероятно заражёнными VM, масштаб этой атаки меньше, чем кажется. С другой стороны, когда она срабатывает, она повышает привилегии прямо до Dom0.
- grommz
Основатель Джоанна Рутковска покинула QubesOS в 2018 году. Весь код, связанный с этой ошибкой, был написан её преемником Мареком Марчиковски-Гурецким.
Джоанна, похоже, действительно хороший человек, она однажды написала статью под названием "Intel x86 considered harmful". Вот почему Huawei и китайское правительство даже не пытаются больше сделать западные архитектуры CPU безопасными, это безнадёжное дело.
- sdcfgy
Опять напоминает Тео ДеРаадта: https://marc.info/?l=openbsd-misc&m=119318909016582
- user_7832
Небольшое отклонение: не мог бы кто-нибудь объяснить мне, почему Qubes используется для безопасности, когда (насколько я понимаю) Jails в BSD значительно более надёжны/безопасны/имеют гораздо меньшую площадь воздействия? Это просто "все уже используют Linux; вот более безопасный Linux"?
- zby
Я до сих пор впечатлён треком QubesOS и использую его для своего выделенного ноутбука для 'финансовых операций'.
IMHO, то, что сдерживает QubesOS, — это отсутствие аппаратного ускорения графики — может быть, теперь, когда конфигурации с двумя мониторами становятся популярными, это может быть обходным путём для соображений безопасности?