М. В. Степашкин, И. В. Котенко, В. С. Богданов
Согласно исследованиям CERT
[1] количество атак на компьютерные сети (КС), их сложность и размер
ущерба, вызванного злоумышленными атаками в сети Интернет, растет с каждым
годом. Причиной этого является низкий уровень защищенности (УЗ)
большинства систем, подключенных к сети Интернет. Поэтому в настоящее
время актуальной задачей является обнаружение уязвимостей и оценка уровня
защищенности КС. Для решения данной задачи служит специальный класс
систем, называемых системами анализа защищенности (САЗ) [15].
Данная
работа посвящена разработке моделей, архитектур и прототипов
интеллектуальных компонентов анализа уязвимостей и определения УЗ на
основе моделирования атак, которые позволят расширить функциональные
возможности существующих САЗ за счет имитации компьютерных атак (действий
злоумышленника). В работе представлена архитектура САЗ и реализованных в
ней моделей.
Основные подходы к анализу
уязвимостей и оценке уровня защищенности базируются на аналитических
вычислениях и имитационном моделировании. Аналитические подходы, как
правило, используют различные методы оценки рисков [2, и др.]. Методы
имитационного моделирования базируются на моделировании компьютерной сети,
деревьях атак, моделей графов и др. [9, 10, 14 и др.].
В настоящее
время существует много работ, раскрывающих различные подходы к
моделированию атак: сети Петри [13], метод анализа изменения состояний
[11], эмуляция вторжений в последовательном и параллельном режимах [5],
причинно-следственная модель [6], концептуальные модели компьютерных
вторжений [21], описательные модели сети и злоумышленников,
структурированное описание на базе деревьев [7], моделирование
“выживания” компьютерных систем [16], объектно-ориентированное дискретное
событийное моделирование [3], модель запрос/ответ для компьютерных атак
[22], ситуационное исчисление и целенаправленный вызов процедур [8],
использование графов атак для анализа уязвимостей [12, 18] и т.д.
На
этапе эксплуатации компьютерных систем для анализа уязвимостей и
определения уровня защищенности могут использоваться две основные группы
методов: пассивные (анализ журналов регистрации событий и т.п.) и активные
(тестирование на проникновение) [4, 17]. Существует множество САЗ,
функционирующих на этапе эксплуатации, например, Retina, Internet
Scanner, CyberCop Scanner, Nessus Security Scanner и т.д. Их основными
недостатками являются: 1) отсутствие ответа на вопрос “Какие ошибки в
политике безопасности были обнаружены в процессе сканирования?”; 2)
использование активного анализа уязвимостей для функционирующей системы
может привести к нарушению работоспособности отдельного сервиса или
системы в целом и т.д.
Архитектура предлагаемой САЗ состоит из следующих модулей (рис. 1): 1) интерфейса пользователя; 2) реализации модели злоумышленника; 3) генерации комплекса сценариев; 4) выполнения сценария; 5) хранилище данных и знаний; 6) обновления баз данных и знаний; 7) оценки уровня защищенности; 8) генерации отчетов; 9) сетевой интерфейс.
На этапе проектирования КС САЗ оперирует с моделью сети, которая базируется на заданной спецификации. На этапе эксплуатации КС САЗ взаимодействует с реальной сетью (системой).
Функционирование САЗ
определяется моделью атак, которая имеет вид иерархической структуры,
состоящей из нескольких уровней (рис. 2). Верхними уровнями являются
комплексный (определяет множество высокоуровневых целей), сценарный
(определяет одну высокоуровневую цель) и уровень этапов сценария.
Множество этапов сценария состоит из разведки, внедрения, повышения
привилегий; реализации угрозы; сокрытия следов; создания потайных ходов.
Нижние уровни служат для уточнения злоумышленником подцелей атаки.
Последний уровень в иерархии описывает низкоуровневые действия
злоумышленника (запуск эксплоитов).
В модели атак используются два
метода достижения злоумышленником конечной цели: 1) прямой и 2) обратный
вывод. Оба метода используют базу правил функционирования САЗ для выбора
узла иерархии обобщенной модели атак. При реализации стратегии прямого
вывода САЗ выполняет все (или ограниченное количество) доступные на
текущем уровне иерархии низкоуровневые действия злоумышленника для каждого
этапа сценария, начиная с первого. Обратный вывод подразумевает создание
оптимизированной цепочки действий на базе заданной злоумышленником
конечной цели, начиная с последнего действия в цепочке и заканчивая
первым.
Стратегия поведения злоумышленника задается его моделью:
злоумышленник с низким уровнем умений использует метод прямого вывода для
достижения цели; с высоким уровнем умений – обратного.
Модель анализируемой КС
служит для оценки результата атак и определения реакции сети на них. Она
состоит из следующих основных модулей (рис.3): распознавания действий
злоумышленника; вычисления результата выполнения атак; генерации откликов
системы; базы знаний об анализируемой сети (системы); базы данных
сигнатур атак; сетевого интерфейса.
Одним из основных модулей является
модуль вычисления результата атак, использующий множество правил, которые
описывают, какой тип атаки, при каких условиях и с какой вероятностью
успеха реализуется. Входными данным для правил являются идентификатор
атаки и множество параметров, описывающих текущее состояние анализируемой
системы. Выходным значением является вероятность успешного выполнения атаки.
>/p>
Реакцией модели информационной системы на имитируемые атаки является изменение ее состояния и (в определенных случаях) некоторое сообщение злоумышленнику. Каждое состояние системы характеризуется следующими основными параметрами: 1) доступность системы в целом и ее отдельных сервисов; 2) целостность данных; 3) конфиденциальность данных; 4) пользователи и их права и т.д. Модуль генерации откликов системы использует следующее множество правил: {RSRj}, где RSRj: Input -> Output & Post-Condition, Input- действия злоумышленника, Output – отклик системы, Post-Condition – изменение состояния системы, & – логическое “И”.
Модель определения
уровня защищенности базируется на функционировании модуля определения
уровня защищенности, основной задачей которого является расчет метрик
безопасности (МБ). Множество метрик образует таксономию МБ, которая
содержит понятия действий по реализации атак, а также понятия типов и
категорий объектов защиты (ОЗ). В таксономии метрик безопасности на
основе атакующих действий выделим четыре уровня: 1) интегральный; 2)
сценарный; 3) этапов сценария; 4) реализации угрозы. Каждый вышележащий
уровень содержит все метрики нижележащих уровней. Примером метрики данной
таксономии является метрика “Общее количество и количество успешно
выполненных сценариев”. Вторая таксономия базируется на типах
(информационные ресурсы, программные ресурсы, физические ресурсы, сервисы)
и категориях (по уровню конфиденциальности и критичности) ОЗ. Примером
метрики данной таксономии является метрика “Общий уровень
конфиденциальности и критичности успешно атакованных ОЗ”.
Определение
МБ основывается на информации о результатах атак и реакции анализируемой
системы на них.
Для тестирования и
оценки предлагаемого подхода мы специфицировали и реализовали
компьютерную сеть, состоящую из трех подсетей: 1) части глобальной сети
Интернет; 2) демилитаризованной зоны (ДМЗ); 3) локальной вычислительной
сети (ЛВС). Основными элементами тестовой компьютерной сети являются: 1)
Internet_host, на котором функционирует САЗ; 2) Firewall_1 – межсетевой
экран между глобальной сетью Интернет и ДМЗ; 3) FTP-сервер, 4) почтовый
сервер и 5) web-сервер, расположенные в ДМЗ; 6) Firewall_2 – межсетевой
экран между локальной вычислительной сетью и демилитаризованной зоной; 7)
DC – контроллер домена; 8) Workstation 1..4 – рабочие станции
ЛВС.
Модель анализируемой системы использует спецификации политик
безопасности и архитектуры данной компьютерной сети, заданные на
специализированных языках Security Policy Language и System Description
Language.
В работе предложен имитационный подход к анализу уязвимостей и оценке защищенности КС.
Основными компонентами предлагаемой САЗ является база правил
функционирования, модель компьютерных атак и модель оценки уровня
защищенности с использованием разработанной таксономии метрик
безопасности. С использованием тестовой компьютерной сети был реализован
прототип САЗ и проведены эксперименты. Направлениями дальнейших
исследований является совершенствование моделей компьютерных атак и оценки
уровня защищенности и проведение экспериментальной оценки предложенных
решений.
Работа выполнена при финансовой поддержке РФФИ (проект
№04-01-00167), программы фундаментальных исследований ОИТВС РАН (контракт
№3.2/03) и при частичной финансовой поддержке, осуществляемой в рамках
проекта Евросоюза POSITIF (контракт IST-2002-002314).