The OpenNET Project / Index page

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

19.01.2012 14:25  Представлен virt-sandbox, инструмент для обеспечения изолированного запуска приложений

Даниэль Беррандж (Daniel Berrange), работающий в компании Red Hat над развитием средств виртуализации, представил первый публичный выпуск пакета libvirt-sandbox, позволяющего организовать выполнение произвольных пользовательских приложений в изолированном окружении, построенном с использованием libvirt. В рамках libvirt-sandbox подготовлен API, расширяющий возможности libvirt в плане изолированного запуска отдельных приложений, и специальная сервисная утилита virt-sandbox.

Несколько лет назад компания Red Hat подготовила утилиту sandbox, которая позволяет организовать безопасное выполнение не вызывающих доверия программ с обеспечением изоляции при помощи SELinux, что накладывало определённые ограничения на функциональность sandbox. Утилита virt-sandbox существенно отличается от своего предшественника тем, что использует для изоляции полноценные виртуальные машины и не ограничивается только запуском подозрительных программ, а позиционируется также для более безопасного выполнения программ в повседневной практике и для организации быстрого запуска виртуальных машин для различных сетевых приложений. При использовании virt-sandbox требующие изоляции приложения запускаются напрямую из файловой системы базового хоста, без предварительной установки, сборки и настройки начинки гостевой системы. В настоящее время virt-sandbox поддерживает изоляцию с использованием гипервизора KVM и изолированных контейнеров LXC, но теоретически могут быть использованы любые системы виртуализации, поддерживаемые в libvirt (Xen, VirtualBox и т.п.).

При использовании системы виртуализации KVM возникает проблема с необходимостью формирования полного программного окружения при выполнении каждого приложения, запускаемого в virt-sandbox. Разработчики virt-sandbox нашли простой выход: при каждом запуске на лету создаётся минимальный загрузочный initrd-образ, содержащий специально созданную программу инициализации. После того как данный образ получит управление, программа инициализации загружает модуль ядра virtio-9p и монтирует корневую ФС текущей базовой системы в режиме только для чтения. Таким образом для изолированного приложения формируется гостевое окружение, полностью аналогичное по своему составу базовой системе, но не допускающее внесения изменений. После монтирования ФС производится запуск указанного приложения и перенаправление ввода/вывода на хост-систему. После завершения работы программы, виртуальная машина автоматические завершает своё выполнение. На формирование гостевой системы тратится всего несколько секунд, например, запуск /bin/false под управлением virt-sandbox занимает около 4 секунд (после оптимизации время планируется сократить до 2 секунд).

Подготовка специального API для изолированного запуска отдельных приложений сулит интересные возможности для разработчиков сторонних систем. Например, программист может определить желаемые характеристики изолированного окружения, указав какую программу следует выполнить, какие части ФС смонтировать и какие использовать параметры сети. После вызова соответствующей функции libvirt-sandbox на базе указанной конфигурации можно получить на выходе XML-конфигурацию libvirt для формирования гостевой системы, соответствующей заданным характеристикам и адаптированной для конкретной системы виртуализации.

В настоящее время полноценно работают только консольные приложения. Реализована начальная поддержка запуска GUI-программ, но она ещё требует значительной доработки. Среди планов на будущее отмечается: адаптация virt-viewer и использование SPICE/VNC для организации запуска в sandbox-режиме графических приложений; создание надлежащих политик SELinux для доступа к базовой файловой системе в режиме только для чтения (в настоящее время virt-sandbox работает только в permissive-режиме SELinux); подготовка утилиты для автоматического формирования типовых окружений для различных сервисов, например, для обеспечения запуска изолированной копии apache; задействование возможностей libvirt по формированию межсетевого экрана для дополнительной фильтрации сетевого трафика от изолированных приложений.

Готовые rpm-пакеты с libvirt-sandbox подготовлены для Fedora Linux и доступны в репозитории rawhide. Планируется, что новая система изоляции будет включена в состав релиза Fedora 17.

  1. Главная ссылка к новости (http://berrange.com/posts/2012...)
  2. OpenNews: В SELinux sandbox появилась поддержка изолированного запуска GUI-приложений
  3. OpenNews: Началось бета-тестирование безопасного Linux-дистрибутива Qubes OS
  4. OpenNews: Вторая бета-версия безопасной операционной системы Qubes OS, созданной на базе Linux и Xen
  5. OpenNews: isolate - утилита для изолированного выполнения подозрительных приложений
  6. OpenNews: В безопасной ОС Qubes будет добавлена поддержка одноразовых изолированных окружений
Лицензия: CC-BY
Тип: Программы
Ключевые слова: sandbox, kvm, lxc, virtual, chroot, limit
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Линейный вид | Ajax | Показать все | RSS
 
  • 1.1, Аноним, 18:12, 19/01/2012 [ответить] [смотреть все]
  • +/
    Класс Например впихать туда веб-браузер и или все сетевые приложения которые вы... весь текст скрыт [показать]
     
     
  • 2.2, Боря, 18:16, 19/01/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    См. https://igurublog.wordpress.com/downloads/script-sandfox/
     
  • 2.3, Аноним, 18:23, 19/01/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Это делается через использование network namespaces Хоть каждому приложению по ... весь текст скрыт [показать] [показать ветку]
     
  • 2.30, Аноним, 13:41, 20/01/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +2 +/
    Зачем вам браузер который не может сохранять никакую инфу на диск Да и зачем та... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.66, vi, 23:39, 21/01/2012 [^] [ответить] [смотреть все]  
  • +/
    Уважаемый Аноним, некоторые мысли озвученные Вами, очень интересны для меня Нап... весь текст скрыт [показать]
     
  • 1.4, Аноним, 18:46, 19/01/2012 [ответить] [смотреть все]  
  • +/
    Джоанне Рутковской посвещается :))
     
     
  • 2.18, Аноним, 22:27, 19/01/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Представленная технология является некой пародией на Qubes OS Потому что технол... весь текст скрыт [показать] [показать ветку]
     
  • 1.5, Аноним, 19:04, 19/01/2012 [ответить] [смотреть все]  
  • +6 +/
    > монтирует корневую ФС текущей базовой системы в режиме только для чтения

    Т. е. при запуске "подозрительного" ПО оно вполне сможет украсть данные пользователя: сохранённые в приложениях пароли, куки, и т.д. И прекрасно передать это "наружу".

     
     
  • 2.10, Crazy Alex, 20:42, 19/01/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Тогда ваш случай - это отдельный пользователь с отдельным хомяком, от которого з... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.24, Аноним, 12:13, 20/01/2012 [^] [ответить] [смотреть все]  
  • +/
    Есть риск что недоверяемое приложение прогрейдится до рута и пошарится где-то ещ... весь текст скрыт [показать]
     
     
  • 4.26, Ваня, 12:55, 20/01/2012 [^] [ответить] [смотреть все]  
  • –2 +/
    Виртуалки лучше запускать рекурсивно, т к есть шанс что приложение доберётся ... весь текст скрыт [показать]
     
     
  • 5.41, Аноним, 17:16, 20/01/2012 [^] [ответить] [смотреть все]  
  • +/
    И главное - гораздо более экономичен в плане потребления ресурсов, чем большинст... весь текст скрыт [показать]
     
     
  • 6.44, Ваня, 17:22, 20/01/2012 [^] [ответить] [смотреть все]  
  • –3 +/
    Возможно вы не в курсе, но антивирусы настраиваются Для повышения эффективности... весь текст скрыт [показать]
     
     
  • 7.49, Аноним, 17:43, 20/01/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    От варианта фиговая защита - большое потребление ресурсов до варианта никакая... весь текст скрыт [показать]
     
  • 7.56, Аноним, 02:26, 21/01/2012 [^] [ответить] [смотреть все]  
  • +/
    То-то сами антивирусники для изучения вирусов используют виртуалки ... весь текст скрыт [показать]
     
  • 2.16, Аноним, 22:25, 19/01/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +1 +/
    Технология filesystem namespaces, на которой основан сабж, позволяет сделать пол... весь текст скрыт [показать] [показать ветку]
     
  • 2.20, Аноним, 22:34, 19/01/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +1 +/
    Кстати, возможность полностью отрезать подозрительному приложению сеть оставив ... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.22, anon8, 10:03, 20/01/2012 [^] [ответить] [смотреть все]  
  • –5 +/
    Поттеринг может об этом и знает, но обязательно напишет свой велосипед Фатальны... весь текст скрыт [показать]
     
     
  • 4.33, Аноним, 15:34, 20/01/2012 [^] [ответить] [смотреть все]  
  • +/
    Велосипеды Поттеринга как раз и дают юзерам возможность воспользоваться фичами... весь текст скрыт [показать]
     
     
  • 5.35, Аноним, 15:45, 20/01/2012 [^] [ответить] [смотреть все]  
  • +/
    А все потому, что это юзерспейс написан тридцать лет назад, и на этом прогресс д... весь текст скрыт [показать]
     
     
  • 6.64, Андрей, 04:36, 21/01/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    А чем же разработчики тестируют эти новые фичи ... весь текст скрыт [показать]
     
     
  • 7.68, Аноним, 16:57, 22/01/2012 [^] [ответить] [смотреть все]  
  • +/
    Примитивными сишными прогами из одного syscallа ... весь текст скрыт [показать]
     
  • 5.52, anon8, 19:03, 20/01/2012 [^] [ответить] [смотреть все]  
  • –1 +/
    это какими же?
     
     
  • 6.67, Аноним, 16:56, 22/01/2012 [^] [ответить] [смотреть все]  
  • +/
    cgroups, namespaces, например.
     
  • 5.69, Аноним, 17:03, 22/01/2012 [^] [ответить] [смотреть все]  
  • +/
    Кстати, к вопросу о Поттеринге и фичах ядра http www 0pointer de blog projects... весь текст скрыт [показать]
     
  • 2.23, Аноннимнез, 11:06, 20/01/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Ну таки да Есть такой боян про то как юзер под вайном запустил трояна на посмот... весь текст скрыт [показать] [показать ветку]
     
  • 1.7, Аноним, 20:10, 19/01/2012 [ответить] [смотреть все]  
  • +/
    /home кладётся в отдельный партишн, не?
     
     
  • 2.12, Аноним, 20:55, 19/01/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    не похоже чтоб помогло Другое дело будет ли там сеть сразу... весь текст скрыт [показать] [показать ветку]
     
  • 2.19, Аноним, 22:29, 19/01/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Необязательно Это же Linux Возможность блокировки выбранных каталогов для зада... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.21, Аноним, 09:05, 20/01/2012 [^] [ответить] [смотреть все]  
  • –1 +/
    Хвост крутит собакой Возможность блокировки выбранных каталогов Доступнос... весь текст скрыт [показать]
     
     
  • 4.25, Аноним, 12:16, 20/01/2012 [^] [ответить] [смотреть все]  
  • +/
    > Хвост крутит собакой.

    "У нас этого нет, поэтому это не нyжно"?

     
     
  • 5.37, Аноним, 15:51, 20/01/2012 [^] [ответить] [смотреть все]  
  • +/
    А вы не осилили метафору.
     
     
  • 6.57, Аноним, 02:28, 21/01/2012 [^] [ответить] [смотреть все]  
  • +/
    Не вижу чем виртуализация пространства имен, сети и прочего так уж клещится с un... весь текст скрыт [показать]
     
  • 4.40, Аноним, 17:15, 20/01/2012 [^] [ответить] [смотреть все]  
  • +/
    Каталоги по умолчанию доступны если не считать ортогональных технологий, таких,... весь текст скрыт [показать]
     
  • 1.70, arisu, 00:35, 23/01/2012 [ответить] [смотреть все]  
  • +/
    я джва года ждал такую фичу!

    а если серьёзно — здорово, молодцы. не поттерингом единым.

     

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


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