СИСТЕМА ОЦЕНКИ ЗАЩИЩЕННОСТИ АВТОМАТИЗИРОВАННЫХ СИСТЕМ НА ОСНОВЕ ВЫБОРОЧНОГО КОМБИНАТОРНОГО КОНТРОЛЯ

Полезная модель относится к информационным вычислительным системам и сетям, а более конкретно к инструментальным средствам контроля (анализа) защищенности информации, содержащейся в автоматизированной системе (АС), и работоспособности параметров настройки и правильности функционирования программного обеспечения и средств защиты информации АС, и может применяться при проведении сертификационных и аттестационных испытаний.
С одной стороны, подготовка, организация и непосредственное проведение оценки защищенности АС - трудоемкий процесс, требующий больших временных затрат. С другой стороны, испытания по оценке защищенности АС должны осуществляться в соответствии с четко определенной методикой, обеспечивающей доказательство выполнения установленных требований безопасности информации, объективность и повторяемость результатов. Эти два фактора определяет проблему обоснования и реализации эффективных методик функционального тестирования, позволяющих получить достоверные оценки защищенности в заданные сроки.
Из уровня техники известна методика оценки реального уровня АС [1], которая предполагает использование форм испытаний и тестирования программных средств АС на основе натурного и имитационного моделирования.
К недостаткам методики относится тот факт, что достоверность и обоснованность полученных с ее помощью результатов обеспечивается полнотой учета исходных данных о сценариях компьютерных атак и уязвимостях АС, полученных из практики. Поскольку полный набор исходных данных для сложной АС, как правило, велик, система, функционирующая по рассматриваемой методике, может оказаться неэффективной по времени.
Из уровня техники также известна программа контроля полномочий доступа к информационным ресурсам «Ревизор 2 ХР». Данная система позволяет проводить частично автоматизированный анализ защищенности информационных систем от несанкционированного доступа.
Основные недостатки рассматриваемой системы:
- анализ защищенности только в отношении средств разграничения доступа (мандатного и дискреционного);
- недетерминированность анализа защищенности при формировании случайной выборки (в план тестирования случайным образом добавляются объекты в объеме, указанном пользователем, в процентах от общего количества объектов), что нарушает принцип повторяемости результатов.
Известна система контроля отсутствия недекларированных возможностей в программном обеспечении [2], в которой предполагается сокращение времени проведения испытаний за счет исключения симметричных ветвей исходных текстов из анализа.
К недостаткам данной системы относится зависимость времени, необходимого для получения результата, от входных данных, что влечет за собой неэффективность применения данной системы для класса исходных текстов с большим содержанием несимметричных ветвей и невысоким содержанием симметричных.
Задача, на решение которой направлена данная полезная модель, заключается в обеспечении возможности детерминированного построения плана анализа защищенности следующих подсистем защиты информации:
- подсистема дискреционного управления доступом;
- подсистема мандатного управления доступом;
- подсистема межсетевого экранирования;
- подсистема идентификации и аутентификации;
- подсистема очистки памяти;
- подсистема регистрации и учета;
- подсистема обеспечения целостности;
- подсистема обнаружения вторжений;
- подсистема антивирусной защиты;
- подсистема защиты от утечек информации.
Техническим результатом заявляемого изобретения является значительное сокращение объема работ по автоматизированному анализу защищенности информационных систем независимо от структуры входных данных, что повышает быстродействие оценки защищенности автоматизированных систем на основе выборочного комбинаторного контроля по сравнению с рассмотренными прототипами.
Указанный технический результат достигается за счет того, что система оценки защищенности автоматизированных систем на основе выборочного комбинаторного контроля (фиг. 1) содержит блок хранения и выбора перечня требований безопасности информации (1), на первый вход которого подается перечень всех требований безопасности информации, на второй вход - класс защищенности АС, на соответствие требованиям которого предполагается проводить испытания АС, а выход соединен с первыми входами блоков 12-22; блок хранения исходных данных о подсистеме дискреционного управления доступом (2), на вход которого подаются исходные данные о подсистеме дискреционного управления доступом, а выход соединен со вторым входом блока генерации покрывающего набора для подсистемы дискреционного управления доступом (12), выход которого соединен со вторым входом блока построения плана оценки защищенности АС (22); блок хранения исходных данных о подсистеме мандатного управления доступом (3), на вход которого подаются исходные данные о подсистеме мандатного управления доступом, а выход соединен со вторым входом блока генерации покрывающего набора для подсистемы мандатного управления доступом (13), выход которого соединен с третьим входом блока построения плана оценки защищенности АС (22); блок хранения исходных данных о подсистеме межсетевого экранирования (4), на вход которого подаются исходные данные о подсистеме межсетевого экранирования, а выход соединен со вторым входом блока генерации покрывающего набора для подсистемы межсетевого экранирования (14), выход которого соединен с четвертым входом блока построения плана оценки защищенности АС (22); блок хранения исходных данных о подсистеме идентификации и аутентификации (5), на вход которого подаются исходные данные о подсистеме идентификации и аутентификации, а выход соединен со вторым входом блока генерации покрывающего набора для подсистемы идентификации и аутентификации (15), выход которого соединен с пятым входом блока построения плана оценки защищенности АС (22); блок хранения исходных данных о подсистеме очистки памяти (6), на вход которого подаются исходные данные о подсистеме очистки памяти, а выход соединен со вторым входом блока генерации покрывающего набора для подсистемы очистки памяти (16), выход которого соединен с шестым входом блока построения плана оценки защищенности АС (22); блок хранения исходных данных о подсистеме регистрации и учета (7), на вход которого подаются исходные данные о подсистеме регистрации и учета, а выход соединен со вторым входом блока генерации покрывающего набора для подсистемы регистрации и учета (17), выход которого соединен с седьмым входом блока построения плана оценки защищенности АС (22); блок хранения исходных данных о подсистеме обеспечения целостности (8), на вход которого подаются исходные данные о подсистеме обеспечения целостности, а выход соединен со вторым входом блока генерации покрывающего набора для подсистемы обеспечения целостности (18), выход которого соединен с восьмым входом блока построения плана оценки защищенности АС (22); блок хранения исходных данных о подсистеме обнаружения вторжений (9), на вход которого подаются исходные данные о подсистеме обнаружения вторжений, а выход соединен со вторым входом блока генерации покрывающего набора для подсистемы обнаружения вторжений (19), выход которого соединен с девятым входом блока построения плана оценки защищенности АС (22); блок хранения исходных данных о подсистеме антивирусной защиты (10), на вход которого подаются исходные данные о подсистеме антивирусной защиты, а выход соединен со вторым входом блока генерации покрывающего набора для подсистемы антивирусной защиты (20), выход которого соединен с десятым входом блока построения плана оценки защищенности АС (22); блок хранения исходных данных о подсистеме защиты от утечек информации (11), на вход которого подаются исходные данные о подсистеме защиты от утечек информации, а выход соединен со вторым входом блока генерации покрывающего набора для подсистемы защиты от утечек информации (21), выход которого соединен с одиннадцатым входом блока построения плана оценки защищенности АС (22). Сущность изобретения заключается в следующем.
Время проведения оценки защищенности зависит, в первую очередь, от мощности проверяемого множества. При исчерпывающей проверке (проверке 100% элементов) время проведения оценки растет экспоненциально. Сокращение времени проведения анализа защищенности возможно, в первую очередь, за счет уменьшения мощности проверяемого множества значений (выборочный контроль). Основными способами проведения выборочного контроля, применяемыми в настоящее время при проведении тестирования программного обеспечения (ПО), использование которых при проведении анализа защищенности может быть целесообразным, являются следующие.
1. Тестирования с использованием случайных значений входных параметров.
2. Тестирования с использованием разбиения области допустимых значений на эквивалентные подмножества.
3. Тестирование граничных значений.
4. Тестирование, основанное на анализе рисков.
5. Тестирование на основе покрывающих наборов.
Способы 2 и 3 в большей степени ориентированы на процесс тестирования ПО, а выборочное тестирование может с успехом использоваться как при тестировании ПО, так и при проведении анализа защищенности. При этом необходимость обеспечения повторяемости и воспроизводимости процедуры анализа защищенности накладывает ограничение на использование случайных выборок. Использование покрывающих наборов при проведении анализа защищенности позволяет обеспечить воспроизводимость данной процедуры. Кроме того, проведенные исследования [3-6] показали эффективность использования покрывающих наборов при тестировании ПО: до 95% ошибок может быть выявлено с использованием покрывающих наборов глубины 2. Для формирования покрывающего набора используется алгоритм, основанный на добавлении нового параметра (IPO, In-Parameter-Order) [7]. При использовании покрывающих наборов время оценки защищенности растет логарифмически.
Рассмотрим принцип работы устройства на примере оценки соответствия требованиям безопасности информации подсистемы дискреционного управления доступом (блок 1 - блок 2 - блок 12 - блок 22). Оператор задает требования к автоматизированным системам в соответствии с нормативными документами и сохраняет их в блоке 1. После того, как на вход 1.2 поступает информация о классе защищенности, блок 1 формирует битовый вектор, соответствующий системе дискреционного управления доступом. Битовый вектор формируется следующим образом: если очередное требование из перечня заданных требований безопасности информации для данного класса защищенности предъявляется к подсистеме дискреционного управления доступом, то очередная позиция битового вектора принимает значение логической единицы, в противном случае - значение логического нуля. Сформированный битовый вектор поступает на вход 22.1. Блок 12 принимает данные о подсистеме дискреционного управления доступом (объекты доступа, субъекты доступа, права) от блока 2 со входа 12.2 и очередной бит битового вектора от блока 1 со входа 12.1. Если очередной бит содержит логическую единицу, блок 12 генерирует покрывающие наборы глубины 2 для подсистемы дискреционного управления доступом, используя алгоритм добавления нового параметра [7], в противном случае - блок 12 не производит каких-либо операций. В случае, когда покрывающий набор был сформирован, он передается на вход 22.2. На основании данных, полученных со входов 22.1 и 22.2, блок 22 формирует отчет, содержащий наименование подсистемы (в данном случае - подсистема дискреционного управления доступом), формулировку требования (в случае, если данное требование предъявляется к подсистеме дискреционного управления доступом автоматизированной системы заданного класса защищенности) и сгенерированный покрывающий набор для проведения испытания на соответствие требованию.
Алгоритм добавления нового параметра [7] основывается на алгоритмах «горизонтального роста» и «вертикального роста». Алгоритм «горизонтального роста» заключается в следующем. Из множества переданных каждому из блоков 12-21 значений параметров выбираются любые 2 параметра и строятся комбинации всех возможных значений этих параметров. После этого к каждой из комбинаций добавляется любое разрешенное значение третьего параметра так, чтобы в полученных комбинациях из трех значений встречались все возможные значения любых двух параметров из трех. Если после добавления всех вариантов значений третьего параметра данное условие не соблюдается, используется алгоритм "вертикального роста". Генерируются дополнительные комбинации из трех значений, пока условие не будет выполнено, так чтобы при этом конечное количество комбинаций из трех значений было минимальным. После этого алгоритм выполняется для четвертого и всех остальных параметров, которые были переданы блокам 12-21. Для подсистемы дискреционного управления доступом роль параметров играют «субъект доступа», «объект доступа» и «права». В качестве возможных значений параметра «субъект доступа» могут быть «пользователь 1», «процесс 1» и т.п., в качестве «объекта доступа» могут быть «файл 1», «том 1» и т.п., а в качестве значений параметра «права» могут быть «читать», «писать» и т.п.
Реализация предлагаемого способа не вызывает затруднений, так как все блоки и узлы, входящие в устройство, реализующее способ, общеизвестны и описаны в технической литературе. Блоки 1-21 могут быть реализованы в виде одного устройства на микроконтроллере ATxmegal28AlU фирмы Atmel, а блок 22 - на ПЛИС Virtex-5.
Источники информации
1. Мукминов В.А., Хуцишвили В.М., Лобузько А.В. Методика оценки реального уровня защищенности автоматизированных систем. // Программные продукты и системы. - 2012. - №1(97). С. 39-42.
2. Минаков, В.А. и др. Система контроля отсутствия недекларированных возможностей в программном обеспечении. Пат. 2434272 Российская Федерация, МПК G06F 17/00.; заявитель и патентообладатель ГНИИИ ПТЗИ ФСТЭК России. - №2010122971/08; заявл. 04.06.2010; опубл. 20.11.2011, бюл. №32.
3. Kuhn R., Okun V. Pseudo-exhaustive Testing for Software // NASA and IEEE Software Engineering Workshop: Proceedings of 30th Workshop. - Columbia, 2006. - P. 153-158.
4. Kuhn R., Reilly M. An Investigation of the Applicability of Design of Experiments to Software Testing // NASA and IEEE Software Engineering Workshop: Proceedings of 27th Workshop. - Greenbelt, 2002. - P. 91-95.
5. Kuhn R., Wallace D., Gallo A. Software Fault Interactions and Implications for Software Testing // IEEE Transactions on Software Engineering.- 2004. - №30 (6). - P. 418-421.
6. Kuhn R., Wallace D., Dolores R. Failure Modes in Medical Device Software: an Analysis of 15 Years of Recall Data // International Journal of Reliability, Quality, and Safety Engineering. - 2001. - №4. - P. 301-311.
7. Lei Y., Tai K.C. In-parameter order: A test generation strategy for pairwise testing // IEEE High-Assurance Systems Engineering Symposium: Proceedings. - Washington, 1998. - P. 254-251.