поиск по сайту
Обеспечение доверенной среды в ОС Linux с использованием ПАК СЗИ НСД «Аккорд-X»

Бажитов И. А.

ЗАО « ОКБ САПР»

Обеспечение доверенной среды в ОС Linux с использованием ПАК СЗИ НСД «Аккорд-X»

Программно аппаратный комплекс средств защиты информации от несанкционированного доступа (ПАК СЗИ НСД) «Аккорд-X» [1] предназначен для защиты автоматизированных систем, работающих под управлением операционных систем (ОС) на базе ядра Linux. Ключевым элементом при обеспечении защиты от НСД является создание доверенной рабочей среды пользователя. В данной работе приводится описание механизмов Аккорд-X, обеспечивающих создание и функционирование доверенной рабочей среды в ОС Linux.

Для удобства дальнейшего описания алгоритмов работы комплекса, необходимо предварительно разделить процесс загрузки [2] - от включения питания ЭВМ до старта программной оболочки (shell) пользователя - на четыре этапа:

1.    От включения питания до момента загрузки ядра ОС в оперативное запоминающее устройство (ОЗУ). На данном этапе BIOS компьютера проводит тесты оборудования, выбирает загрузочное устройство и передает управление процессором на код загрузчика ОС, находящийся в нулевом секторе выбранного устройства (для случая загрузки с жесткого диска). Загрузчик ОС, в свою очередь, копирует ядро и образ начальной загрузки ОС с диска в ОЗУ и передает управление ядру.

2.    От момента загрузки ядра в ОЗУ до старта первого процесса (init). Ядро ОС инициализирует оборудование, монтирует корневую файловую систему и запускает init, исполняемый файл которого находится в файле /sbin/init. Корневая файловая система может находиться на носителях различных типов: на жестком диске, массиве RAID, сетевом NFS-сервере. Образ начальной загрузки ОС содержит утилиты и драйвера, необходимые для обеспечения доступа ядра к корневой ФС вне зависимости от носителя, на котором она расположена.

3.    От запуска init до старта утилиты идентификации-аутентификации пользователя (login). На данном этапе происходит запуск служб ОС, работающих в фоновом режиме, а также монтирование дополнительных ФС в каталоги корневой ФС.

4.    От login до shell пользователя. Процесс  идентификации-аутентификации (ИА) пользователя выполняется с использованием подгружаемых модулей аутентификации (pluggable authentication modules, PAM). При успешном завершении процесса ИА запускается shell пользователя.

Контроль первого этапа загрузки целиком обеспечивается аппаратным компонентом комплекса - СЗИ НСД Аккорд-АМДЗ. Для этого используются следующие механизмы: ИА пользователя с использованием аппаратных идентификаторов; контроль неизменности аппаратуры; принудительная загрузка ОС только с носителя, заданного администратором безопасности (АБ); контроль целостности ресурсов жесткого диска. Принципы работы данных механизмов подробно описаны в [3]. Последний механизм используется в Аккорд-X для контроля следующих ресурсов:

1.      Master Boot Record, Partition Boot Record, сектора 1-63 относительно начала раздела. Данные ресурсы жесткого диска используются для хранения частей загрузчика ОС.

2.      Файл с основным кодом загрузчика и  конфигурационный файл загрузчика.

3.      Ядро ОС и образ начальной загрузки;

4.      Файлы с базой данных (БД) пользователей и настройками комплекса.

Все ресурсы, кроме упомянутых в пункте 1, хранятся либо в корневой ФС, в каталоге /boot, либо на отдельном разделе диска, который в итоге монтируется в каталог /boot.

На втором этапе, после инициализации оборудования и монтирования корневой файловой системы, но до старта init, из образа начальной загрузки стартует монитор разграничения доступа (МРД) Аккорд-X, реализованный в виде модуля ядра ОС. МРД считывает БД пользователей и настройки комплекса из соответствующих файлов. После этого производится проверка файлов для точки монтирования «/» из системного списка контроля целостности (СКЦ), сохраненного в БД пользователей. При успешном завершении процедуры контроля целостности, выполняется запуск процесса init.

Третий этап загрузки ОС сопровождается динамическим монтированием файловых систем в корневую ФС. При этом сразу же после подключения ФС ОС может инициировать обращения к данным и запуск исполняемых файлов из соответствующего раздела. Следовательно, необходимо осуществлять контроль целостности файлов, находящихся на динамически монтируемых ФС, сразу после того, как ФС смонтирована, но до начала работы ОС с файлами из данной ФС. В Аккорд-X данная процедура реализована в МРД с помощью перехвата системного вызова ОС, отвечающего за монтирование ФС. Тем самым, обеспечивается гибкий и независимый от статической конфигурации (описанной в файле настроек /etc/fstab) контроль целостности файлов на ФС.

На заключительном, четвертом этапе утилита login ожидает идентификатор пользователя и после этого производит его аутентификацию. Конкретные реализации процедур ИА не прописаны жестко в программном коде утилиты login, но находятся в PAM-модулях, являющихся динамически загружаемыми библиотеками с заранее определенным интерфейсом. Таким образом, утилита login делегирует функции аутентификации на исполнение сторонним PAM-модулям.

В состав Аккорд-X входит PAM-модуль для идентификации пользователя с использованием аппаратных идентификаторов и аутентификации с помощью пароля. Модуль передает данные пользователя к МРД, который, исходя из содержимого БД пользователей, принимает решение о выдаче пользователю разрешения на вход в систему. В процессе принятия данного решения, кроме корректности идентификатора и пароля, учитывается также допустимое время работы для данного пользователя, хранимое в БД.

Если МРД принял решение о допуске пользователя в систему, то производится контроль целостности объектов ФС сначала из СКЦ группы, в которую входит пользователь, а затем из личного СКЦ пользователя. Только после завершения данных процедур стартует пользовательская сессия, в рамках которой запускается оболочка shell. Если по какой-либо причине PAM-модуль не послал запрос на авторизацию пользователя к МРД, то несанкционированный запуск оболочки не будет возможен, так как МРД перехватывает системные вызовы ОС, связанные со сменой идентификатора пользователя в ОС (uid), и не допустит запуска процесса от имени неавторизованного пользователя.

Доверенная работа пользователя в рамках созданной сессии обеспечивается путем создания изолированной программной среды, реализуемой с помощью механизма мандатного разграничения доступа и задания ПРД для отдельных процессов пользователя.

Реализация доверенной загрузки в терминологическом смысле слова для ОС Linux не возможна без применения аппаратного компонента, контролирующего ранние этапы загрузки ЭВМ. Кроме того, очевидна необходимость контроля ряда событий, возникающих в ходе загрузки, только на уровне ядра ОС. В Аккорд-X обеспечение доверенной загрузки ОС реализовано с применением достаточно гибких механизмов, что позволяет использовать комплекс для создания доверенной рабочей среды в самых различных системах, начиная от встраиваемых решений, и заканчивая промышленными серверами.

Список литературы:

1.      Бажитов И. А. Возможности ПАК СЗИ НСД «АККОРД-Х» для ОС Linux //

Комплексная защита информации. Материалы XIV международной конференции (19-22 мая 2009 года). Мн., 2009. С. 26-27.

2.      Tim Jones M. Inside the Linux boot process.

http://www.ibm.com/developerworks/library/l-linuxboot/index.html

3.      Конявский В. А. Управление защитой информации на базе СЗИ НСД «Аккорд». М.: Радио и связь, 1999. - 325 с.

 


ФорумФорум
Форум ОКБ САПР
Вопросы специалистовВопросы специалистов
Вопросы, которые нам присылают, и наши ответы на них