Контроль целостности
Контроль целостности (КЦ) представляет собой процесс, направленный на обнаружение и предотвращение несанкционированных изменений или повреждений файлов, которые могут привести к нарушению безопасности и работоспособности системы ARMA Стена.
Контроль целостности осуществляется автоматически при запуске системы и затем каждый час (хх:00:00), а также при выполнении команд «reboot» и «poweroff».
Существует возможность инициировать проверку целостности вручную с помощью команды:
admin@ngfwos:~$ integrity-check run <path/to/file | all>где:
<path/to/file> - путь к контролируемому файлу;
<all> - проверить целостность всех контролируемых объектов.
Регистрация событий КЦ
Целостность объекта верифицируется посредством сопоставления его хэша с эталонным значением в базе данных механизма КЦ.
В случае обнаружения несоответствия текущего хэш-значения объекта наблюдения эталонному значению в процессе функционирования системы ARMA Стена, система выведет предупреждающее сообщение и выполнит предусмотренные действия в отношении данного объекта: перейдёт в режим аварийной работы (см. Рисунок – Переход в аварийный режим при нарушении КЦ) или выведет уведомление о нарушении целостности объекта (см. Рисунок – Предупреждение о нарушении КЦ)).

Рисунок – Переход в аварийный режим при нарушении КЦ

Рисунок – Предупреждение о нарушении КЦ
В случае если при загрузке системы контрольные объекты не пройдут проверку на целостность, то в зависимости от заданного параметра «action», после завершения загрузки будет выведено предупреждение (см. Рисунок – Не удалось выполнить проверку КЦ) или произойдёт переход в аварийный режим (см. Рисунок – Аварийный режим. Не удалось выполнить проверку КЦ).

Рисунок – Не удалось выполнить проверку КЦ

Рисунок – Аварийный режим. Не удалось выполнить проверку КЦ
Для выявления объекта, который не прошёл проверку КЦ, необходимо ввести в эксплуатационном режиме команду «integrity-check run all». Система выдаст предупреждение и укажет на объект, который не прошёл проверку:
admin@ngfwos:~$ integrity-check run all Violation checking integrity of file ['/usr/bin/apt']Файл «apt» не прошёл проверку КЦ. Это событие приведено в качестве примера.
Все события, связанные с функционированием механизма контроля целостности, включая действия администратора, регистрируются в глобальном журнале. Для просмотра этих событий возможно использовать фильтр «arma-endpoint» для глобального журнала:
admin@ngfwos:~$ show logging arma-endpoint
Пересчёт эталонных значений КЦ
Предусмотрено два механизма пересчёта эталонных значений КЦ: автоматический и ручной.
Автоматический пересчёт эталонных значений КЦ
Автоматический пересчет эталонных значений КЦ выполняется после каждой команды «save».
Примечание
В аварийном режиме работы системы автоматический пересчёт эталонных значений КЦ не производится.
Ручной пересчёт эталонных значений КЦ
Для пересчёта эталонных значений контроля целостности необходимо ввести команду:
admin@ngfwos:~$ integrity-control update <path/to/file | all>где:
<path/to/file> - путь к объекту, для которого необходимо пересчитать эталонное значение;
<all> - пересчёт эталонных значений для всех контролируемых объектов.
Примечание
Право на выполнение команды пересчёта эталонных значений для контроля целостности предоставлено исключительно встроенной учетной записи «admin».
Настройка списка объектов КЦ
Для вывода списка контролируемых объектов необходимо ввести следующую команду:
admin@ngfwos:~$ integrity-check list
Список контролируемых объектов по умолчанию (см. Таблица «Список контролируемых объектов по умолчанию»):
Действие |
Объект |
---|---|
emergency |
/config/config.boot |
emergency |
/opt/ngfwos/etc/config.boot.default |
emergency |
/opt/ngfwos/etc/config.boot.ssh_dhcp |
emergency |
/opt/ngfwos/etc/config.boot.ssh_dhcp_static_ips |
notify |
/boot/initrd.img |
notify |
/boot/initrd.img-6.6.54-amd64-vyos |
notify |
/boot/vmlinuz |
notify |
/boot/vmlinuz-6.6.54-amd64-vyos |
notify |
/etc/containers/containers.conf |
notify |
/etc/containers/registries.conf |
notify |
/etc/containers/storage.conf |
notify |
/etc/curlrc |
notify |
/etc/hosts |
notify |
/etc/logrotate.d/vyos-rsyslog |
notify |
/etc/modprobe.d/vyatta_nf_conntrack.conf |
notify |
/etc/motd |
notify |
/etc/nginx/sites-enabled/default |
notify |
/etc/nginx/sites-enabled/ngfw-web.conf |
notify |
/etc/nsswitch.conf |
notify |
/etc/resolv.conf |
notify |
/etc/rsyslog.d/00-vyos.conf |
notify |
/etc/ssh/ssh_config.d/91-ngfwos-ssh-client-options.conf |
notify |
/etc/systemd/journald.conf |
notify |
/home/admin/.ssh/authorized_keys |
notify |
/usr/bin/ |
notify |
/usr/bin/все файлы каталога |
notify |
/usr/lib/live/mount/persistence//boot/grub/grub.cfg.d/vyos-versions/4.5._имя_сборки.cfg |
notify |
/usr/sbin/ |
notify |
/usr/sbin/все файлы каталога |
notify |
/usr/share/pam-configs/ngfwos_auth |
Для добавления файла, подлежащего контролю, необходимо ввести команду:
admin@ngfwos:~$ integrity-control add <path/to/file> [action <emergency|notify>]где:
<path/to/file> - путь к объекту;
<emergency|notify> - действие в случае нарушения целостности объекта. Возможно указать следующие значения:
emergency - в случае нарушения целостности контролируемого объекта система перейдет в аварийный режим работы (см. Рисунок – Переход в аварийный режим при нарушении КЦ);
notify - в случае нарушения целостности контролируемого объекта система выведет предупреждение (см. Рисунок – Предупреждение о нарушении КЦ)».
В случае отсутствия параметра «action», система автоматически применит к объекту действие «notify».
Для удаления объекта наблюдения из списка КЦ необходимо ввести следующую команду:
admin@ngfwos:~$ integrity-control delete <path/to/file>где <path/to/file> - путь к объекту.
Примечание
Удаление объекта КЦ из списка мониторинга, при установленном параметре «action» со значением «emergency», не допускается. В случае попытки удаления такого объекта из списка, система выведет предупреждающее сообщение о невозможности выполнить операцию: «</…/имя_файла> in emergency action mode. If you wish to delete, please change it’s action to `notify`».
Для удаления необходимо предварительно изменить значение параметра «action» на «notify», после чего произвести операцию удаления.
Примечание
Запрещено удалять из списка объекты по умолчанию (см. Таблица «Список контролируемых объектов по умолчанию»).