Для ядра Linux предложена система изоляции приложений Capsicum, изначально созданная для FreeBSD

30 июня 2014 года

Дэвид Драйсдейл (David Drysdale) из компании Google опубликовал в списке рассылки разработчиков ядра Linux набор патчей с реализацией фреймворка Capsicum, предоставляющего механизмы для изолированного выполнения приложений и ограничения использования приложениями определённых функций. Патчи подготовлены для ядра Linux 3.15. Для управления предлагается два новых системных вызова cap_rights_limit и cap_rights_get. Система изначально разработана для проекта FreeBSD, включена в состав базовой системы начиная с выпуска FreeBSD 9 и расширена в ветке FreeBSD 10. Поддержка режима изоляции, основанного на использовании Capsicum, интегрирована в OpenSSH 6.5.

Capsicum расширяет POSIX API и предоставляет несколько новых системных примитивов, нацеленных на поддержку модели безопасности через управление возможностями объектов ("object-capability") для Unix-систем. Capsicum нацелен на дополнение традиционного централизованного мандатного контроля доступа средствами для защиты отдельных приложений и активируется на стороне самого приложения. Используя Capsicum, приложение можно запустить в режиме повышенной изоляции (sandbox), при котором программа сможет выполнять только заведомо разрешённые штатные действия.

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

Комбинируя эти две возможности, использующее Capsicum приложение может эффективно изолировать себя в sandbox, определив права доступа для необходимых в работе файлов и сокетов, закрыв все остальные файловые дескрипторы и активировав режим capability, который не позволит открыть не подпадающие под созданные правила новые файловые дескрипторы.

Источники править

 
 
Creative Commons
Эта статья содержит материалы из статьи «Для ядра Linux предложена система изоляции приложений Capsicum, изначально созданная для FreeBSD», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.