Евгений Ивашко, Сотрудник Института РАН, Институт прикладных математических исследований Карельского научного центра РАН.
Сотрудник Института прикладных математических исследований Карельского научного центра РАН. Имеет степень магистра математики.
Описание: Третья статья серии «Безопасный Linux» посвящена некоторым
особенностям архитектуры AppArmor. Она будет полезна программистам и
администраторам, которые хотят внести свой вклад в развитие продукта, а
также более полно использовать в своих приложениях возможности этой
системы обеспечения безопасности.
Дата: 08.12.2009
Уровень сложности: средний
1. Введение
Перед вами третья часть серии «Безопасный Linux», которая завершает
обзор системы AppArmor – следующие материалы будут посвящены уже другим
технологиям обеспечения безопасности.
Ранее мы представили читателям введение в AppArmor, а также подробно
рассмотрели технологию создания профилей программ. В отличие от
предыдущих, данный материал рассчитан на опытных программистов, которые
хотят использовать все возможности защиты, предоставляемые AppArmor,
или решили присоединиться к команде разработчиков и внести свой вклад в
развитие системы безопасности.
Одна из основных целей, которую ставили перед собой создатели программы
– разработка простого и понятного обычному пользователю средства
обеспечения мандатного контроля доступа. AppArmor, как и его «визави»
SELinux, отделяет от системы каждое запущенное приложение подобием
межсетевого экрана, защищая пользователя от вероятных уязвимостей и
«брешей» в безопасности. Однако в пику SELinux (о котором подробно
будет рассказано в следующих статьях серии «Безопасный Linux»),
AppArmor создавался под лозунгом: «Ввод в действие политики
безопасности за часы, а не за дни!». Потому что худшая система
безопасности та, которая не была внедрена из-за своей чрезмерной
сложности.
Еще одна важная особенность рассматриваемого продукта заключается в
том, что он не может снизить безопасность в целом. Даже если вы
настроили AppArmor с грубейшими ошибками, ваша операционная система не
станет более уязвимой, чем была до его установки. На первый взгляд это
может показаться неважным, однако является существенным свойством при
оценке гарантированного уровня безопасности (см. врезку).
Следует отметить также, что AppArmor является абсолютно «прозрачным»
для контролируемых приложений – ни установка, ни удаление системы
безопасности не требуют от разработчиков программ никаких
дополнительных действий. Приложение будет работать одинаково как под
контролем системы безопасности (конечно, при правильно настроенном
профиле), так и при отсутствии AppArmor в системе.
Какими средствами достигается такой эффект? Какие минусы есть у AppArmor? Ответам на эти вопросы и посвящена данная статья.