Перейти к содержанию

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

Данный раздел описывает средства контроля целостности ПО Picodata при работе в защищенной ОС.

Объекты контроля

Объектами контроля целостности в Picodata выступают:

  • конфигурация СУБД
  • конфигурация БД
  • программный код СУБД
  • процедуры, хранимые в БД

С точки зрения реализации защиты, эти объекты овеществляются в виде файлов *.xlog / *.snap в рабочей директории инстанса и исполняемого файла picodata из состава дистрибутива.

Реализация контроля целостности

Kонтроль целостности реализуется через меры, направленные на защиту рабочих и исполняемых файлов СУБД.

Контроль при запуске инстанса

Контроль целостности происходит во время повторного запуска инстанса Picodata, когда в рабочей директории присутствуют ранее созданные файлы (объекты контроля). Для такой проверки предусмотрены следующие механизмы:

  • внутренняя проверка валидности журналов *.xlog/*.snap средствами Picodata. Для каждой записи журнала производится проверка контрольной суммы (crc32). Изменение любой записи приводит к недействительности всего журнала. Подробнее см. устройство формат WAL
  • размещение рабочей директории инстанса Picodata на отдельном логическом разделе, в опциях монтирования которого использован параметр iversion. Одновременно с этим следует настроить политику проверки целостности (службы integrity-notifier и integrity-scanner в защищенной ОС) на единовременную проверку содержимого рабочей директории. Подробнее см. документацию ОС Альт 8 СП, Руководство по комплексу средств защиты, п. 3.6.2. "Подсистема IMA/EVM"
  • сверка контрольных сумм (md5sum) рабочих и исполняемых файлов СУБД средствами защищенной ОС
  • запуск инстанса Picodata из-под специально созданного пользователя picodata, который эксклюзивно владеет правом записи в рабочую директорию инстанса

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

Примечание

Проверка целостности для первого запуска инстанса не применима и не производится (по причине отсутствия рабочих файлов).

Контроль во время работы инстанса

Контроль целостности в процессе функционирования СУБД также осуществляется средствами защищенной ОС, которая должна быть настроена на проверку целостности рабочих и исполняемых файлов СУБД не реже одного раза в сутки.

Информирование о нарушении целостности

Факты нарушения целостности фиксируются в журнале аудита, см. integrity_violation

Для настройки информирования см. Оповещения о событиях безопасности

Событие неуспешного запуска инстанса также фиксируется в стандартном выводе (stdout) в виде ошибок ER_INVALID_XLOG,ER_INVALID_XLOG_NAME, ER_INVALID_XLOG_ORDER, свидетельствующих о невозможности чтения рабочих файлов СУБД.

Блокирование доступа

В случае выявления нарушения целостности доступ пользователей СУБД блокируется за исключением Администратора СУБД. Для восстановления целостности следует восстановить рабочие файлы инстанса из резервной копии, см. Восстановление из резервной копии и перезапустить инстанс командой picodata run.