Система контроля целостности журналов непрерывно ведущихся записей данных
Иллюстрации
Показать всеИзобретение относится к контролю целостности данных, обрабатываемых в автоматизированных системах. Технический результат – обеспечение необходимого уровня защиты записей данных в файле на основе задания соответствующих параметров метода «однократной записи»: степени вложенности в блок данных, количество используемых внешних ключей. Система контроля целостности журналов непрерывно ведущихся записей данных, выполненная в виде сервера администрирования, содержащая первый вход записей данных, первый блок формирования хэш-кода, блок хранения первого внешнего ключа, блок хранения второго внешнего ключа, второй блок формирования хэш-кода, при этом дополнительно введены: блок коммутации внешних ключей, блок коммутации внутренних ключей, k-2 блоков хранения внешних ключей, m-2 блоков формирования хэш-кода, m-1 входов записей данных, m-1 выходов системы защищенных записей данных, m блоков конкатенации с памятью, блок хранения ключа функции распределения внешних ключей, блок хранения ключа функции распределения внутренних ключей. 1 ил.
Реферат
Область техники
Изобретение относится к системам и способам обеспечения безопасности информации в автоматизированных системах (АС), а именно к системам и способам контроля целостности данных, обрабатываемых в АС.
Уровень техники
Для обеспечения безопасности информации в АС важна целостность различных файлов (файлы загрузки операционной системы, файлы антивирусных программ и т.п.). Кроме того, существуют файлы с журналами непрерывно ведущихся записей данных (например, файлы журналов аудита безопасности), целостность которых требуется контролировать. В то же время эти журналы могут быть изменены случайно или преднамеренно, журнал может быть заменен или записи в журнале могут быть случайно или умышленно перезаписаны. Известны технические решения для контроля целостности данных:
1. Патент US 20030192033, Validating computer program installation, 2002, [Электронный ресурс] - https://books.google.com.tr/patents/US 20030192033.
2. Программный комплекс "Shield System Manager подсистема контроля целостности (Integrity Control System), [Электронный ресурс] - http://lissiru.narod.ru/products/index.html.
3. Программно-аппаратный комплекс доверенной загрузки "Блокхост-МДЗ [Электронный ресурс] - https://gaz-is.ru/poddergka/download/finish/6/8.html.
В данных решениях для контроля целостности информации используется хэш-функция (функция, отображающая строки бит исходных данных в строки бит фиксированной длины - хэш-код).
Недостатком подобных решений является низкий уровень защищенности записей данных от атак со стороны уполномоченных пользователей (инсайдеров). При ведении подряд идущих записей данных в файле (записи в электронной истории болезни, журнал событий аудита безопасности) пользователь (или один из администраторов), обладая собственным ключом (при использовании ключевых хэш-функций) имеет возможность изменять (подделывать) свои записи, записанные в файл ранее. То есть данные решения не учитывают внутренние угрозы безопасности данных со стороны легальных пользователей (инсайдеров).
Известна система контроля целостности записей данных на основе метода «однократной записи» (Atsushi Harada, Masakatsu Nishigaki, Masakazu Soga, Akio Takubo, Itsukazu Nakamura. A Write-Once Data Management System, ICITA 2002. - Shizuoka University, Japan, 2002, [Электронный ресурс] - http://www.icita.org/previous/icita2002/ICITA2002/kptdata/116-21/index.htm), которая использует различные комбинации электронных подписей пользователей для защиты (контроля целостности) записей от уполномоченных пользователей.
Недостатком данного решения является отсутствие функциональной возможности установления дополнительных параметров ввода ключевых данных различных пользователей и порядка их применения (секретных для самих пользователей или для различных групп пользователей, состав которых самим пользователям не известен), позволяющих обеспечить соответствующий уровень защищенности записей данных в файле.
Наиболее близкой по технической сущности к предлагаемой системе (прототип) является система аутентификации сообщений НМАС (hash-based message authentication), суть которой заключается в использовании криптографической хэш-функции в сочетании с одним секретным ключом и NMAC с двумя секретными ключами (М. Bellare, R. Canetti and Н. Krawczyk, Keying Hash Functions for Message Authentication, Advances in Cryptology Proceedings of CRYPTO 1996, pp. 1-15, Springer-Verlag, [Электронный ресурс] - http://dblp.uni-trier.de/db/conf/crypto/crypto96, [Электронный ресурс] - http://daily.sec.ru/2012/07/16/print-Algoritmi-auntentifikatsii-soobsheniy-HMAC-i-NMAC.html).
Система аутентификации сообщений NMAC состоит из: входа для сообщения, соединеного с первым входом первого блока формирования хэш-кода, блока хранения первого секретного (внешнего) ключа, выход которого соединен со вторым входом первого блока формирования хэш-кода, выход которого соединен с первым входом второго блока формирования хэш-кода, блока хранения второго секретного (внешнего) ключа, выход которого соединен со вторым входом второго блока формирования хэш-кода, выход которого соединен с выходом кода аутентичности сообщения.
Контроль целостности сообщения заключается в том, что отправитель сообщения М с помощью двух секретных (внешних) ключей k1 и k2 вычисляет код аутентичности сообщения по правилу: , где - символ конкатенации, hash - функция вычислений в блоке формирования хэш-кода. Сообщение с кодом аутентичности (М, N) по каналу передачи сообщения, расположенного в недоверительной среде, поступает получателю. Доверительная сторона (получатель сообщения) осуществляет проверку соответствия полученного кода аутентичности Н* для контроля целостности и аутентификации сообщения М*.
Недостатком прототипа является низкий уровень защищенности данных от атак со стороны уполномоченных пользователей (инсайдеров) (необходимо наличие двух доверяющих друг другу сторон, конфиденциальность секретных ключей).
Особенностью журналов непрерывно ведущихся записей данных является динамичность и непрерывность записи данных в файл. Файл постоянно обновляется за счет добавления новых записей. В силу раскрытых обстоятельств, становится ясно, что необходима новая система обнаружения изменений в файлах с журналами, которая обеспечивает защиту (контроль целостности) данных от уполномоченных пользователей (внутренние угрозы безопасности данных).
Раскрытие изобретения
Настоящее изобретение предназначено для решения задачи обнаружения фактов атаки на АС со стороны уполномоченных пользователей (инсайдеров).
Технический результат заключается в том, что система позволяет обеспечить необходимый уровень защиты записей данных в файле на основе задания соответствующих параметров метода «однократной записи»: степени вложенности записей в блок данных, количество используемых внешних ключей.
Для контроля целостности данных в АС могут быть использованы как бесключевые хэш-функции (прототип), так и ключевые хэш-функции, которые были использованы в изобретении для обеспечения требуемого уровня защищенности данных. Под внешними ключами в изобретении будем понимать криптографические ключи хэш-функции.
Указанный технический результат достигается тем, что в известной системе аутентификации сообщений NMAC, включающей: вход для записей данных, который подключен к первому входу первого блока формирования хэш-кода, блок хранения первого внешнего ключа, блок хранения второго внешнего ключа, второй блок формирования хэш-кода, выход которого соединен с выходом системы защищенных записей данных, дополнительно введены: блок коммутации внешних ключей, блок коммутации внутренних ключей, под которыми здесь и далее понимаются значения, полученные в результате конкатенации, k-2 блоков хранения внешних ключей, m-2 блоков формирования хэш-кода, m-1 входов записей данных, m-1 выходов системы защищенных записей данных, m блоков конкатенации с памятью, блок хранения ключа функции распределения внешних ключей, блок хранения ключа функции распределения внутренних ключей, причем k блоков хранения внешних ключей подключены к первым входам блока коммутации внешних ключей, блок хранения ключа функции распределения внешних ключей подключен ко второму входу блока коммутации внешних ключей, выходы которого соединены со вторыми входами блоков формирования хэш-кодов, m-1 входов записей данных подключены к первым входам m-1 блоков формирования хэш-кодов и m входов записей данных подключены ко вторым входам m блоков конкатенации с памятью, m-1 выходов блоков формирования хэш-кодов являются m-1 выходами системы защищенных записей данных и m выходов системы защищенных записей данных соединены с первыми входами m блоков конкатенации с памятью, выходы которых соединены с первыми входами блока коммутации внутренних ключей, выходы которого соединены с третьими входами блоков формирования хэш-кодов, второй вход блока коммутации внутренних ключей соединен с выходом блока хранения ключа функции распределения внутренних ключей.
Эти отличительные признаки по сравнению с прототипом позволяют сделать вывод о соответствии заявленного технического решения критерию «новизна».
Сущность изобретения заключается в следующем. В случае применения прототипа для контроля целостности журналов непрерывно ведущихся записей данных уполномоченный пользователь (владелец ключей k1 и k2) может скрыть факт атаки на АС, изменив записи в файле. Отличительными признаками по сравнению с прототипом является применение k внешних ключей и m внутренних ключей, блока коммутации внешних ключей, блока коммутации внутренних ключей, m блоков конкатенации с памятью, что позволяет обеспечить требуемый уровень защищенности данных (от внутреннего нарушителя), предотвращать попытки пользователей скрыть следы ранее реализованных деструктивных воздействий на журнал, а также обнаруживать факты атаки на АС.
Для описания сущности изобретения введем обозначения:
- множество двоичных векторов произвольной конечной длины (множество непрерывно поступающих записей данных в файл);
- двоичный вектор произвольной конечной длины , представляющий произвольную запись и соответствующий моменту времени ti+k;
- бесключевая хэш-функция, отображающая двоичный вектор произвольной конечной длины в сигнатуру (двоичный вектор длины бит);
dj - криптографический (внешний) ключ;
- сигнатура ключевой хэш-функции под записью ;
- получение сигнатуры ключевой хэш-функции;
- операция конкатенации двоичных векторов.
Для обеспечения целостности данных с одним внешним ключем d1 в качестве аргумента хэш-функции используем результат конкатенации двух двоичных векторов:
;
где - внутренний ключ.
Тогда для элемента из множества :
,
Записи в блоке данных обновляются только за счет добавления новых записей, а структура данных обязана сохранять порядок записей, следовательно, для получения зависимых защищенных блоков данных применим операцию конкатенации двоичных векторов.
Тогда для элемента из множества :
.
Используем следующее выражение для определения параметров:
,
где коэффициенты: (s1, s2, …, sh) - определяют вложенность в блоке данных, dj - количество используемых внешних ключей.
Внешние ключи d1 и d2 используются случайным образом (по определенному алгоритму) из множества (множество всех криптографических ключей пользователей).
Для скрытия факта осуществления атаки (модификация данных) злоумышленнику необходимо вступить в сговор со всеми владельцами ключей и знать алгоритм обеспечения целостности данных для данной АС, который может быть динамически изменяющимся (изменение параметров метода «однократной записи»).
Описание чертежей
На чертеже представлено: фиг. 1 - схема системы контроля целостности журналов непрерывно ведущихся записей данных.
На Фиг. 1 изображена система контроля целостности журналов непрерывно ведущихся записей данных, выполненная в виде сервера администрирования, которая содержит: блоки 1.1-1.k хранения внешних ключей, блок 2 хранения ключа функции распределения внешних ключей, блок 3 коммутации внешних ключей, блоки 4.1-4.m формирования хэш-кода, блок 5 хранения ключа функции распределения внутренних ключей, блок 6 коммутации внутренних ключей, входы 7.1-7.m записей данных, выходы 8.1-8.m системы защищенных записей данных, блоки 9.1-9.m конкатенации с памятью, причем блоки 1.1-1.k хранения внешних ключей подключены к первым входам блока 3 коммутации внешних ключей, блок 2 хранения ключа функции распределения внешних ключей подключен ко второму входу блока 3 коммутации внешних ключей, выходы которого соединены со вторыми входами блоков 4.1-4.m формирования хэш-кодов, входы 7.1-7.m записей данных подключены к первым входам блоков 4.1-4.m формирования хэш-кодов и ко вторым входам блоков 9.1-9.m конкатенации с памятью, выходы блоков 4.1-4.m формирования хэш-кодов являются выходами 8.1-8.m системы защищенных записей данных и соединены с первыми входами блоков 9.1-9.m конкатенации с памятью, выходы которых соединены с первыми входами блока 6 коммутации внутренних ключей, выходы которого соединены с третьими входами блоков 4.1-4.m формирования хэш-кодов, второй вход блока 6 коммутации внутренних ключей соединен с выходом блока 5 хранения ключа функции распределения внутренних ключей.
Описание заявленного изобретения
Система содержит входы 7.1-7.m, на которые непрерывно поступают записи данных, в качестве источников которых могут выступать: файловые серверы, автоматизированные рабочие места пользователей, системы предупреждения и обнаружения компьютерных атак, системы разграничения доступа, антивирусные программы и т.д.
Блоки 4.1-4.m представляют собой функционально самостоятельные блоки, выполненные в виде участков памяти вычислительного устройства и предназначенные для вычисления сигнатуры хэш-функции.
Выходы 8.1-8.m системы защищенных записей данных записываются в журнале непрерывно ведущихся записей данных, выполненном в виде таблицы или базы данных, в которой определены причинно-следственные связи между записями (хронологическая последовательность и т.п.).
Блоки 1.1-1.k идентичны блокам хранения ключей, представленных в прототипе, и представляют устройства хранения данных в доступной для чтения компьютерной форме (жесткие диски, флэш-карты, оптические диски, ОЗУ и т.п.). Устройства хранения могут размещаться на распределенных по сети рабочих местах пользователей и использовать сетевое соединение для связи с ними.
Блоки 2 и 5 хранения ключей функции распределения (внутренних и внешних ключей) представляют устройства хранения данных, которые могут размещаться как на распределенных рабочих местах, так и рабочем месте администратора системы. Ключ представлен в виде двоичной матрицы, строки которой соответствуют внутренним (внешним) ключам, а столбцы номерам выходов блоков (3, 6) коммутации.
Блок 3 предназначен для коммутации внешних ключей из блоков 1.1-1.k в соответствии с ключом функцией распределения из блока 2.
Блок 6 предназначен для коммутации внутренних ключей, полученных из блоков 9.1-9.m, в соответствии с ключом функцией распределения из блока 5.
Блоки 9.1-9.m конкатенации с памятью предназначены для получения внутренних ключей и представляют устройства хранения данных в доступной для чтения компьютерной форме, которые могут размещаться на распределенных по сети рабочих местах пользователей и использовать сетевое соединение для связи с ними.
Система функционирует следующим образом.
В исходном состоянии в блоки 1.1-1.k записаны внешние ключи (криптографические ключи хэш-функции: d1, d2, …, dk). В блоки 2 и 5 записаны ключи, в соответствии с которыми в блоках 3 и 6 реализуется функция распределения внешних и внутренних ключей для подачи на блоки 4.1-4.m формирования хэш-кода.
Шаг 1: на входы 7.1-7.m поступают одновременно записи данных: , , , …, , которые поступают на первые входы блоков 4.1-4.m формирования хэш-кода и вторые входы блоков 9.1-9.m конкатенации с памятью.
Шаг 2: на вторые входы блоков 4.1-4.m формирования хэш-кода из блока 3 поступают внешние ключи: d1, d2, …, dk, на третьи входы блоков 4.1-4.m формирования хэш-кода из блока 6 поступают внутренние ключи: , , …, , полученные в предыдущем цикле. В блоках 4.1-4.m формирования хэш-кода вычисляется сигнатура хэш-функции: .
Шаг 3: с выходов блоков 4.1-4.m формирования хэш-кода защищенные записи , , …, поступают на выходы 8.1-8.m системы защищенные записи данных и первые входы блоков 9.1-9.m конкатенации с памятью. В блоках 9.1-9.m конкатенации с памятью вычисляются внутренние ключи , значения которых заполняют ячейки памяти.
Далее цикл работы системы повторяется с 1-го шага для всех m-блоков: Mt+1, Mt+2, …, .
Таким образом, введенные в изобретение блок 3 коммутации внешних ключей, блок 6 коммутации внутренних ключей, k-2 блоков 1.3-1.k хранения внешних ключей, m-2 блоков 4.3-4.m формирования хэш-кода, m-1 входов 7.2-7.m записей данных, m-1 выходов 8.2-8.m системы защищенных записей данных, m блоков 9.1-9.m конкатенации с памятью, блок 2 хранения ключа функции распределения внешних ключей, блок 5 хранения ключа функции распределения внутренних ключей соответствуют признакам «существенные отличия» и обеспечивают достижение положительного эффекта.
Следует отметить, что приведенные в описании сведения являются только примерами, которые не ограничивают объем настоящего изобретения, описанный формулой. Существуют и другие варианты осуществления настоящего изобретения, согласующиеся с сущностью и объемом настоящего изобретения.
Система контроля целостности журналов непрерывно ведущихся записей данных, выполненная в виде сервера администрирования, содержащая первый вход записей данных, подключений к первому входу первого блока формирования хэш-кода, блок хранения первого внешнего ключа, блок хранения второго внешнего ключа, второй блок формирования хэш-кода, выход которого является вторым выходом системы защищенных записей данных, отличающаяся тем, что дополнительно введены: блок коммутации внешних ключей, блок коммутации внутренних ключей, k-2 блоков хранения внешних ключей, m-2 блоков формирования хэш-кода, m-1 входов записей данных, m-1 выходов системы защищенных записей данных, m блоков конкатенации с памятью, блок хранения ключа функции распределения внешних ключей, блок хранения ключа функции распределения внутренних ключей, причем k блоков хранения внешних ключей подключены к первым входам блока коммутации внешних ключей, блок хранения ключа функции распределения внешних ключей подключен ко второму входу блока коммутации внешних ключей, выходы которого соединены со вторыми входами блоков формирования хэш-кодов, m-1 входов записей данных подключены к первым входам m-1 блоков формирования хэш-кодов и m входов записей данных подключены ко вторым входам m блоков конкатенации с памятью, m-1 выходов блоков формирования хэш-кодов являются m-1 выходами системы защищенных записей данных и m выходов системы защищенных записей данных соединены с первыми входами m блоков конкатенации с памятью, выходы которых соединены с первыми входами блока коммутации внутренних ключей, выходы которого соединены с третьими входами блоков формирования хэш-кодов, второй вход блока коммутации внутренних ключей соединен с выходом блока хранения ключа функции распределения внутренних ключей.