Открыть сервис

Целостность данных

Целостность данных — это свойство информационной системы, гарантирующее, что данные являются точными, непротиворечивыми и не были подвергнуты несанкционированным изменениям или уничтожению в процессе хранения, обработки или передачи. В контексте информационной безопасности целостность является одной из трёх базовых составляющих наряду с конфиденциальностью и доступностью (модель CIA).

Основные аспекты и определения

Целостность данных подразумевает, что информация остаётся в том виде, в котором она была создана или авторизована, и любые модификации происходят только с санкции уполномоченных лиц или процессов. Нарушение целостности может быть вызвано как случайными ошибками (сбои оборудования, ошибки программного обеспечения, человеческий фактор), так и целенаправленными атаками (внедрение вредоносного кода, изменение данных злоумышленником).

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

Классификация угроз целостности

Угрозы целостности данных делятся на несколько категорий:

  • Физические угрозы: повреждение носителей информации (жёстких дисков, SSD, лент), перепады напряжения, пожары, затопления, приводящие к частичной или полной утрате данных.
  • Аппаратные и программные сбои: ошибки в операционной системе, сбои файловой системы, дефекты памяти, неисправности контроллеров, приводящие к искажению записываемых данных.
  • Человеческий фактор: случайное удаление или изменение данных пользователем, непреднамеренное внесение ошибок при вводе, неправильная настройка систем резервного копирования.
  • Злонамеренные действия: атаки с целью модификации или уничтожения данных (например, SQL-инъекции, атаки типа «человек посередине»), внедрение программ-вымогателей (шифровальщиков), действия инсайдеров.
  • Ошибки передачи данных: искажение информации при передаче по каналам связи из-за помех, коллизий или неисправностей сетевого оборудования.

Методы обеспечения целостности

Для защиты целостности данных применяется комплекс организационных, программных и аппаратных мер.

Контрольные суммы и хеширование

Наиболее распространённый метод — вычисление и проверка контрольных сумм (CRC, Adler-32) или криптографических хеш-функций (MD5, SHA-1, SHA-256, SHA-3). При записи или передаче данных вычисляется их хеш (дайджест). При последующем чтении или получении хеш вычисляется заново и сравнивается с эталонным. Если значения не совпадают, это свидетельствует об изменении данных. Криптографические хеши (например, SHA-256) обладают свойством лавинного эффекта: даже незначительное изменение исходных данных приводит к полному изменению хеша.

Цифровые подписи и сертификаты

Для обеспечения целостности и подтверждения авторства данных используется электронная цифровая подпись (ЭЦП). Она создаётся с помощью закрытого ключа отправителя и проверяется с помощью открытого ключа. Любое изменение подписанного документа после создания подписи делает её недействительной. В России применение ЭЦП регулируется Федеральным законом № 63-ФЗ «Об электронной подписи».

Журналирование и аудит

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

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

Системы контроля версий (Git, SVN) хранят историю изменений файлов, позволяя откатиться к любой предыдущей версии. Регулярное резервное копирование (бэкапы) создаёт копии данных на отдельные носители или в облачные хранилища. Восстановление из резервной копии — основной способ восстановления целостности после катастрофических сбоев или атак шифровальщиков.

Контроль доступа и аутентификация

Ограничение прав пользователей и процессов (принцип минимальных привилегий) снижает риск случайного или намеренного повреждения данных. Многофакторная аутентификация и строгие политики паролей предотвращают несанкционированный доступ к системам управления данными.

Избыточность и коррекция ошибок

Использование избыточных массивов дисков (RAID 1, RAID 5, RAID 6) позволяет автоматически восстанавливать данные при выходе из строя одного или нескольких дисков. Коды коррекции ошибок (ECC) в оперативной памяти и на жёстких дисках обнаруживают и исправляют одиночные битовые ошибки.

Целостность в базах данных

В реляционных базах данных целостность обеспечивается набором ограничений (constraints):

  • Целостность сущности: первичный ключ (primary key) каждой таблицы должен быть уникальным и не содержать NULL-значений.
  • Ссылочная целостность: внешние ключи (foreign keys) гарантируют, что значения в одной таблице соответствуют существующим записям в связанной таблице (или NULL). Это предотвращает появление «висячих» ссылок.
  • Целостность домена: данные в столбце должны соответствовать заданному типу, формату и диапазону значений (например, возраст не может быть отрицательным).
  • Пользовательские ограничения: бизнес-правила, задаваемые администратором (например, «зарплата сотрудника не может превышать зарплату руководителя»).

Стандарты и нормативные требования

В России и других странах требования к целостности данных закреплены в законодательных и отраслевых стандартах:

  • Федеральный закон № 152-ФЗ «О персональных данных»: обязывает операторов принимать меры по обеспечению целостности персональных данных при их обработке.
  • ГОСТ Р 56545-2015 «Защита информации. Уязвимости информационных систем. Правила описания уязвимостей»: регламентирует подходы к оценке рисков нарушения целостности.
  • Стандарты PCI DSS (Payment Card Industry Data Security Standard): для компаний, обрабатывающих платежные карты, требуют механизмов защиты целостности данных держателей карт.
  • ISO/IEC 27001: международный стандарт систем менеджмента информационной безопасности, предписывающий управление рисками нарушения целостности.

Примеры нарушений целостности

  • Атака на базу данных через SQL-инъекцию: злоумышленник изменяет записи в таблице пользователей, добавляя себе права администратора.
  • Сбой файловой системы: в результате внезапного отключения питания часть данных на диске оказывается записанной некорректно, что приводит к повреждению файлов.
  • Программа-шифровальщик: вредоносное ПО зашифровывает пользовательские файлы, делая их недоступными, и требует выкуп за расшифровку. Восстановление целостности в таком случае возможно только из резервной копии.
  • Ошибка при передаче данных: при скачивании большого файла по сети с помехами несколько байт были искажены, что привело к неработоспособности архива или исполняемого файла. Контрольная сумма (например, MD5) позволяет выявить такое искажение.

Интересные факты

  • Понятие целостности данных впервые было формализовано в 1970-х годах в рамках модели реляционных баз данных, предложенной Эдгаром Коддом.
  • В криптографии для обеспечения целостности сообщений часто используются коды аутентичности сообщений (MAC), которые комбинируют хеширование с секретным ключом.
  • В системах управления базами данных (СУБД) для обеспечения целостности при параллельном доступе используется механизм транзакций с поддержкой свойств ACID (атомарность, согласованность, изолированность, долговечность).

Источники

  1. Федеральный закон от 27.07.2006 № 152-ФЗ «О персональных данных».
  2. ГОСТ Р 56545-2015 «Защита информации. Уязвимости информационных систем. Правила описания уязвимостей».
  3. Кодд, Э. Ф. «Реляционная модель данных для больших совместно используемых банков данных» (1970).
  4. Стандарт ISO/IEC 27001:2022 «Информационные технологии. Методы обеспечения безопасности. Системы менеджмента информационной безопасности. Требования».
  5. Стандарт PCI DSS v4.0.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →