Перейти к основному содержимому
Версия: 4.6.X

Контроль целостности

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

Целостность может быть нарушена на разных этапах:

  • При хранении --- вследствие воздействия вредоносного ПО или физического повреждения сервера.
  • При передаче --- путём перехвата и подмены данных в канале связи.
  • При обработке --- из-за технических сбоев, приводящих к сохранению данных в неверном формате.
Нормативные требования

Контроль целостности ПО предусмотрен требованиями ГосСОПКА и ФСТЭК России (п. 20.9 --- меры по обеспечению целостности информационной системы). Также регламентируется ГОСТ Р в части определений событий и нарушений безопасности информации.

Архитектура

Процесс отслеживания целостности разделяется на два этапа: инициализация (создание эталона) и мониторинг (сравнение с эталоном).

Этап 1. Инициализация

  1. Снятие слепка --- создание эталонной базы хешей для контролируемых файлов.
  2. Сканирование директорий --- обход целевых путей (например, /lib/echelon/).
  3. Вычисление хешей --- расчёт контрольных сумм по алгоритму SHA-256 для каждого файла.
  4. Сохранение в БД --- защищённое хранение эталонных значений в неизменяемой базе данных immudb.

Этап 2. Мониторинг

Проверка целостности запускается по расписанию или по запросу и включает следующие шаги:

  1. Сканирование файловой системы по заданным путям.
  2. Вычисление текущих хешей файлов.
  3. Сравнение с эталонной базой.
  4. Классификация результатов.
  5. Генерация отчёта и отправка данных в SIEM.

Трёхуровневая иерархия

Целостность файлов определяется через иерархическую структуру:

УровеньСущностьНазначение
1Файлы (Records)Отдельные файлы, отслеживаемые по пути и хешу
2Группы записей (Record Groups)Коллекции файлов, объединённые по шаблонам путей
3Сервисы (Services)Логические группировки групп записей для компонентов KOMRAD

Файлы

Для каждого контролируемого файла сохраняются следующие данные:

АтрибутОписание
Путь к файлуПолный путь в файловой системе
НазваниеИмя файла
ТипТип файла
РазмерРазмер файла в байтах
Контрольная суммаХеш файла (SHA-256, SHA-512, Стрибог-256, Стрибог-512)
Владелец (UID)Идентификатор владельца файла
Права доступаРазрешения для работы с файлом
Дата созданияВременная метка создания файла
Время последней модификацииВременная метка последнего изменения
Состояние целостностиТекущий статус проверки

Для файлов сохраняется история изменений --- слепки, созданные во время проверок или перерасчёта контрольных сумм. История хранится в неизменяемой базе данных immudb.

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

  • content --- содержимое файла;
  • modtime --- дата изменения файла;
  • permissions --- разрешения для работы с файлом;
  • size --- размер файла.

Группы записей

Группы записей объединяют файлы по шаблонам путей (glob-паттерны). Для каждой группы указывается:

  • шаблон путей к файлам;
  • алгоритм хеширования;
  • контролируемые свойства файлов.

Сервисы

По умолчанию после установки KOMRAD на сервере контроля целостности создаются предзагруженные сервисы с установленными хешами.

Примеры сервисов для KOMRAD 4.6:

  • certs --- сертификаты
  • bus --- интеграционная шина
  • cli --- интерфейс командной строки
  • collectors --- коллекторы
  • processor --- процессор событий
  • reactor --- модуль реакций
  • server --- сервер KOMRAD
  • pauth-server --- сервер аутентификации
  • grafana --- панель мониторинга
  • waf-proxy --- WAF-прокси
  • packages --- пакеты

Пользователь может создавать собственные сервисы и рассчитывать контрольные суммы для них.

Задачи проверки целостности

Ключевые операции

  1. Вычисление хеша --- расчёт контрольных сумм (SHA-256, SHA-512, Стрибог-256, Стрибог-512) с учётом содержимого файла, прав доступа, времени модификации и размера.

  2. Верификация --- сравнение текущего состояния файла с эталоном. Обнаруживаются:

    • несовпадение хешей (модификация файла);
    • отсутствующие файлы;
    • неожиданные новые файлы;
    • ошибки доступа.
  3. Аудит --- логирование всех операций в формате JSON для передачи в SIEM.

  4. Фильтрация по glob-шаблонам --- дополнительное добавление или игнорирование файлов при проверке (например, /etc/**/*.conf).

Категории результатов

КатегорияОписание
Проверено файловОбщее число обработанных файлов
Файлы без ошибокФайлы, хеш которых совпадает с эталоном
Изменённые файлыФайлы с несовпадающими контрольными суммами
Отсутствующие файлыФайлы, имеющиеся в эталоне, но не найденные в файловой системе
Неожиданные новые файлыФайлы, обнаруженные в файловой системе, но отсутствующие в эталоне
Ошибки доступаФайлы, к которым невозможно получить доступ

Статусы задач

СтатусОписаниеДоступные действия
СозданаЗадача создана, но не запущенаЗапустить
В процессеЗадача запущена, но не завершенаПоставить на паузу, Остановить
На паузеЗадача приостановленаЗапустить, Остановить
ЗавершенаЗадача успешно завершенаСкачать отчёт
ОтмененаЗадача была отмененаЗапустить

Пример результата проверки

{
"timestamp": "2026-01-21T08:45:00Z",
"event_type": "integrity_violation",
"file_path": "/etc/passwd",
"file_name": "text",
"file_type": ".txt",
"status": "modified",
"expected_result": "e3b0c442...",
"actual_result": "8125603a..."
}

Безопасность и хранение данных

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

Преимущества использования immudb:

  • Криптографическая защита от несанкционированного изменения данных.
  • Полная история всех изменений с временными метками.
  • Поддержка версионированных и временных запросов.

Интеграция с SIEM

Сервер контроля целостности обеспечивает:

  • Генерацию структурированных логов в формате JSON.
  • Отправку событий нарушения целостности в систему SIEM.
  • API для запросов состояния файлов, групп и сервисов.
  • Подтверждение целостности по запросу от внешних систем.