Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Сравнительный анализ систем обнаружения атак или вторжений (Методы обнаружения атак)

Содержание:

Введение

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

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

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

Из-за высокой сложности и дороговизны разработки защищённых систем by design, тогда же в 80-е годы XX века появилось и начало активно развиваться направление информационной безопасности, связанное с обнаружением (и, возможно, последующим реагированием) нарушений безопасности информационных систем, в качестве эффективного временного решения, позволяющего закрывать «бреши» в безопасности систем до их исправления. Данное направление получило название «обнаружение атак» (intrusion detection); и за прошедшие годы в рамках академических разработок были созданы сотни систем обнаружения атак для различных платформ: от систем класса mainframe до современных операционных систем общего назначения, СУБД и распространённых приложений

Методы обнаружения атак в современных системах обнаружения атак недостаточно проработаны в части формальной модели атаки, и, следовательно, для них достаточно сложно строго оценить такие свойства как вычислительная сложность, корректность, завершимость и т.д. Принято разделять методы обнаружения атак на методы обнаружения аномалий и методы обнаружения злоупотреблений. Ко второму типу методов относятся большинство современных коммерческих систем (Cisco IPS, ISS RealSecure, NFR) – они используют сигнатурные (экспертные) методы обнаружения. Существует множество академических разработок в области обнаружения аномалий, но в промышленных системах они используются редко и с большой осторожностью, так как такие системы порождают большое количество ложных срабатываний. Для экспертных же систем основной проблемой является низкая, близкая к нулю, эффективность обнаружения неизвестных атак (адаптивность). Низкая адаптивность до сих пор остаётся проблемой, хотя такие достоинства как низкая вычислительная сложность и малая стоимость развёртывания определяют доминирование таких систем в данной области.

Основная часть

    1. Методы обнаружения атак

Все методы обнаружения атак можно разделить на два класса: методы обнаружения аномалий и методы обнаружения злоупотреблений. Методы первого класса базируются на наличии готового описания нормального поведения наблюдаемых объектов РИС, и любое отклонение от нормального поведения считается аномальным (нарушением). Методы обнаружения злоупотреблений основаны на описании известных нарушений или атак: если наблюдаемое поведение некоторого объекта РИС совпадает с описанием известной атаки, поведение объекта считается атакой.

1.2 Методы обнаружения злоупотреблений

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

2) Графы сценариев атак: в работе предложен подход к обнаружению атак на основе использования методов формальной спецификации на моделях. На вход системе верификации подаётся конечная модель защищаемой системы и некоторое формальное свойство корректности, которое выполняется только для разрешённого поведения системы. Данное свойство корректности делит всё множество поведений на два класса – допустимого поведения, для которого свойство выполняется, и недопустимого, для которого оно не выполняется. Отличие данного метода от обычных систем верификации заключается в том, что их задача, обычно, найти один контрпример из множества недопустимого поведения, а в предложенном методе строится полный набор таких примеров для конкретной защищаемой системы, что даёт на выходе описание возможных путей атаки. Из-за высокой вычислительной сложности (NP) данный метод может быть использован для поиска уязвимостей проектирования систем и других сложных для обнаружения уязвимостей, но для задачи обнаружения атак в реальном времени он неприменим. По остальным критериям метод является гибридным, верифицируемым, устойчивым и адаптивным.

3) Нейронные сети: так как задачу обнаружения атак можно рассматривать как задачу распознавания образов (или задачу классификации), то для её решения также применяются нейронные сети. Для этого функционирование защищаемой системы и взаимодействующих с ней внешних объектов представляется в виде траекторий в некотором числовом пространстве признаков. В качестве метода обнаружения злоупотреблений, нейронные сети обучаются на примерах атак каждого класса и, в дальнейшем, используются для распознавания принадлежности наблюдаемого поведения одному из классов атак. Основная сложность в использовании нейросетей заключается в корректном построении такого пространства признаков, которое позволило бы разделить классы атак между собой и отделить их от нормального поведения. Кроме того, для классических нейронных сетей характерно долгое обучение, при этом время обучения зависит от размера обучающей выборки. В соответствии с введёнными критериями, нейронные сети используются на сетевом и узловом уровнях, являются адаптивными, имеют сравнительно низкую вычислительную сложность. При этом они не являются верифицируемыми и устойчивы, как правило, только в пределах той сети, в которой они обучались, что существенно ограничивает применимость метода (только локальная устойчивость).

4) Иммунные сети: так же, как и нейронные сети, иммунные сети являются механизмом классификации и строятся по аналогии с иммунной системой живого организма. Основное достоинство иммунных сетей заключатся в возможности получения «антител» к неизвестным атакам. В работе предложена модель формального пептида, для которой заявлена возможность использования в системах обнаружения атак. Однако, позже было показано, что использование данного метода требует решения системы дифференциальных уравнений в режиме обнаружения, что даёт вычислительную сложность порядка при использовании метода Рунге-Кутта. В соответствии с введёнными критериями, данная группа методов применима для сетевого и узлового уровней, не верифицируема, адаптивна, устойчива только локально, имеет высокую вычислительную сложность.

5) Support vector machines (SVM): SVM – это метод представления и распознания шаблонов, который позволяет формировать шаблоны в результате обучения. Данный метод требует небольшого количества данных для обучения и позволяет обрабатывать векторы признаков большой размерности, что полезно для повышения точности систем обнаружения атак и снижения временных затрат на обучение и переобучение. Метод применим как для обнаружения злоупотреблений, так и для обнаружения аномалий. SVM имеет такие же достоинства и недостатки для решения нашей задачи, как и нейронные сети, т.е. является адаптивным, но неверифицируемым.

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

7) Методы, основанные на спецификациях: в основе данного метода, лежит описание ограничений на запрещенное поведение объектов в защищаемой системе в виде спецификаций атак. В спецификацию может входить: ограничения на загрузку ресурсов, на список запрещенных операций и их последовательностей, на время суток, в течение которого применимы те или иные ограничения. Соответствие поведения спецификации считается атакой. Спецификации используются для сетевого уровня, является верифицируемым, локально устойчивым и имеет низкую вычислительную сложность. Данный подход близок к классу методов обнаружения аномалий. Основные недостатки – низкая адаптивность и сложность разработки спецификаций.

8) Multivariate Adaptive Regression Splines (MARS): Один из методов аппроксимации функций, основанный на сплайнах. Аналогично нейронным сетям и кластерному анализу MARS оперирует в многомерном пространстве признаков. Поведение сетевых объектов отображается в последовательности векторов данного пространства. Задача процедуры MARS заключается в построении оптимальной аппроксимации поведения по заданной истории в виде обучающего множества векторов, при этом в качестве аппроксимирующей функции используются сплайны с переменным числом вершин. В ходе «обучения», с помощью переборного процесса, выбирается оптимальное число вершин для заданной выборки. Построенный сплайн является «шаблоном» атаки. В режиме распознавания наблюдаемое поведение отображается в параметрическое пространство и сравнивается с аппроксимирующей функцией. Достоинства и недостатки данного метода аналогичны SVM и нейронным сетям. Сигнатурные методы: Наиболее часто используемая группа методов, суть которых заключается в составлении некоторого алфавита из наблюдаемых в системе событий и описании множества сигнатур атак в виде регулярных выражений (в общем случае) в построенном алфавите. Как правило, сигнатурные методы работают на самом низком уровне абстракции и анализируют непосредственно передаваемые по сети данные, параметры системных вызовов и записи файлов журналов. В наиболее развитом виде представляет собой реализацию регулярных выражений над различными трассами (сетевой трафик, системные вызовы, записи журналов приложений и т.п.). Сигнатурные методы примечательны тем, что для них хорошо применимы аппаратные ускорители, но при этом метод не является адаптивным. По остальным критериям данная группа методов является гибридной, глобально устойчивой, верифицируемой.

1.3 Методы обнаружения аномалий

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

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

3) Нейронные сети: нейронные сети для обнаружения аномалий обучаются в течение некоторого периода времени, когда всё наблюдаемое поведение считается нормальным. После обучения нейронная сеть запускается в режиме распознавания. В ситуации, когда во входном потоке не удается распознать нормальное поведение, фиксируется факт атаки. В случае использования репрезентативной обучающей выборки нейронные сети дают хорошую устойчивость в пределах заданной системы; но составление подобной выборки является серьёзной и сложной задачей. Классические нейронные сети имеют высокую вычислительную сложность обучения, что затрудняет их применение на больших потоках данных.

4) Иммунные сети: обнаружение аномалий является одним из возможных приложений иммунных методов. Так как количество примеров нормального поведения обычно на порядки превышает число примеров атак, использование иммунных сетей для обнаружения аномалий имеет большую вычислительную сложность.

5) Экспертные системы: информация о нормальном поведении представляется в подобных системах в виде правил, а наблюдаемое поведение в виде фактов. На основании фактов и правил принимается решение о соответствии наблюдаемого поведения «нормальному», либо о наличии аномалии. Главный недостаток подобных систем – высокая вычислительная сложность (в общем случае). В том числе при обнаружении аномалий.

6) Поведенческая биометрия: включает в себя методы, не требующие специального оборудования (сканеров сетчатки, отпечатков пальцев), т.е. методы обнаружения атак, основанные на наблюдения клавиатурного почерка и использования мыши. В основе методов лежит гипотеза о различии «почерка» работы с интерфейсами ввода-вывода для различных пользователей. На базе построенного профиля нормального поведения для данного пользователя обнаруживаются отклонения от этого профиля, вызванные попытками других лиц работать с клавиатурой или другими физическими устройствами ввода. Поведенческая биометрия имеет строго локальную устойчивость (в пределах одной сети) и слабо верифицируема. Support vector machines (SVM): SVM применим как для обнаружения злоупотреблений, так и для обнаружения аномалий, при этом метод имеет достоинства и недостатки, аналогичные нейронным сетям.

1.4 Системы обнаружения атак

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

Таблица 1

Открытые системы обнаружения компьютерных атак

Название системы

Производитель

Bro

University of California, Lawrence Berkeley National Laboratory

OSSEC

Daniel B. Sid , OSSEC.net

STAT

University of California at Santa Barbara

Prelude

Yoann Vandoorselaere

Snort

Martin Roesch

1.5 Результаты сравнительного анализа

В данном разделе приводятся результаты сравнения рассмотренных СОА. Системы сравниваются отдельно по каждому из вышеуказанных критериев. Все рассмотренные системы используют в качестве основного метода обнаружения атак сигнатурный метод (сравнение строк, шаблонов).

1) Система Bro использует регулярные выражения над трассами, которые формируются сетевыми протоколами. Набор регулярных выражений создаётся экспертами. Кроме того, в состав системы входит транслятор сигнатур из формата системы Snort в сценарии Bro (хотя в настоящее время этот транслятор поддерживает не все конструкции языка Snort).

2) Система OSSEC является монолитной – в сенсоры и анализаторы «зашиты» знания разработчиков системы обнаружения атак о том, какие последовательности сообщений в журналах могут быть признаками атаки. Такая архитектура системы является трудно расширяемой с точки зрения базы знаний об атаках.

3) Система NetSTAT использует язык описания сценариев атак STATL, особенностью которого является возможность описания сценария атаки в виде последовательности действий над атакуемым ресурсом. Таким образом, эта система использует метод обнаружения, близкий к методу анализа переходов состояний.

4) Система Prelude использует различные анализирующие компоненты для сетевых данных и журналов регистрации. Для анализа сетевых данных можно использовать систему Snort. Также используется набор специализированных модулей для обнаружения специфических атак, таких как сканирование портов, некорректные ARP пакеты и т.п. Специальные модули производят дефрагментацию IP, сборку TCP-потока, декодирование HTTP-запросов.

5) Система Snort использует базу сигнатур известных атак. В ней также используется набор специализированных модулей для обнаружения специфических атак, таких как сканирование портов или отправка большого числа фрагментированных пакетов. Специальные модули производят дефрагментацию IP, декодирование HTTP-запросов. Сторонние разработчики часто реализуют другие методы обнаружения атак в виде модулей (препроцессоров) Snort. Но в основную версию системы они не входят.

1.6 Уровень наблюдения за системой

Все рассмотренные выше системы работают с данными приложений и операционной системы на узловом уровне, а также с сетевыми данными. То есть анализируемая информация получается из вторичных источников, таких как журналы регистрации приложений, ОС, либо из сетевого канала передачи данных. Система OSSEC работает исключительно с журналами регистрации приложений и операционной системы. Системы Bro, Snort анализируют только сетевые данные. Системы NetSTAT и Prelude анализируют как данные из локальных системных источников, так и сетевые данные. Из рассмотренных систем ни одна не покрывает все уровни наблюдения, и анализируемая каждой системой информация неполна с точки зрения возможности обнаружения атак всех классов. Для обнаружения атак всех классов необходимо анализировать информацию на всех трёх уровнях одновременно

Заключение

Проведенный обзор и сравнительный анализ методов и систем обнаружения атак позволяют сделать вывод о том, что в настоящий момент не существует открытой общедоступной системы обнаружения, которая обладала бы адаптивностью к неизвестным атакам. Несмотря на наличие большого числа методов обнаружения аномалий, существенное количество ложных срабатываний, слабая устойчивость и неверифицируемость не позволяет их использовать в системах общего назначения. Кроме того, до сих пор использование методов обнаружения аномалий ограничено исследовательскими и узкоспециализированными системами. Например, делаются попытки использовать методы классификации данных, такие как кластерный анализ и нейронные/иммунные сети. Главный недостаток этих методов, в сравнении с экспертными методами и анализом систем переходов, в принципиальной невозможности верификации результата (выхода) – классы поведения строятся на основе обучения и не представляется возможным аналитически рассчитать уровень ошибок I и II рода для таких методов, а также проанализировать корректность принимаемых решений. Для решения данной проблемы необходимо разработать адаптивный метод обнаружения атак, который при низке (линейной) вычислительной сложности, устойчивости и верифицируемой будет иметь низкий уровень ложных срабатываний. Также можно сделать вывод о том, что в области защиты от атак наблюдается переход от обнаружения атак к предотвращению атак: все рассмотренные открытые СОА уже включают в себя средства реагирования на атаки, которые в обязательном порядке включают в себя разрыв соединений и взаимодействие с внешними средствами защиты – межсетевыми экранами и т.п. Данная тенденция, в сочетании с постоянным повышением пропускной способности каналов передачи данных, предъявляет повышенные требования к вычислительной сложности алгоритмов обнаружения атак. При этом большинство методов обнаружения аномалий имеет высокую вычислительную сложность по сравнению с наиболее распространенным сигнатурным методом. В свете вышеизложенного представляется перспективным разработать гибридный метод обнаружения атак, который объединит сигнатурный метод и метод анализа систем переходов для обнаружения отклонений от нормального поведения. Объединение этих методов поможет сохранить верифицируемость, устойчивость и низкую вычислительную сложность при обнаружении злоупотреблений и дополнить их свойством адаптивности к неизвестным атакам. Наличие данных свойств позволит использовать метод в системах обнаружения атак общего назначения, а также в автономных системах, для которых все перечисленные выше свойства являются критичными.

Список литературы

  1. Городецкий В.И., Котенко И.В., Карсаев О. В., Хабаров А.В. Многоагентные технологии комплексной защиты информации в телекоммуникационных системах. ISINAS – 2000. Труды. – СПб., 2000.
  2. J. Allen, A. Christie, W. Fithen, J. McHuge, J. Pickel, E. Stoner, State of Practice of intrusion detection technologies // Technical Report CMU/SEI-99-TR-028. Carnegie Mellon Software Engineering Institute. 2000,
  3. С.А. Терехов. Байесовы сети // Научная сессия МИФИ – 2003, V Всеросийская научно - техническая конференция «нейроинформатика-2003»: лекции по нейроинформатике. Часть 1.-М.:МИФИ, 2003.-188с
  4. ГОСТ Р 50922-96: Защита информации. Основные термины и определения. // Госстандарт России, Москва, 1996г.
  5. Гамаюнов Д. Ю., Смелянский Р. Л., Модель поведения сетевых объектов в распределенных вычислительных системах. // Журнал «Программирование», 2007, №4.
  6. Р.Л. Смелянский, Д. Ю. Гамаюнов. “Современные некоммерческие средства обнаружения атак”. // Факультет Вычислительной Математики и Кибернетики, МГУ им. М. В. Ломоносова, Москва, 2002 г.
  7. Р.Л. Смелянский, А.И. Качалин. “Применения нейросетей для обнаружения аномального поведения объектов в компьютерных сетях”. // Факультет Вычислительной Математики и Кибернетики, МГУ им. М. В. Ломоносова, Москва, 2004.
  8. Тараканов А.О. Математические модели обработки информации на основе результатов самосборки.
  9. http://bro-ids.org/
  10. http://www.ossec.net/
  11. http://www.cs.ucsb.edu/~seclab/projects/s tat/index.html
  12. http://www.prelude-ids.org/
  13. http://www.snort.org/