Контроль целостности файлов конфигурации Визион

Общая информация#

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

Настройка утилит отслеживания изменений конфигурационных файлов#

Инструкция для операционных систем РЕД ОС Муром 7.3, Astra Linux 1.7#

Для настройки используется утилита afick. Для получения более подробной информацмм следует обратиться к документации производителя https://redos.red-soft.ru/base/manual/redos-manual/safe-redos/afick/ .

Все действия производятся от имени администратора (root).

Включение контроля целостности#

Для включения контроля целостности следует выполнить следующие действия:

  1. Установите утилиту контроля целостности:

    dnf install afick
    
  2. Добавьте список файлов и директорий для контроля в конфигурационный файл /etc/afick.conf в раздел # files to scan с необходимыми опциями.

  3. Запустите утилиту с ключом --update (afick --update) для обновления и формирования базы контролируемых файлов.

Регулярная проверка целостности обеспечивается запуском cron-задачи. Задача создается при установке утилиты с регулярностью раз в сутки. Результатом выполнения является сформированный отчет, который будет отправлен на электронный адрес, указанный в конфигурационном файле в секции @@define MAILTO root.

Периодичность запуска#

Bash-скрипт, отвечающий за проверку целостности и отправки отчета находится в /etc/cron.daily/afick_cron.

Настройка периодичности проверки целостности может быть изменена в соответствии с механизмом работы cron.

Проверка механизма контроля целостности#

Для проверки, что контроль целостности осуществляется, необходимо произвести следующие действия:

  1. Выполнить команду:

    afick -k
    

    Ожидаемый результат — отсутствие изменений.

  2. Изменить контролируемый файл или создать новый в контролируемой директории.

  3. Повторно выполнить команду:

    afick -k
    

    Ожидаемый результат - сообщение о нарушении целостности

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

После внесения изменений в контролируемые файлы и необходимости их фиксирования необходимо от имени администратора запустить команду:

afick --update

Инструкция для операционных систем Альт СП 8 р9 и СП 8 р10#

Для настройки используется утилита osec. Подробнее — в руководстве по комплексу средств защиты от Базальт.

Все действия производятся от имени администратора.

Установка утилиты производится командой:

apt-get install osec

Включение контроля целостности#

Для включения контроля целостности следует выполнить следующие действия:

  1. Проверить, что сервис контроля целостности при загрузке активирован (enabled):

    systemctl is-enabled integalert
    
  2. Для активации сервиса выполнить команду:

    systemctl enable integalert
    
  3. Добавить каталоги для проверки целостности osec (см. ниже).

  4. Запустить osec:

    integalert fix
    

    или сформировать контрольные суммы для измененных/новых объектов и занести их в базу данных, выполнив команду:

    # osec -f /etc/osec/dirs.conf -D /var/lib/osec/
    
  5. Для фиксации изменений и проверки конфигурации выполнить команду:

    systemctl restart osec
    

Проверка целостности системы при помощи osec выполняется от администратора командой integalert.

При необходимости можно изменить периодичность запуска osec.

Добавление/изменение директорий для проверки целостности#

По умолчанию отслеживаются изменения в директориях /bin, /sbin, /usr/bin, /usr/sbin.

Чтобы изменить список каталогов для проверки целостности, измените содержимое конфигурационного файла /etc/osec/dirs.conf. Строки, начинающиеся со знака #, считаются комментариями.

После внесения изменений в файл /etc/osec/dirs.conf необходимо запустите osec.

Периодичность запуска#

Кроме пакета программного комплекса osec в систему устанавливается пакет osec-timerunit. Он позволяет задать способ и периодичность запуска osec (файлы /lib/systemd/system/osec.service, /lib/systemd/system/osec.timer). В пакете osec-timerunit есть файл с заданием для демона cron и конфигурационные файлы (dirs.conf).

Для проверки статуса периодического контроля целостности выполните команду:

systemctl status osec.timer

Для активации периодического контроля целостности выполните команды команды:

systemctl enable osec.timer
systemctl start osec.timer

По умолчанию в osec.timer задан запуск проверки каждый день в двенадцать часов ночи. Если необходимо задавать другие периоды запуска osec, то необходимо создать файл /etc/systemd/system/osec.timer с измененными периодами и перезапустить демон systemd:

cp /lib/systemd/system/osec.timer /etc/systemd/system/osec.timer
vim /etc/systemd/system/osec.timer
systemctl daemon-reload

Проверка механизма контроля целостности#

Для проведения теста необходимо авторизоваться в системе от имени администратора.

Подготовить каталог для базы данных:

mkdir /tmp/base
chown osec:osec /tmp/base
cp -ar /var/lib/osec/* /tmp/base

Сформировать контрольные суммы объектов (список путей к ним хранится в файле /etc/osec/dirs.conf) и занести их в базу данных /tmp/base.

Результат работы osec выводится в терминал, поэтому для перенаправления вывода результата в текстовый файл /tmp/report1 необходимо использовать команду:

osec -f /etc/osec/dirs.conf -D /tmp/base/ -r >/tmp/report1

Не производя никаких изменений в системе, запустить osec повторно и вывести результат работы в текстовый файл /tmp/report2:

osec -f /etc/osec/dirs.conf -D /tmp/base/ -r >/tmp/report2

Сравнить два результирующих файла /tmp/report1 и /tmp/report2:

diff -u0 /tmp/report1 /tmp/report2

Два отчета должны совпадать, в терминале не должно быть выведено никаких различий.

Выполнить изменения в контролируемых файлах или директориях (добавить, удалить и т. д.)

Запустить osec в режиме «только чтение» и перенаправить вывод в текстовый файл /tmp/report3:

osec -f /etc/osec/dirs.conf -D /tmp/base/ -r > /tmp/report3

Сравнить два результирующих файла /tmp/report2 и /tmp/report3:

diff -u0 /tmp/report2 /tmp/report3

Ожидаемые результаты: сведения об изменениях, сделанных выше с конфигурационными файлами, должны выводиться в терминал.

Порядок восстановления целостности системы#

В случае выявления нарушения целостности:

  • при проверке целостности системы командой integalert;
  • при загрузке ОС – вывод визуального оповещения с обязательным подтверждением дальнейшей загрузки ОС Система загружается в однопользовательском режиме с запросом пароля суперпользователя.

Порядок восстановления:

  1. От администратора (root) выполнить просмотр лога аудита и найти нарушение целостности.

  2. Восстановить объект с нарушенной целостностью – заменить на эталон/переустановить или пропустить при подтверждении корректности внесенного изменения в объект.

  3. Запустить восстановление целостности системы.

    Если система контроля целостности IMA/EVM не инициализирована, выполнить команду:

    integalert fix
    

    Или сформировать контрольные суммы для измененных/новых объектов и занести их в базу данных выполнив команду:

    osec -f /etc/osec/dirs.conf –D /var/lib/osec
    
  4. Перезагрузить систему.

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

Перечень файлов и директорий Визиона для контроля целостности#

  • /opt/skala-r/vision/.secrets_vault

  • /opt/skala-r/etc/vision/

  • /opt/skala-r/etc/vision/server/grafana/provisioning/datasources/datasources.yml

  • /opt/skala-r/plagent/

    Исключая ./io и ./upload.

  • /opt/skala-r/vision/bin

  • /opt/skala-r/vision/cert/

  • opt/skala-r/vision/agent/

  • /opt/skala-r/vision/server/plugins/

  • /opt/skala-r/vision/server/vision_taskdaemon/var/

  • /opt/skala-r/vision/server/repo/

  • /opt/skala-r/vision/server/vision_venv/

  • /etc/nginx/

  • /etc/systemd/system/multi-user.target.wants/nginx.service

    Это символическая ссылка на сервис NGINX:

    • Astra Linux: /lib/systemd/system/nginx.service

    • ALT Linux: /lib/systemd/system/nginx.service

    • RedOS: /usr/lib/systemd/system/nginx.service

  • /usr/sbin/nginx

  • Для Altlinux Server 8 СП p9, Altlinux Server 8 СП p10, РЕДОС 7.3:

    • /var/lib/pgsql/data/postgresql.conf
    • /var/lib/pgsql/data/pg_hba.conf
    • /var/lib/pgsql/data/pg_ident.conf
  • Для Astra Linux 1.7.3:

    • /etc/postgresql/11/main/pg_hba.conf
    • /etc/postgresql/11/main/pg_ident.conf
    • /etc/postgresql/11/main/postgresql.conf
  • /usr/bin/postgres

  • `/etc/systemd/system/multi-user.target.wants/postgresql.service

  • /etc/systemd/system/multi-user.target.wants/postgresql.service

    Это символическая ссылка на сервис PostgreSQL:

    • Astra Linux: /lib/systemd/system/postgresql.service.

    • ALT Linux: /lib/systemd/system/postgresql.service.

    • RedOS: /usr/lib/systemd/system/postgresql.service.

  • /etc/systemd/system/vision_core.service

  • /etc/systemd/system/vision_alertcollector.service

  • /etc/systemd/system/vision_taskdaemon.service

  • /etc/systemd/system/grafana.service

  • /etc/systemd/system/victoriametrics_st.service

  • /etc/systemd/system/vmalert_st.service

  • /etc/systemd/system/alertmanager.service

  • /etc/systemd/system/snmp_notifier.service

  • Устанавливаются только при установке на узел агента и/или plagent:

    • /etc/systemd/system/vision_vmagent_proxy.service
    • /etc/systemd/system/vision_vmagent_agent.service
    • /etc/systemd/system/plagent.service
  • /etc/systemd/system/vision_*.service