Йоанна Рутковская (Joanna Rutkowska), известный польский исследователь в области компьютерной безопасности, после трёх лет разработки представила первый релиз операционной системы Qubes, реализующей идею строгой изоляции приложений и компонентов ОС с задействованием системы виртуализации Xen.

Для загрузки доступен установочный образ, размером 1.5 Гб. Для работы Qubes необходима система с 4 Гб ОЗУ, 64-разрядным CPU Intel или AMD, желательно с поддержкой технологий VT-d или AMD IOMMU. Из графических карт в полной мере поддерживается только Intel GPU, при использовании NVIDIA наблюдаются проблемы, а работа карт AMD/ATI не протестирована.

Приложения в Qubes разделены на классы в зависимости от важности обрабатываемых данных и решаемых задач, каждый класс приложений, а также системные сервисы (сетевая подсистема, работа с хранилищем и т.п.), работают в отдельных виртуальных машинах. Работа с изолированными программами осуществляется через единый рабочий стол - с точки зрения пользователя, программы запускаются как в обычных системах, а виртуализация плотно скрыта "под капотом". При запуске приложения виртуальное окружение выбирается в зависимости от уровня важности и конфиденциальности данных. Например, для просмотра развлекательных сайтов браузер можно запустить в базовом виртуальном окружении, при выполнении текущих задач - в окружении для работы, а при оплате заказа через платёжные системы - в окружении для совершения конфиденциальных операций. Для наглядного разделения информации о том, в окружении соответствующем какому уровню конфиденциальности запущено приложение используется выделение цветом рамки окна.

В качестве основы для формирования виртуальных окружений используется пакетная база Fedora 17. Содержание виртуальных окружений определяется набором шаблонов. Настройка и управление работой большинства подсистем Qubes осуществляется через простой графический интерфейс Qubes Manager. Для организации междоменных сервисов задействован механизм Qrexec, который позволяет выполнять команды в контексте заданных виртуальных окружений, например, когда пользователь запускает из меню KDE приложение, это приложение стартует в определенной виртуальной машине. Обновления пакетов в корневой системе, служебных виртуальных окружениях и окружениях для запуска приложений осуществляется через специально подготовленный сервис.

Функциональность корневой системы, обслуживающей Dom0, существенно урезана, для обеспечения работы таких функций как сетевые операции, доступ к хранилищу и формирование графического интерфейса используются отдельные виртуальные машины, изолированные друг от друга. Каждое окружение для запуска приложений имеет доступ на чтение к базовой корневой ФС и локальному хранилищу, не пересекающемуся с хранилищами других окружений. Сетевые операции и работа с хранилищем осуществляется через обращения к виртуальным машинам с соответствующими системными сервисами. Так как все сетевые операции выполняются через отдельное виртуальное окружение, в ситуации, если злоумышленник проникнет в систему, используя уязвимость в сетевом драйвере, под угрозой окажется только курирующее выполнение сетевых операций виртуальное окружение.

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

Для организации вывода в каждом виртуальном окружении для приложений запускается отдельный X-сервер, упрощённый оконный менеджер и видеодрайвер-заглушка, транслирующий вывод в управляющее окружение в композитном режиме.

Дополнительно поставляется несколько приложений, специфичных для Qubes. Например, плагин для почтового клиента Thunderbird, позволяющий в один клик открыть вложение в отдельной виртуальной машине или сохранить вложение в любом выбранном виртуальном окружении.

Источник: http://www.opennet.ru/opennews/art.shtml?num=34732