Построение системы активного отражения атак в корпоративных сетях

Тип работы:
Дипломная
Предмет:
Программирование


Узнать стоимость

Детальная информация о работе

Выдержка из работы

ДИПЛОМНАЯ РОБОТА

Построение системы активного отражения атак в корпоративных сетях

СОДЕРЖАНИЕ

ПЕРЕЧЕНЬ УСЛОВНЫХ ОБОЗНАЧЕНИЙ И СОКРАЩЕНИЙ

ВВЕДЕНИЕ

1 ОПИСАНИЕ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ И МОДЕЛЬ УГРОЗ

Описание информационных технологий

Модель угроз

Модель злоумышленника

Постановка задачи по защите от угроз

2 СРЕДСТВА ЗАЩИТЫ ПЕРИМЕТРА СЕТИ

Межсетевые экраны

Недостатки средств защиты периметра

2.3 Усовершенствованная схема защиты

3 СИСТЕМЫ ОБНАРУЖЕНИЯ ВТОРЖЕНИЙ

3.1 Классификация по уровням информационной системы

3.2 Архитектура систем обнаружения атак

3.3 Системы обнаружения атак на уровне узла

3.3.1 Уровень операционной системы

3.3.2 Уровень приложений и СУБД

3.3.3 Уровень сети

3.3.4 Механизм функционирования

3.3.5 Достоинства систем обнаружения атак на уровне узла

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

3.4.1 Механизм функционирования

3.4.2 Достоинства систем обнаружения атак на уровне сети

4 ПОДХОДЫ К АВТОМАТИЧЕСКОМУ ОТРАЖЕНИЮ АТАК ПРИ ПОМОЩИ ОРГАНИЗАЦИИ ВЗАИМОДЕЙСТВИЯ МЕЖДУ МСЭ И СОВ

4.1 IDS Snort

4.2 Возможности МСЭ IPTables

4.3 Подходы к организации совместного функционирования МСЭ и СОВ 39

5 РЕАЛИЗАЦИЯ СИСТЕМЫ ПРЕДОТВРАЩЕНИЯ ВТОРЖЕНИЙ НА БАЗЕ СОВ SNORT И МЭ IPTABLES

5.1 Описание защищаемой сети

5.2 Интеграция Snort_inline и IPTables

5.3 Описание реализации

6 Безопасность жизни и деятельности человека

6.1 Анализ условий труда в вычислительном отделе

6.2 Техника безопасности в помещении ВО

6.3 Производственная санитария и гигиена труда в помещении вычислительного отдела

6.4 Пожарная профилактика помещения

6.5 Защита окружающей среды

6.6 Гражданская оборона

7 Экономическая часть

7.1. Исходные данные и их обоснование

7.2 Планирование затрат

7.3 Расчет планируемой прибыли и финансовых результатов

ВЫВОДЫ

ПЕРЕЧЕНЬ ССЫЛОК

ПРИЛОЖЕНИЕ А. Файл конфигурации IDS Snort

ПРИЛОЖЕНИЕ Б. Протокол исходных данных к ТЭО

ПРИЛОЖЕНИЕ В. Справочник существующих систем обнаружения атак

ПРИЛОЖЕНИЕ Г. Копия доклада по теме дипломной работы

ПЕРЕЧЕНЬ УСЛОВНЫХ ОБОЗНАЧЕНИЙ И СОКРАЩЕНИЙ

IDS — Intrusion Detection System (система обнаружения вторжений)

IPS — Intrusion Prevention System (система предотвращения вторжений)

LIDS — Linux Intrusion Detection/Defence System

TCP/IP — Transmission Control Protocol / Internet Protocol

ИС — информационная система

МСЭ — межсетевой экран

НСД — несанкционированный доступ

ОС — операционная система

ПО — программное обеспечение

СОВ — система обнаружения вторжений

СУБД — система управления базами данных

ВВЕДЕНИЕ

В последнее время четко наблюдается курс на всеобщую глобализацию, создаются транснациональные корпорации, успех которых зависит от скорости обмена информацией между филиалами. Проблема скорости передачи информации практически решена, но здесь возникает проблема безопасности передаваемых данных. По статистике [1], утечка коммерческой информации в шестидесяти случаях из ста приводит к банкротству фирмы. Поэтому многие иностранные компании вкладывают до 40% средств от прибыли в информационную безопасность своего предприятия.

По некоторым данным, 92% всех взломов остаются неразглашенными [1], так как информация о взломе базы данных компании или о проникновении хакеров в сеть какого-либо банка может нанести огромный ущерб репутации пострадавшего предприятия. Поэтому статистику взломов корпоративных сетей подсчитать очень сложно. Не только на Украине, но и на Западе эта информация закрыта.

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

· проблематика создания программного обеспечения, свободного от ошибок

· проблематика пользователя с неограниченными правами;

· чем защищеннее система, тем неудобнее с ней работать.

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

Поскольку число и частота атак все время увеличиваются, становится очень важным идентифицировать атаки на раннем этапе их развития и своевременно отреагировать на них. В критических случаях вмешательство в атаку должно быть реализовано намного быстрее, чем сможет среагировать человек. Еще одна причина автоматизации процесса обнаружения атак заключается в том, что все чаще и чаще злоумышленники используют автоматизированные средства реализации атак. Так, например, был зарегистрирован факт осуществления 2000 попыток проникновения на сервер Internet из 500 мест в течении 8 часов (т.е. 4 атаки в минуту). В том случае автоматизированная система обнаружения атак помогла отследить источник атаки. В ее отсутствие задача обнаружения самой атаки и злоумышленника, ее реализующего, стала бы просто невозможной.

Следующее поколение систем обнаружения вторжений не только обнаруживают атаку, но и в автоматическом режиме противодействуют ей. В дипломной работе рассматривается система предотвращения вторжений в распределенные компьютерные сети построенная на базе системы обнаружения вторжений Snort и межсетевого экрана IPTables.

1 ОПИСАНИЕ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ И МОДЕЛЬ УГРОЗ

1.1 Описание информационных технологий

Информационная технология — это совокупность методов, технических и программных средств, обеспечивающая реализацию процессов создания, сбора, обработки, накопления, хранения, поиска и распространения информации, а также регламентированный порядок применения информационных процессов [4]. При рассмотрении проблемы безопасности информационных технологий необходимо исходить из того, что существуют две основные противоборствующие стороны — владелец ресурсов, требующих своей защиты, и злоумышленник, который имеет мотивы и возможность для незаконного использования ресурсов, что может привести к нанесению морального или материального ущерба владельцу ресурсов. Под ресурсом в широком смысле понимается все, что представляет ценность с точки зрения владельца ресурса и является объектом защиты. В узком смысле ресурс — это часть информационной системы. Рассмотрим такие виды ресурсов: оборудование (физические ресурсы); информационные ресурсы (все виды документации); программное обеспечение (утилиты, различные вспомогательные программы); сервис и поддерживающая инфраструктура (обслуживание телекоммуникационных средств и средств вычислительной техники, энергоснабжение и т. п.).

Злоумышленник выступает как источник угроз безопасности, при этом источником угроз может выступать не только физическое лицо, но аппаратное и программное обеспечение и т. п.

В дальнейшем под угрозой безопасности будим понимать совокупность условий, факторов, событий, действий и явлений, реализация которых может привести к нанесению ущерба владельцу ресурсов. Владелец ресурсов вынужден предпринимать меры, направленные на предотвращение или уменьшение степени этих опасностей. В качестве основных классов угроз рассматривают угрозы нарушения конфиденциальности, целостности и доступности [4]. Для эффективного противодействия злоумышленнику, владелец ресурсов должен составить как можно более полный перечень угроз, которые могут быть реализованы в конкретных условиях с учетом имеющихся слабостей в системе, которые делают возможной реализацию угрозы. Процесс определения угроз, уязвимостей, возможного ущерба на основе заданной модели нарушителя называется анализом риска. Полученные результаты позволяют сформулировать задачи по обеспечению безопасности, а затем требования по обеспечению ИТ-безопасности. Задача по обеспечению безопасности — это целевая постановка задача на противодействие выявленным угрозам безопасности и удовлетворение положениям политики безопасности. Требования ИТ-безопасности по сути включают в себя функциональные требования безопасности и требования адекватности (гарантии). Функциональные требования безопасности определяют набор функций безопасности, которые необходимо реализовать для решения задачи по обеспечению безопасности. Чтобы механизмы безопасности и средства защиты, реализующие функции безопасности, можно было признать эффективными, требуется уверенность в правильности их выбора и надежности функционирования. Такая уверенность достигается путем предъявления и реализации требований адекватности.

Основными объектами применения требований безопасности являются ИТ-продукуты и ИТ-системы. Под продуктом информационных технологий понимается поставляемое потребителю готовое к использованию аппаратное, программное или программно-аппаратное средство обработки информации. ИТ-система представляет собой организационно-техническую систему. Типичная система представлена на рисунке 1.1. Она включает в себя: совокупность технических средств передачи и обработки информации (ИТ-продукт); информационные и иные ресурсы; обслуживающий персонал и пользователей, объединенных по организационно-структурному, технологическому, целевому и другим принципам для осуществления информационных процессов.

Рисунок 1.1 ИТ-система

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

1.2 Модель угроз

Свойства информации [2]:

— конфиденциальность — свойство информации, которое заключается в том, что информация не может быть получена неавторизованным пользователем и/или процессом;

— доступность — свойство ресурса системы, которое заключается в том, что пользователь и/или процесс, которые имеют соответствующие полномочия, могут использовать ресурс соответственно правилам, установленных политикой безопасности, не ожидая дольше заданного (малого) промежутка времени, то есть когда он находится в виде, необходимом пользователю, в месте, необходимом пользователю, и в то время, когда он ему необходим;

— целостность — свойство информации, которое заключается в том, что информация не может быть модифицирована неавторизованным пользователем и/или процессом;

— аутентичность — гарантия того, что источником информации является именно то лицо, которое заявлено как ее автор; нарушение этой категории также называется фальсификацией, но уже автора сообщения;

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

Модель угроз включает в себя перечень возможных угроз, которые могут быть реализованы злоумышленником. В результате анализе задания были выявлены следующие угрозы:

— нарушение конфиденциальности;

— нарушение целостности;

— нарушение доступности;

— нарушение аутентичности;

— нарушение наблюдаемости.

Угроза нарушения конфиденциальности:

— хищение информации;

— незаконное копирование и распространение;

— утрата информации.

Данные угрозы реализуются следующим образом:

— перехват данных в сети (sniffer);

— кража информации, хранящейся на сервере;

— кража информации, хранящейся на компьютере-клиенте;

— получение информации о конфигурации сети (сканирование портов и т. п.).

Угроза нарушения целостности:

— модификация информации;

— отрицание подлинности;

— навязывание ложной информации.

Данные угрозы реализуются следующим образом:

— изменение пользовательских данных;

— внедрение «троянских коней»;

— изменение потока сообщений на пути их передачи.

Угроза нарушения доступности:

— блокирование доступа.

Данные угрозы реализуются следующим образом:

— получение прав root злоумышленником;

— проведение всевозможных DoS-атак.

Угроза нарушения наблюдаемости реализуется таким образом:

— захват журнала аудита и изменение в нем информации.

Угроза нарушения аутентичности реализуется таким образом:

— попытки нарушителя выдать себя за легального пользователя;

— фальсификация данных.

1.3 Модель злоумышленника

Согласно [3], в зависимости от запланированных условий эксплуатации средств КЗИ и ценности информации, которая защищается, определяются четыре уровня возможностей злоумышленника:

— нулевой уровень — случайное неумышленное ознакомление с содержанием информации (случайное прослушивание в канале);

— первый уровень — злоумышленник имеет ограниченные средства и самостоятельно создает средства и методы атак на средства КЗИ, а также информационно-телекоммуникационные системы с использованием широко распространенных программных средств и электронно-вычислительной техники;

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

— третий уровень — нарушитель имеет научно-технический ресурс, который приравнивается к научно-техническому потенциалу специальной службы экономически развитой страны.

В рассматриваемой нами корпоративной сети у злоумышленника есть нулевой, первый и второй уровень возможностей.

1. 4 Постановка задачи по защите от угроз

Как видно из вышеизложенного, основными угрозами в нашей системе являются нарушение конфиденциальности, целостности, доступности, аутентичности и наблюдаемости. Проанализировав модель угроз, мы выявили, что злоумышленник обладает нулевым, первым и вторым возможностей. В данном случае, для избежания вышеперечисленных угроз, необходимо использовать комплексный подход к обеспечению безопасности. Для защиты информации в корпоративной сети разработана система предотвращения вторжений на базе системы обнаружения вторжений Snort и межсетевого экрана IPTables позволяющая блокировать сетевые атаки (атаки на Telnet, FTP, DNS, атаки типа DoS/DDoS). Существенно повысить уровень безопасности и предотвратить проникновение в сеть злоумышленника нулевого, первого и второго уровня.

2 СРЕДСТВА ЗАЩИТЫ ПЕРИМЕТРА СЕТИ

2. 1 Межсетевые экраны

Существующие механизмы защиты, реализованные в межсетевых экранах (firewall), серверах аутентификации, системах разграничения доступа и т. д., работают только на втором этапе осуществления атаки (первый, подготовительный, этап заключается в поиске предпосылок для осуществления той или иной атаки. На данном этапе ищутся уязвимости, использование которых делает возможной в принципе реализацию атаки, которая и составляет второй этап. На третьем этапе атака завершается, «заметаются следы» и т. д. При этом первый и третий этапы сами по себе могут являться атаками. Например, поиск нарушителем уязвимостей при помощи сканеров безопасности, например, Nmap, сам по себе считается атакой). То есть они являются средствами блокирующими, а не упреждающими атаки. В большинстве случаев они защищают от атак, которые уже находятся в процессе осуществления. И даже если эти механизмы смогли предотвратить ту или иную атаку, то намного более эффективным было бы упреждение атак, т. е. устранение самих предпосылок реализации вторжений. Комплексная система обеспечения информационной безопасности должна работать на всех трех этапах осуществления атаки. И обеспечивать приемлемый уровень защиты на третьем, завершающем, этапе не менее важно, чем на первых двух. Только в этом случае можно реально оценить ущерб от «успешной» атаки, а также разработать меры по устранению повторных попыток реализовать аналогичную атаку.

Даже если наряду с традиционными механизмами защиты используются средства поиска уязвимостей, которые своевременно обнаруживают и рекомендуют меры по устранению «слабых мест» в системе защиты, то это еще не доказывает вашей защищенности. Существует ряд факторов, которые необходимо учитывать при использовании межсетевых экранов, систем аутентификации, систем разграничения доступа и т. д. Эти факторы характеризую не слабости упомянутых технологий, а особенности их архитектуры. Большинство компьютерных защитных систем построено на классических моделях разграничения доступа, разработанных в 70--80-х годах прошлого века в военных ведомствах. Согласно этим моделям субъекту (пользователю, программе, процессу или сетевому пакету) разрешается или запрещается доступ к какому-либо объекту (например, файлу или узлу сети) при предъявлении некоторого уникального, присущего только этому субъекту, элемента. В большинстве случаев этот элемент -- пароль. Для сетевого пакета таким элементом могут быть адреса или флаги, находящиеся в заголовке пакета, а также некоторые другие параметры.

Самым слабым звеном описанной схемы является уникальность элемента. Если нарушитель каким-либо образом получил этот самый элемент или подменил его и предъявил системе защиты, то она воспринимает его, как «своего», и разрешает действовать в рамках полномочий тоге субъекта, секретным элементом которого несанкционированно воспользовались. При современных темпах развития технологий получить доступ к самому секретному ключу не составляет большого труда. Его можно «подслушать» при передаче по сети при помощи анализаторов протоколов (sniffer). Его можно подобрать при помощи специальных программ.

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

2.2 Недостатки средств защиты периметра

Межсетевой экран (МСЭ) -- это устройство, для защиты внутренней сети от несанкционированного доступа извне [5]. То есть при установке межсетевого экрана первым делом запрещаются все соединения между защищаемой и открытой сетями. Затем администратор добавляет специфичные правила, которые позволяют определенному трафику проходить через МСЭ. Однако не стоит забывать, что МСЭ -- это просто системы, основанные на правилах, которые разрешают или запрещают прохождение трафика через них. Даже МСЭ использующие технологию «stateful inspection», не позволяют с точностью сказать, присутствует ли атака в трафике или нет. Они могут лишь уведомить, соответствует ли трафик правилу.

Атака через туннели в межсетевом экране

Атаки через «туннели» возникают вследствие наличия соответствующих свойств у многих сетевых протоколов. МСЭ фильтрует сетевой трафик и принимает решения о пропуске или блокировании пакетов, опираясь на информацию об используемом сетевом протоколе. Обычно правила предусматривают соответствующую проверку с целью определения того, задействован или нет конкретный протокол. Например, если на МСЭ разрешены 25-й и 80-й порты, то тем самым разрешается пропуск во внутреннюю сеть почтового (SMTP) и Web- (HTTP) трафика. Именно этот принцип обработки и используется квалифицированными злоумышленниками. Вся несанкционированная деятельность осуществляется в рамках разрешенного протокола, создавая тем самым в нем туннель, по которому злоумышленник и реализует атаку (рисунок 2. 1).

Рисунок 2.1 Атака через туннели в межсетевом экране.

Атаки вследствие неправильной конфигурации межсетевого экрана

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

Атаки, осуществляемые в обход межсетевого экрана

Нет необходимости пытаться проникнуть через правильно настроенный МСЭ, если в локальной сети есть модемы (рисунок 2. 3). Как правило, модемные соединения никак не защищаются.

Рисунок 2.2 Атака в следствии неправильной конфигурации МСЭ

Рисунок 2.3 Атака в обход межсетевого экрана (через модем)

Атаки, осуществляемые из доверенных узлов и сетей

Большинство организаций используют шифрование для защиты файлов и внешних сетевых соединений, интерес злоумышленника будет направлен к тем местам в сети, где информация, представляющая для него интерес, вероятнее всего не является защищенной, т. е. к узлам или сетям, с которыми установлены доверительные отношения. И даже в случае создания VPN-соединений между сетью, защищаемой при помощи МСЭ, и доверенной сетью злоумышленник сможет реализовать атаки. Эффективность таких атак будет высокой т. к. требования по безопасности к доверенным узлам и сетям намного ниже всех остальных узлов (рисунок 2. 4).

Рисунок 2.4 Атака через доверенный узел

Атаки на сам межсетевой экран

Межсетевые экраны часто сами становятся объектами атаки. Выведя из строя МСЭ, злоумышленник получает доступ к ресурсам системы (рисунок 2. 5).

Рисунок 2.5 Атака на сам МСЭ

2.3 Усовершенствованная схема защиты

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

3 СИСТЕМЫ ОБНАРУЖЕНИЯ ВТОРЖЕНИЙ

3.1 Классификация по уровням информационной системы

Системы обнаружения атак можно классифицировать по уровням информационной инфраструктуры, на которых обнаруживаются нарушения политики безопасности [4].

Уровень приложений и СУБД

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

Достоинства:

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

- обнаружение атак, пропускаемых средствами, функционирующими на другом уровне;

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

Недостатки:

— уязвимости прикладного уровня могут подорвать доверие к обнаружению атак на данном уровне;

— атаки, проводимые на нижних уровнях (сети и ОС), остаются за пределами рассмотрения данных средств.

Уровень ОС

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

Достоинства:

— системы данного класса могут контролировать доступ к информации в виде «кто получил доступ и к чему»;

— возможность отображения аномальной деятельности конкретного пользователя для любого приложения;

- отслеживание изменений режимов работы, связанных со злоупотреблениями;

— возможность работы в сетевом окружении, в котором используется шифрование;

— способность эффективно работать в коммутируемых сетях;

— позволяет контролировать конкретный узел и «не расплываться» на другие;

— 100% подтверждение «успешности» или «неудачности» атаки;

— обнаружение атак, пропускаемых средствами, функционирующими на другом уровне;

— возможность проведения автономного анализа.

Недостатки:

— уязвимости прикладного уровня могут подорвать доверие к обнаружению атак на данном уровне;

— атаки, проводимые на нижних или более высоких уровнях, остаются за пределами рассмотрения данных средств;

— запуск механизмов аудита для фиксирования всех действий в журналах регистрации может потребовать выделения дополнительных ресурсов;

— когда журналы регистрации используются в качестве источников данных, они могут довольно большого дискового пространства для хранения;

— эти методы зависят от конкретной платформы;

— расходы на эксплуатацию и управление, связанные со средствами обнаружения атак уровня ОС, как правило, значительно выше, чем при других подходах;

— средства данного класса неприменимы для обнаружения атак на маршрутизаторы и другое сетевое оборудование;

— при недостатке данных эти системы могут «пропускать» какие-либо атаки.

Уровень сети

Системы обнаружения атак уровня сети собирают информацию из самой сети, т. е. из сетевого трафика. Выполняться эти системы могут на обычных компьютерах, на специализированных компьютерах (Cisco IDS или AirDefense Server Appliance) или интегрируются в маршрутизаторы или коммутаторы (например, Cisco IOS Firewall Feature Set или Cisco IDS blade, известная также как Cisco Catalyst 6500 IDS Module). В первых двух случаях анализируемая информация собирается посредством захвата и анализа пакетов, при этом обращение к сетевым интерфейсам осуществляется в беспорядочном (promiscuous) режиме.

Достоинства:

— данные поступают без каких-либо специальных требований для механизмов аудита;

— использование этих систем не оказывает влияния на существующие источники данных;

- системы данного класса могут контролировать и обнаруживать следы атаки типа «отказ в обслуживании», направленные на выведения узлов из строя;

— системы данного класса могут контролировать одновременно большое число узлов сети;

— низкая стоимость эксплуатации;

— трудность «заметания следов» для злоумышленника;

— обнаружение и реагирование на атаки в реальном масштабе времени;

— обнаружение подозрительных событий;

— обнаружение атак, пропускаемых средствами, функционирующими на других уровнях;

— независимость от используемых в организации операционных систем и прикладного программного обеспечения.

Недостатки:

— атаки, реализуемые на более высоких уровнях, остаются за пределами рассмотрения данных средств;

— системы данного класса неприменимы в сетях, использующих канальное и прикладное шифрование;

— системы данного класса неэффективно работают в коммутируемых сетях;

— системы данного класса существенно зависят от конкретных сетевых протоколов;

— современные подходы к мониторингу на сетевом уровне не могут работать на высоких скоростях (например, Gigabit Ethernet).

3.2 Архитектура систем обнаружения атак

Все системы обнаружения атак можно разделить на две категории -- автономные и клиент-серверные системы [6]. Первые выполняют сбор информации, ее анализ и реагирование на одном компьютере. Системы второй категории строятся по иному принципу. В наиболее критичных точках корпоративной сети устанавливаются агенты системы обнаружения атак (модули слежения, сенсоры), которые отвечают за выявление атак и реагирование на них. Все управление осуществляется с центральной консоли, на которую также передаются все сигналы тревоги.

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

Хранилище данных является обычным журналом регистрации, в котором содержится вся информация о зафиксированных атаках и подозрительных событиях. Этот журнал регистрации может иметь формат обычного текстового файла (как, например, в системе Snort) или размещаться в базе данных. База данных может быть как локальной (например, MS Access в системе eTrust IDS), так и клиент-серверной (как Oracle в системе Cisco). База знаний содержит информацию, на основании которой принимается решение о том, зафиксирована ли атака в записях выбранного источника или нет.

Модуль работы с источником информации

Модуль управления компонентами

Хранилище данных

Модуль обнаружения атак

База знаний

Модуль реагирования

Графический интерфейс

Рисунок 3.1 Архитектура системы обнаружения атак

В зависимости от используемых методов анализа эта база знаний может хранить сигнатуры атак или профили пользователей и т. д. Сопоставление правил базы знаний с записями выбранного источника информации выполняет модуль обнаружения атак, который на основании полученного результата может отдавать команды модулю реагирования. Графический интерфейс облекает всю работу системы обнаружения атак в удобную для администратора форму. При помощи графического интерфейса осуществляется как управление, так и сбор информации от всех компонентов системы обнаружения атак. В некоторых системах обнаружения атак (особенно реализованных в ОС UNIX) графический интерфейс отсутствует (например, в системе Snort). В том случае, если система обнаружения атак построена как автономный агент, то все указанные модули находятся на одном компьютере. А если система разработана с учетом архитектуры «клиент-сервер», то в ней выделяются два основных уровня -- сенсор (sensor), также называемый агентом (agent) или модулем слежения (engine), и консоль (console). Сенсор отвечает за обнаружение и реагирование на атаки, а также за передачу сведений об обнаруженных несанкционированных действиях на консоль управления (рисунок 3. 2).

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

Модуль работы с источником информации

Модуль управления компонентами

Хранилище данных

Модуль обнаружения атак

База знаний

Модуль реагирования

Рисунок 3.2 Архитектура сенсора системы обнаружения атак

Консоль предназначена для управления сенсорами и сбора информации от всех сенсоров, подключенных к ней (рисунок 3. 3).

Модуль управления компонентами

Хранилище данных

Графический интерфейс

Рисунок 3.3 Архитектура консоли системы обнаружения атак

Обычно одна консоль может координировать неограниченное число сенсоров, так же как и сенсор может посылать информацию сразу на несколько консолей, реализуя тем самым резервирование консолей. По такому принципу построены системы RealSecure Network Sensor и Cisco IDS.

Для того чтобы две консоли одновременно не смогли изменять настройки удаленного сенсора, одной из них присваивается специальный статус. Только консоли, имеющей указанный статус, предоставлено право на изменение конфигурации сенсоров и выполнение над ними других операций. В основе данного механизма лежат принципы, похожие на заложенные в межсетевой экран Check Point Firewall, согласно которым в один момент времени только один администратор может подключиться к межсетевому экрану с правами Read/Write. Все остальные администраторы работают исключительно в режиме Read. В хранилище данных содержится информация, полученная от всех сенсоров Можно заметить, что на консоли отсутствуют модули, отвечающие за получение данных из источников информации, их анализ и реагирование на атаки. Все перечисленные функции возложены на сенсоры. Сделано это с той целью, чтобы в случае выхода из строя консоли или канала связи между консолью и сенсором функционирование последних никак бы не нарушалось. В этом случае сенсоры продолжают работать в автономном режиме, по-прежнему обнаруживая атаки и реагируя на них. Как только соединение с консолью восстанавливается, сенсоры посылают ей всю накопленную информацию. Однако этот очевидный факт понимается далеко не всеми разработчиками средств обнаружения атак.

3.3 Системы обнаружения атак на уровне узла

Эти системы обнаружения атак выполняются на защищаемом узле и контролируют различные события безопасности [7]. В качестве исходных данных указанные системы чаще всего оперируют регистрационными журналами операционной системы (например, Intruder Alert), приложений (например, RealSecure Server Sensor) или систем управления базами данных. Таким образом, эти системы зависят от содержимого регистрационных журналов, и в случае их подмены злоумышленником или неполноты собранных данных система не сможет достоверно определить нападение. Менее распространенные системы обнаружения атак используют модель обнаружения аномального поведения (например, EMERALD), которая статистически сравнивает текущий сеанс пользователя (выполняемые команды и другие параметры) с эталонным профилем нормального поведения. Для определения отклонения между нормальным и аномальным поведением пользователя привлекаются достаточно сложные алгоритмы. Наряду с такой моделью, существуют системы обнаружения, которые оперируют сетевым трафиком, получаемым и отправляемым с конкретного узла.

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

3.3.1 Уровень операционной системы

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

— время работы пользователя;

— количество, тип и названия создаваемых файлов;

— число, тип и названия файлов, к которым осуществляется доступ;

— характер регистрации в системе и выход из нее;

— запуск определенных приложений;

— изменение политики безопасности (создание нового пользователя или группы, смена пароля).

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

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

Некоторые ОС (такие как FreeBSD или Linux) поставляются в исходных текстах, и разработчики систем обнаружения атак могут модифицировать ядро ОС для добавления возможности обнаружения несанкционированных действий. Примером таких дополнений могут служить OpenWall или LIDS. Эти системы встраиваются в ядро ОС Linux, расширяя имеющиеся защитные механизмы. Так, вторая из них -- LIDS может обнаруживать факт установки анализатора протоколов или изменение правил встроенного межсетевого экрана и блокировать эти действия.

3.3.2 Уровень приложений и СУБД

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

3.3.3 Уровень сети

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

3.3.4 Механизм функционирования

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

3.3.5 Достоинства систем обнаружения атак на уровне узла

Подтверждение факта атаки

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

Контроль деятельности конкретного узла

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

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

Обнаружение атак, не обнаруживаемых другими средствами

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

Работа в коммутированных сетях и сетях с канальным шифрованием

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

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

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

Обнаружение и реагирование почти в реальном масштабе времени

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

Низкая цена

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

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

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

Основное ограничение первых разработанных систем обнаружения атак в том, что доступ к регистрационным журналам осуществлялся только на уровне ОС, СУБД и приложений. Развитие сетей, требующих контроля на всех уровнях инфраструктуры информационной системы, привело к созданию так называемых Kernel-based и Network-based систем обнаружения атак, т. е. работающих на уровне ядра ОС и уровне сети.

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

3.4.1 Механизм функционирования

Как показывает анализ имеющихся сегодня систем обнаружения атак на уровне сети, все они используют в качестве источника данных сетевой трафик, который исследуется на наличие в нем признаков атак. Также возможен анализ журналов регистрации сетевого программно-аппаратного обеспечения (например, маршрутизатора, межсетевого экрана или анализатора протоколов), фиксирующего весь обрабатываемый им трафик. В идеале эти средства должны работать в любых сетях, но практически средства обнаружения атак находят нарушения политики безопасности в сетях с разделяемой средой передачи данных (shared media), в которых одна линия связи используется попеременно несколькими компьютерами. То есть данные системы функционируют в технологиях Ethernet (и, следовательно, Fast Ethernet и Gigabit Ethernet), Token Ring, FDDI. Это связано с тем, что в таких сетях один компьютер может получить доступ ко всем пакетам, передаваемым в сегменте сети. Указанное качество существенно удешевляет системы обнаружения атак, т. к. практически независимо от числа узлов в сегменте сети трафик между ними может контролироваться всего одной системой обнаружения атак. В случае индивидуальных линий связи между узлами (например, ATM) необходимо устанавливать систему обнаружения атак между каждой парой взаимодействующих узлов, что нецелесообразно по финансовым соображениям. Именно поэтому существующие реализации сетевых систем обнаружения атак поддерживают в основном сетевые технологии с разделяемой средой передачи данных. Хотя существуют решения и для ATM, например, Dragon Sensor.

Механизм функционирования системы обнаружения атак на уровне сети состоит из 4-х основных частей, отвечающих за:

— захват пакетов;

— фильтрацию и сборку фрагментов;

— распознавание атак;

— реагирование на них.

Если система обнаружения атак реализуется в сетевом оборудовании (например, Cisco Catalyst 6500 IDS Module (в коммутаторе) или Cisco IOS Firewall Feature Set (в маршрутизаторе)), то место сетевого адаптера занимает один из компонентов сетевого оборудования. Если система обнаружения атак построена по принципу анализа журналов регистрации сетевого оборудования, то в этой роли выступает журнал регистрации (например, созданный программой TCPdump). В зависимости от того, откуда берутся данные для анализа (с сетевой карты, с компонентов коммутатора или из журнала регистрации), составляющая системы, отвечающая за захват пакетов, может быть реализована по-разному, но все остальные части (фильтрация, распознавание и реагирование) остаются без изменения.

Программное обеспечение системы обнаружения атак разделяется на две части:

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

— программное обеспечение, выполняющее декодирование и анализ прото- колов, с которыми работает сетевой адаптер, а также реализующее соот- ветствующую логику работы системы при обнаружении атак и реагиро- вании на них.

Захват пакетов

Первый этап -- захват пакетов сетевого трафика (packet capture). Для этого используются функционирующее под управлением обычной операционной системы специализированное программное обеспечение, захватывающее сетевой трафик с обычной сетевой карты. По такому принципу построены системы NetPowler, Snort и др. В некоторых случаях операционная система «урезается» до минимума, чтобы устранить все лишнее и мешающее работе системы обнаружения атак. В обоих случаях захват сетевого трафика осуществляется с простой сетевой карты, которая может работать в двух режимах:

— в обычном режиме, в котором сетевая карта обрабатывает только пакеты, предназначенные именно ей;

— в «смешанном» или «беспорядочном» (promiscuous) режиме, когда сетевая карта обрабатывает все пакеты, передаваемые в сетевом сегменте.

В том случае, если система обнаружения реализуется в сетевом оборудовании, то трафик может быть получен:

— с объединительной платы (backplane) сетевого оборудования (по такому принципу работает Cisco Catalyst 6500 IDS Module);

— от программного обеспечения сетевого оборудования (как, например, в Cisco IOS Firewall Feature Set).

Фильтрация

Несмотря на то, что системы обнаружения атак получают доступ ко всем захваченным сетевым пакетам, не все из них подлежат обработке. Например, пакеты не поддерживаемых системой обнаружения атак протоколов не могут быть ею обработаны. Другим примером являются фрагментированные пакеты, которые не анализируются некоторыми из систем обнаружения атак. Фильтрующий модуль отвечает за то, чтобы отбросить те пакеты, которые должны игнорироваться системой обнаружения атак (например, IPX-трафик).

Существует два типа фильтров:

— системные -- позволяют отсеивать или, наоборот, контролировать сетевой трафик на основе данных о распознаваемых сигнатурах. Например, если включено обнаружение атаки ColdFusion, то фильтрующий модуль будет отслеживать HTTP-трафик на 80-м ТСР-порте;

— пользовательские -- отклоняют или, наоборот, контролируют трафик, соответствующий определенным правилам, установленным администратором системы обнаружения атак. Например, если в контролируемой сети функционируют узлы под управлением только ОС Windows, то не имеет смысла искать в этой сети признаки атаки Tribe Flood Network, которая присуща исключительно ОС Linux или Solaris.

Распознавание атак

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

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

Данные системы функционируют по следующему алгоритму:

В захваченном трафике выбирается один сетевой кадр, в котором буду искаться различные сигнатуры.

Начиная с самого первого байта сетевого кадра, выделяется группа байтов той же самой длины, что и рассматриваемая сигнатура. Затем две группы байтов (сигнатура и фрагмент пакета) сравниваются.

Если две группы байтов тождественны, то атака обнаружена.

Если группы неодинаковы, то происходит продвижение на один байт вперед в последовательности байтов сетевого кадра, и процесс сравнения повторяется до тех пор, пока не наступит конец последовательности

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

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

Достоинства данного метода (получившего название pattern matching):

— простота реализации;

— высокая скорость работы;

— высокая точность обнаружения;

— не зависит от используемого протокола.

Недостатки:

— высокий процент ложных срабатываний;

— не работает при незначительном изменении атаки;

— неприменим к потоковому трафику.

Сетевой трафик -- это больше, чем совокупность отдельных пакетов. Поэтому системы, основанные на анализе протокола в целом, ориентируются на контекст сетевой сессии, тем самым приводя к уменьшению ложных срабатываний. Они способны провести границу между вполне безобидными и опасными событиями, например, найти различия между передаваемым по электронной почте бюллетенем по безопасности, в котором встречается текстовый фрагмент «GET /CGI-bin/phf, и HTTP-запросом «GET /CGI-bin/phf». Анализ сессии может быть разделен на два метода. Первый из них получил название stateful pattern matching, т. е. сравнение с шаблоном с контролем состояния. Системы, использующие эту технологию, не только проверяют каждый пакет, но и следят за порядком их следования. Использование контроля состояния позволяет нам обнаружить эту атаку, даже если она разнесена по 10 пакетам. Достоинства данного метода:

ПоказатьСвернуть
Заполнить форму текущей работой