что такое контроль целостности

Что такое контроль целостности

В данной лекции мы поговорим о том, какие режимы контроля целостности объектов существуют, а так же рассмотрим использование каждого из этих режимов в программно-аппаратном комплексе СЗИ от НСД «Аккорд-Win64» и существующие в нем дополнительные возможности, которые можно использовать при установке объектов на контроль.

Итак, существует два режима контроля целостности объектов:

Рассмотрим по-очереди как настраивать и работать с каждым из этих режимов в из этих режимов в программно-аппаратном комплексе СЗИ от НСД «Аккорд-Win64».

Начнем со статического контроля целостности. Для создания списка контролируемых объектов в программе «Редактор базы пользователей» есть поле «Контроль целостности». По-умолчанию в нем установлено значение «Нет», это означает, что нет объектов установленных на контроль. Нажмем кнопку справа от этого поля. На экран выводится окно «Редактирование контроля целостности объектов для пользователя такого-то (указывается имя_пользователя)».

Обращу внимание, что в правой части окна в разделе «Список контролируемых объектов» мы видим две закладки – «Статический» и «Динамический». По-умолчанию выбрана закладка «Статический» и мы ничего не меняем, так как рассматриваем статический контроль целостности.

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

Для установки на контроль файла необходимо сначала его выбрать. Пусть это будет файл test1.txt из каталога TEST. Затем нужно два раза щелкнуть по этому файлу или нажать кнопку «Добавить объект в список». Выбранный файл переместится в правую часть окна в «Список контролируемых объектов».

Для исключения файла из списка нужно нажать кнопку «Удалить объект из списка».

Если мы хотим установить на контроль все файлы из каталога, то в разделе «Все объекты» необходимо выбрать нужный каталог. Выберем каталог TEST1 и нажмем на кнопку «Добавить содержимое папки в список». Появляется окно «Введите фильтр». Стрелка в правой части строки позволяет задавать маску по расширению файлов (*.* означает выбор всех файлов). Также в этом окне есть возможность установить 2 галочки.

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

Флаг «Включая подкаталоги» распространяет действие фильтра на все уровни вложенности подкаталогов в выбранном каталоге.

Не будем ничего менять и нажмем кнопку «Ок». Все файлы выбранного каталога, удовлетворяющие заданному фильтру, переместятся в «Список контролируемых объектов».

Очистить «Список контролируемых объектов» можно нажав на кнопку «Удалить все из списка» и тогда удалится все содержимое «Списка контроля целостности». Либо можно удалить один объект, нажав кнопку «Удалить объект из списка», работу которой мы уже рассматривали ранее. Еще можно выделить в списке несколько объектов и нажать кнопку «Удалить объект из списка», будут удалены выбранные объекты.

Есть еще один специфический объект контроля – это контейнер. Для формирования контейнера нужно выбрать объект. В качестве объекта может выступать корневой каталог логического раздела жесткого диска, или отдельный каталог. Выберем каталог TEST и нажмем кнопку «Добавить контейнер в список». После этого выводится окно выбора параметров контейнера контролируемых объектов. Можно по аналогии с предыдущим вариантом задать маску устанавливаемых на контроль файлов.

Флаг «Включая подкаталоги» действует следующим образом. Контрольная сумма содержимого самих файлов не вычисляется. В списке контролируемых объектов сохраняется одна запись с результирующей контрольной суммой. Такая процедура контроля может успешно использоваться, если установлен режим автоматического обновления компонентов ПО из доверенного источника, а состав (список) файлов не меняется.

Флаг «Включая контроль содержимого объектов» добавляет следующий уровень контроля, т.е. рассчитывается контрольная сумма содержимого каталога и содержимого файлов (одна на весь контейнер).

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

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

Пользоваться возможностями контроля целостности контейнера объектов следует по принципу «разумной достаточности». Можно, например, установить полный контроль на папку Windows, но следует понимать, что время расчета контрольной суммы нескольких тысяч файлов будет значительным, да к тому же пользователь не сможет нормально работать на таком «защищенном» компьютере. Операционная система при работе создает некоторое количество временных файлов и при каждом новом сеансе будет выявлено нарушение целостности.

После добавления объектов в список контроля целостности необходимо установить режим контроля целостности.

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

Хотелось бы обратить внимание, что при установке объектов на статический контроль целостности необходимо убедиться в наличии установленного флага «Перезагрузка при ошибках» в программе «Настройки комплекса «Аккорд». В противном случае при возникновении ошибок контроля целостности драйвер разграничения доступа не будет запущен.

Установим флаг «До запуска системы». После этого необходимо произвести расчет контрольных сумм выбранных файлов. Это делается с помощью кнопки «Расчет», нажмем ее. В процессе расчета запрашивается идентификатор данного пользователя. В алгоритме расчета используется ключ пользователя, записанный в идентификатор при регистрации пользователя. Тем самым исключается возможность подделки результирующей КС при несанкционированном изменении файлов.

Для выхода из процедуры контроля с сохранением результатов расчета нужно нажать кнопку «Сохранить», для отмены изменений – кнопку «Отмена». Нажмем «Сохранить». В поле «Контроль целостности» значение «Нет», как мы видим, изменилось на «Да». Это значит, что для данного пользователя есть объекты, установленные на контроль.

Теперь давайте поговорим о динамическом режиме контроля целостности файлов. Динамический контроль целостности выполняется при каждом запуске процесса (исполняемого модуля). Снова нажмем кнопку рядом с полем «Контроль целостности». На экран выводится прежнее окно «Редактирование контроля целостности объектов для пользователя такого-то». В правой части окна в разделе «Список контролируемых объектов» переходим на закладку «Динамический».

Объекты в этот список добавляются точно также, как мы рассмотрели для статического контроля целостности. При этом не требуется задание параметров проверки, выбор флагов внизу окна – не активен.

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

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

По кнопке «Проверка» выполняется проверка целостности установленных на контроль объектов. Нажмем ее и увидим сообщение, что «Нарушения целостности объектов не обнаружены». При изменении объектов, установленных ранее на контроль, здесь мы увидим сообщение о нарушении целостности. Нажмем «Ок».

Подведем итог, в данной лекции мы поговорили о том, какие режимы контроля целостности объектов существуют, рассмотрели использование каждого из этих режимов в программно-аппаратном комплексе СЗИ от НСД «Аккорд-Win64», а также обсудили дополнительные возможности, которые можно использовать при установке объектов на контроль. На следующих лекциях мы поговорим об используемых в комплексе механизмах управления доступом.

Спасибо за внимание, до встречи на следующей лекции!

Источник

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

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

Число написанных функциональных тестов, которые запускает система, уже превысило несколько тысяч и продолжает увеличиваться. В нашем случае один функциональный тест — это одна функция. При таком методе разработки после присвоения тесту статуса «Готов» о нем надолго забывают.

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

Сам по себе рефакторинг любой программы, даже если он затрагивает множество модулей и функций, — обычное и вполне полезное дело. Однако в отношении тестовых функций это не всегда так. Каждый тест разрабатывается для реализации конкретного алгоритма проверки. Логика проверки, которую закладывал автор, может быть нарушена даже при незначительных изменениях в коде теста.

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

что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостности

Механизм

Для каждой функции может быть определена ревизия, набор из хэша и кода функции:

Все критические функции могут быть добавлены в словарь ревизий:

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

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

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

Для реализации описанной выше идеи на Python был написан небольшой модуль FileRevision.py. Имеющийся в нем класс Revision() можно импортировать в свой проект и добавить ревизии для нужных именно вам функций.

Немного доработав модуль, можно дополнительно реализовать, к примеру, сжатие файла ревизий, хотя для небольших по объему проектов это не так уж критично.

Источник

Информационная безопасность и защита информации (архив ИПМ бакалавры 2010-2021г, Богомолов)

4 Лекция. Контроль целостности данных. Хеш-функции. Имитовставка. ЭЦП

Контроль целостности данных.

Методы контроля целостности данных:

Полная копия данных.

Создаются полные копии данных и потом сверяются.

что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостности

Рис. Контроль целостности с помощью полной копии данных

Контрольная сумма.

что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостности

Рис. Контроль целостности с помощью контрольной суммы

Примеры контрольных сумм: CRC8, CRC16, CRC32

исходный текст: Контроль целостности данных

crc32 (длина 32 бита)

что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостности

Рис. Основная задача хеш функций

Вычисляют хеш шифрованием данных блочным алгоритмом в режимах CBC, но со стандартным (известным) ключом. Хешем является последний шифрованный блок.

ГОСТ Р 34.11-94

что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостности

Рис. Вычисление хеш по ГОСТ Р 34.11-94 (сравните с CBC)

h — значение хеш-функции сообщения M

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

исходный текст: Контроль целостности данных

sha1 (длина 160 бит)

sha224 (длина 224 бит)

sha256 (длина 256 бит)

sha384 (длина 384 бит)

sha512 (длина 512 бит)

ГОСТ Р 34.11-94 (длина 256 бит)

Имитовставка (MAC, message authentication code — код аутентичности сообщения)

Вычисляют имитовставку шифрованием данных блочным алгоритмом в режимах CBC. Имитовставкой является последний шифрованный блок.

что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостности

Рис. Вычисление имитовставки

Имитовставка по ГОСТ 28147-89

Длина имитовставки от 1 до 32 бит.

Открытый текст TO разбивается на блоки длиной 64 бита. Последний блок в случае необходимости дополняется нулями.

что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостности

Первый блок что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостностишифруется, что и сообщение, но с применением 16 циклов вместо 32. Результат по битам по модулю 2 складывается с вторым блоком что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостностии так же шифруется. Результат складывается с третьим блоком. и так далее.

что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостности

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

что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостности

Рис. Проблема имитовставки

Получатель должен знать ключ, и этот ключ позволяет ему генерировать сообщения с тем же значением имитовставки, что и у присланного сообщения, таким образом, имитовставка на основе симметричного шифра не дает знания — отправитель или получатель сформировал эту имитовставку.

Отсюда следует, что имитовставка на основе симметричного шифра не может заменять собой электронную подпись!

что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостности

Рис. Создание и проверка ЭЦП

Источник

Криптографические методы защиты информации

3 Лекция. Контроль целостности данных. Хеш-функции. Имитовставка. ЭЦП

Контроль целостности данных.

Методы контроля целостности данных:

Полная копия данных.

Создаются полные копии данных и потом сверяются.

что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостности

Рис. Контроль целостности с помощью полной копии данных

Контрольная сумма.

что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостности

Рис. Контроль целостности с помощью контрольной суммы

Примеры контрольных сумм: CRC8, CRC16, CRC32

исходный текст: Контроль целостности данных

crc32 (длина 32 бита)

что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостности

Рис. Основная задача хеш функций

Вычисляют хеш шифрованием данных блочным алгоритмом в режимах CBC, но со стандартным (известным) ключом. Хешем является последний шифрованный блок.

ГОСТ Р 34.11-94

что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостности

Рис. Вычисление хеш по ГОСТ Р 34.11-94 (сравните с CBC)

h — значение хеш-функции сообщения M

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

исходный текст: Контроль целостности данных

sha1 (длина 160 бит)

sha224 (длина 224 бит)

sha256 (длина 256 бит)

sha384 (длина 384 бит)

sha512 (длина 512 бит)

ГОСТ Р 34.11-94 (длина 256 бит)

Имитовставка (MAC, message authentication code — код аутентичности сообщения)

Вычисляют имитовставку шифрованием данных блочным алгоритмом в режимах CBC (CBC-MAC). Имитовставкой является последний шифрованный блок.

что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостности

Рис. Вычисление имитовставки

Имитовставка по ГОСТ 28147-89

Длина имитовставки от 1 до 32 бит.

Открытый текст TO разбивается на блоки длиной 64 бита. Последний блок в случае необходимости дополняется нулями.

что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостности

Первый блок что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостностишифруется, что и сообщение, но с применением 16 циклов вместо 32. Результат по битам по модулю 2 складывается с вторым блоком что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостностии так же шифруется. Результат складывается с третьим блоком. и так далее.

что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостности

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

что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостности

Рис. Проблема имитовставки

Получатель должен знать ключ, и этот ключ позволяет ему генерировать сообщения с тем же значением имитовставки, что и у присланного сообщения, таким образом, имитовставка на основе симметричного шифра не дает знания — отправитель или получатель сформировал эту имитовставку.

Отсюда следует, что имитовставка на основе симметричного шифра не может заменять собой электронную подпись!

Обычные хэш-алгоритмы использовать для вычисления имитовставки нельзя (MD5 и т.д.) т.к. отсутствует секретный ключ. Поэтому создана надстройка над хэш-функциями HMAC (HMAC-MD5, HMAC-SHA1 и т.д.), которая позволяет добавить в алгоритм секретный ключ.

что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостности

Рис. Создание и проверка ЭЦП

Источник

Протоколирование и аудит, шифрование, контроль целостности

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

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

В основе криптографического контроля целостности лежат два понятия:

Хэш-функция – это труднообратимое преобразование данных ( односторонняя функция ), реализуемое, как правило, средствами симметричного шифрования со связыванием блоков. Результат шифрования последнего блока (зависящий от всех предыдущих) и служит результатом хэш-функции.

Пусть имеются данные, целостность которых нужно проверить, хэш-функция и ранее вычисленный результат ее применения к исходным данным (так называемый дайджест ). Обозначим хэш-функцию через h, исходные данные – через T, проверяемые данные – через T’. Контроль целостности данных сводится к проверке равенства h(T’) = h(T). Если оно выполнено, считается, что T’ = T. Совпадение дайджестов для различных данных называется коллизией. В принципе, коллизии, конечно, возможны, поскольку мощность множества дайджестов меньше, чем мощность множества хэшируемых данных, однако то, что h есть функция односторонняя, означает, что за приемлемое время специально организовать коллизию невозможно.

На рис. 11.5 показана процедура выработки электронной цифровой подписи, состоящая в шифровании преобразованием D дайджеста h(T).

что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостности

Проверка ЭЦП может быть реализована так, как показано на рис. 11.6.

что такое контроль целостности. Смотреть фото что такое контроль целостности. Смотреть картинку что такое контроль целостности. Картинка про что такое контроль целостности. Фото что такое контроль целостности

следует, что S’ = D(h(T’)) (для доказательства достаточно применить к обеим частям преобразование D и вычеркнуть в левой части тождественное преобразование D(E())). Таким образом, электронная цифровая подпись защищает целостность сообщения и удостоверяет личность отправителя, то есть защищает целостность источника данных и служит основой неотказуемости.

Для контроля целостности последовательности сообщений (то есть для защиты от кражи, дублирования и переупорядочения сообщений) применяют временные штампы и нумерацию элементов последовательности, при этом штампы и номера включают в подписываемый текст.

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

Цифровые сертификаты обладают следующими свойствами:

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

Цифровые сертификаты в формате X.509 версии 3 стали не только формальным, но и фактическим стандартом, поддерживаемым многочисленными удостоверяющими центрами.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *