Обнаружение злоумышленной деятельности

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

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

Схема типичной системы обнаружения злоупотреблений показана на рис. 4.9.

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

Обнаружение злоумышленной деятельности - student2.ru

Рис. 4.9. Схема системы обнаружения злоупотреблений

Подходы к обнаружению атак

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

Статистический анализ

Данный метод находит применение, как правило, при обнаружении аномального поведения. Отклонение от среднего значения (т. е. дисперсия) профиля нормального поведения и дает сигнал администратору о том, что зафиксирована атака. Средние частоты и величины переменных вычисляются для каждого типа нормального поведения (например, количество входов в систему, количество отказов в доступе, время суток и т. д.). О возможных атаках сообщается, когда наблюдаемые значения выпадают из нормального диапазона, т. е. превышают заданный порог. Например, статистический анализ может помочь в обнаружении необычного события, заключающегося в том, что зарегистрированный пользователь, который никогда ранее не входил в сеть в нерабочее время (от 6 часов вечера до 8 часов утра), вдруг подключился к системе в 2 часа ночи.

Параметры, которые включаются в шаблон поведения субъекта системы, могут быть отнесены к следующим распространенным группам [Галатенко1-99]:

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

· категориальные параметры (имена файлов, команды пользователя, открытые порты и т. д.);

· параметры активности (число обращений к файлам или соединений за единицу времени и др.).

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

И хотя статистические методы достаточно эффективны и надежны для некоторых типов атак, широкого распространения в настоящее время они не получили из-за своих недостатков. Один из основных недостатков — это трудность задания порогового значения. Слишком большое пороговое значение приведет к тому, что многие атаки не будут обнаружены, а чересчур малое — обусловит большое число ложных срабатываний. Необходимо отметить, что в некоторых системах обнаружения атак (например, RealSecure Network Sensor) можно изменять соответствующие пороговые значения для некоторых атак. Однако выбор этих значений — очень нетривиальная задача, которая требует глубоких знаний контролируемой системы. Другие недостатки показаны в табл. 4.8).

Таблица 4.8. Достоинства и недостатки статистических

методов обнаружения атак

Достоинства Недостатки
Статистические системы могут обнаруживать неизвестные атаки Злоумышленник может обмануть систему обнаружения атак и она воспримет деятельность, соответствующую атаке, в качестве нормальной из-за постепенного изменения режима работы с течением времени и "приучения" системы к новому поведению
Статистические методы позволяют обнаруживать более сложные атаки, чем другие методы В статистических методах вероятность получения ложных сообщений об атаке является гораздо более высокой, чем при других методах
Статистические системы могут адаптироваться к изменению поведения пользователя Статистические методы не очень корректно обрабатывают изменения в деятельности пользователя (например, когда менеджер исполняет обязанности подчиненного в критической ситуации). Этот недостаток может представлять большую проблему в организациях, где изменения являются частыми. В результате могут появиться как ложные сообщения об опасности, так и ложные отрицательные сообщения (пропущенные атаки)
  Статистические методы не способны обнаружить атаки со стороны субъектов, для которых невозможно описать шаблон типичного поведения
  Статистические методы не справляются с обнаружением атак со стороны субъектов, которые с самого начала выполняют несанкционированные действия. Таким образом, шаблон обычного поведения для них будет включать только атаки
  Эти методы должны быть предварительно настроены (заданы пороговые значения для каждого параметра для каждого пользователя)
  Эти методы нечувствительны к порядку следования событий

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

Экспертные системы

В то время, как при обнаружении аномалий, как правило, ориентируются на мониторинг пороговой величины для определения достижения заранее установленного предела, методы обнаружения злоупотреблений часто используют подход на основе правил. Когда он применяется для выявления злоупотреблений, правила описывают сценарии атак. Механизм обнаружения идентифицирует потенциальные атаки в случае, если действия пользователя совпадают с установленными правилами. Наличие исчерпывающих баз данных таких правил является наиболее важным аспектом для экспертных систем обнаружения атак. Экспертная система — это система, которая в контексте обнаружения атак принимает решение о принадлежности того или иного события к классу атак на основании имеющихся правил. Эти правила (rules) основаны на опыте специалистов и хранятся в специальном хранилище, называемом базой знаний (knowledge base). В большинстве случаев правила экспертной системы опираются на так называемые сигнатуры, которые и ищутся в контролируемом пространстве.

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

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

Несмотря на то, что в большинстве случаев экспертные системы применяются для обнаружения злоупотреблений, есть методы, которые используют правила для обнаружения аномалий. Например, метод прогнозируемых порождаемых шаблонов (predictive pattern generation) заключается в том, что будущие события предсказываются на основе уже случившихся. Такое правило может быть записано в следующем виде:

Обнаружение злоумышленной деятельности - student2.ru .

Данное правило означает, что если событие П2 произошло после события П1, то с вероятностью 75% следующим событием будет событие П3, с вероятностью 20% – П4 и с вероятностью 5% – событие П5. Однако можно видеть, что этому подходу присущи те же недостатки, что и всем экспертным системам. Если в базе знаний не прописан какой-либо сценарий атаки, то и обнаружить его будет невозможно. И хотя этот недостаток может быть частично преодолен путем определения всех неизвестных событий как атак (с отрицательным эффектом, приводящим к проблеме false positive) или как обычных событий (приведет к проблеме false negative), в основном проблема не снимается.

Современные коммерческие системы обнаружения атак используют в своей работе примерно следующее соотношение статистических и экспертных методов – 30% и 70%. К сожалению, экспертные системы нуждаются в постоянном обновлении для того, чтобы оставаться актуальными. Требуемые обновления могут либо игнорироваться, либо применяться вручную (администратором). Как минимум, это приведет к экспертной системе с недостаточными (ослабленными) возможностями [Кеннеди1-99]. В худшем случае отсутствие сопровождения снизит степень защищенности всей сети, введя пользователей в заблуждение относительно уровня ее безопасности. Именно поэтому не рекомендуется использовать систему SATAN как основную систему анализа защищенности, поскольку последнее обновление ее базы знаний датировано 1995 годом.

Системы на основе правил не способны обнаруживать сценарии атак, которые происходят в течение продолжительных периодов времени. Любое разделение атаки либо с течением времени, либо среди нескольких, по-видимому не связанных между собой злоумышленников, также привносит трудности для обнаружения при помощи этих методов. Преимущества и слабые стороны экспертных систем при обнаружении нападений сведены в табл. 4.9.

Таблица 4.9. Достоинства и недостатки экспертных

систем при обнаружении атак

Достоинства Недостатки
Простота реализации Неспособность к обнаружению неизвестных атак
Скорость функционирования Небольшие изменения в атаке приводят к невозможности ее обнаружения
Отсутствие ложных тревог Система зависит от квалификации специалистов, заполняющих базу знаний

Нейросети

Поскольку представляемый здесь подход достаточно новый в области обнаружения атак, то ему я посвящу чуть больше места, чем предыдущим способам. Искусственная нейросеть (artificial neural network) состоит из совокупности элементов, которые взаимосвязаны друг с другом и трансформируют набор входных данных к набору желаемых выходных данных. Результат преобразования определяется характеристиками элементов и весами, соответствующими взаимосвязям между ними. Путем видоизменения соединении между узлами сети можно адаптироваться к желательным выходным результатам [Кеннеди1-99].

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

Нейросети могут быть разделены на контролируемые (по типу алгоритма обучения) и неконтролируемые. В контролируемом варианте сеть "узнает" желательный выход (известный правильный отклик сети на заданный образец) для каждого данного входного шаблона. Пример этой формы структуры сети — многоуровневый перцептрон (MLP). MLP — сильно взаимосвязанный слой нейронов, размещаемых во входном уровне, уровне вывода и одном или более "скрытых" уровнях. В процессе обучения каждый узел выполняет смещенную взвешенную сумму их вводов и передает этот уровень активации по функции преобразования на выход в наслоенной топологии прямого распространения. Сеть, таким образом, осуществляет простую обработку по форме модели ввода/вывода с весами и порогами, являющимися свободными параметрами модели. В процессе обучения MLP прогрессирует итерационно, проходя стадии так называемых "эпох", временной ряд появления сигнала. На каждой "эпохе" каждый конкретный вариант циклично обрабатывается по сети — выполняется сравнение целевых и текущих значений эффективных выходных параметров с оценкой ошибки, которая вместе с градиентом по топологии пространства ошибок используется для корректировки весовых значений. Результат преобразования определяется в соответствии с характеристиками узлов и весов по их взаимосвязям. Изменяя характер связи между узлами, можно адаптировать сеть к нужному отклику.

Неконтролируемые обучающиеся структуры настраиваются по шаблонам без требований иметь нужный отклик сети для каждого набора по входу. Самоорганизующиеся Карты (SOM) — одна из наиболее популярных форм неконтролируемых обучающихся структур нейросети. SOMs — сети, обеспечивающие "топологическое" отображение входного пространства в кластеры, в плоскую (двумерную) сетку нейронов. SOM строит кластеры так, чтобы любые два из них, находящиеся близко друг от друга в сетке, имели близко сопряженные векторы во входном пространстве.

В процессе обучения SOM представлена рядом векторов данных и итерационно проходит также через "эпохи". В каждой итерации SOM выбирает "выигрывающий" (побеждающий") нейрон, который является самым близким к входному вектору, и затем корректирует его, увеличивая функцию правдоподобия по входному сигналу. SOM-сети предназначены для задач классификации, но не для задач распознавания образов.

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

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

Искусственные нейросети также предлагаются для использования при обнаружении компьютерных вирусов. В некоторых работах и нейросети предлагались в качестве подходов для статистического анализа при обнаружении вирусов в компьютерных сетях. Архитектура нейросети, которая была выбрана, представляла самоорганизующуюся карту ("сети Кохонена"), которая использует один слой (уровень) нейронов для представления сведения от отдельного домена в форме геометрически организованной карты. Предлагаемая сеть была предназначена для изучения характеристик деятельности обычной системы и идентификации статистических отклонений от нормы, что может указывать на вирус.

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

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

Наши рекомендации