Замкнутая программная среда (ЗПС)
Редактировал(а) atsarkov 23.05.2024 13:05
Замкнутая программная среда (ЗПС) основана на Linux Integrity Measurement Architecture (Linux IMA) с дополнительными расширениями.
Подсистема реализует два независимых механизма:
- Контроль загрузки модулей ядра - проверка встроенной в модуль подписи при загрузке его в ядро ОС.
Данный механизм по умолчанию включен и отключается следующим образом. - Контроль исполняемых файлов (библиотек, скриптов и модулей ядра) - проверка подписи, наложенной в расширенных атрибутах файла (extended attributes, xattr(7)), а именно security.ima.
Данный механизм по умолчанию выключен и включается следующим образом.
Ключевые особенности:
- Менеджер пакетов dpkg из состава ОС позволяет для файлов в составе deb-пакетов, сохранить, а при установке deb-пакетов, восстановить наложенные подписи;
- В deb-пакетах дистрибутива ОС подписаны все файлы, а не только исполняемые файлы формата ELF(Executable and Linkable Format);
- Имеется возможность подписать deb-пакет(ы) ПО, которые невозможно изменить (например, зафиксированы контрольные суммы), используя отделенные подписи в dump-файле. Этот файл вида <имя пакета>.dump следует разместить в каталоге /etc/dpkg/ima.d/ перед установкой пакета, тогда dpkg наложит подписи из этого дампа в процессе установки пакета.
- Подсистема контролирует не только запуск исполняемых фалов формата ELF, но и загрузку модулей ядра, а также запуск скриптов и их составных частей. Поддерживаются следующие интерпретаторы:
Название Примечание Bash Busybox Dash Erlang проверка байт-кода Expect Java проверка байт-кода Jruby Jython Ksh Lua Node node.js(vp8) Perl Php Python проверка кода и байт-кода Ruby Tcl Tcsh Wine Zsh