Структура и функционирование СОВ Snort

 

СОДЕРЖАНИЕ


Введение

Глава 1 Общие сведения о системах обнаружения вторжений и их назначение

.1 Информационные угрозы

.2 Классификация сетевых атак

.3 Понятие о системах обнаружения вторжений

.4 История разработок систем обнаружения вторжений

.5 Классификация систем обнаружения вторжений

.5.1 Способы мониторинга системы

.5.2 Способы анализа системы

.5.3 Ответные действия системы

.6 Существующие на рынке системы обнаружения вторжений

Глава 2 Структура и функционирование СОВ Snort

.1 Общий принцип функционирования СОВ

.2 Архитектура СОВ Snort

Глава 3 Практическое применение системы обнаружения вторжений Snort

.1 Подготовка среды для проведения экспериментов

.2 Режимы запуска Snort

.3 Конфигурирование системы обнаружения вторжений Snort

.4 Сигнатурные правила

.5 Аномальные правила

Заключение

Список используемой литературы

Приложение 1

Приложение 2



Введение


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

. внутри локальной сети сотрудниками намеренно или непреднамеренно;

. стороннее лицо проникнет в локальную сеть извне;

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

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

Данная дипломная работа является актуальной, так как:

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

.Рассматриваемая система обнаружения вторжения является популярной и её применение должно быть исследовано;

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

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

Для достижения поставленной цели, необходимо выполнить следующие задачи:

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

. Смоделировать корпоративную сеть

. Настроить и подготовить к работе систему обнаружения вторжений

. Выполнить натурные эксперименты, т.е. моделирование вторжений для проверки работоспособности системы обнаружения вторжений


Глава 1 Общие сведения о системах обнаружения вторжений и их назначение


1.1 Информационные угрозы


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

Такими действиями являются (см. рис. 1.1.1.):

.Ознакомление с конфиденциальной информацией различными путями и способами без нарушения ее целостности;

2.Модификация информации в криминальных целях как частичное или значительное изменение состава и содержания сведений;

3.Разрушение (уничтожение) информации как акт вандализма с целью прямого нанесения материального ущерба.


Рис. 1.1.1. Информационная безопасность


В конечном итоге противоправные действия с информацией приводят к нарушению ее (рис. 1.1.2.):

.Конфиденциальности;

.Полноты;

.Достоверности;

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


Рис. 1.1.2. Угрозы информации


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

С учетом этого угрозы могут быть квалифицированы по следующим кластерам (рис. 1.1.3.):

  1. По величине принесенного ущерба;
  2. По вероятности возникновения;
  3. По причинам появления;
  4. По характеру нанесенного ущерба;
  5. По характеру воздействия;
  6. По отношению к объекту.

Рис. 1.1.3. Классификация угроз


Источниками внешних угроз являются:

.Недобросовестные конкуренты;

.Преступные группировки и формирования;

.Отдельные лица и организации административно-управленческого аппарата.

Источниками внутренних угроз могут быть:

.Администрация предприятия;

.Персонал;

3.Технические средства обеспечения производственной и трудовой деятельности [1].

Информационные угрозы реализуются в виде сетевых атак, поэтому перейдём к их рассмотрению.


1.2 Классификация сетевых атак


1.Перехват пакетов.

Сниффер пакетов (от англ. sniff - нюхать) представляет собой прикладную программу, которая использует сетевой интерфейс, работающий в «неразборчивом» режиме (от англ. promiscuous mode). В этом режиме сетевой адаптер позволяет принимать все пакеты, полученные по физическим каналам, независимо от того кому они адресованы и отправляет приложению для обработки. В настоящее время снифферы используются в сетях на вполне законном основании. Они используются для диагностики неисправностей и анализа трафика. Однако из-за того, что некоторые сетевые приложения передают данные в текстовом формате (Telnet, FTP, SMTP, POP3 и т.д.), с помощью сниффера можно узнать полезную, а иногда и конфиденциальную информацию (например, имена пользователей и пароли).

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

2.IP-спуфинг.

IP-спуфинг (от англ. spoof - мистификация) происходит в том случае, когда злоумышленник, находящийся внутри корпорации или вне ее, выдает себя за санкционированного пользователя. Этого можно достичь двумя способами:

а) использование IP-адреса, находящегося в пределах диапазона санкционированных IP-адресов;

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

Атаки IP-спуфинга часто являются начальным этапом для прочих атак. Классический пример - атака DoS, которая начинается с чужого адреса, скрывающего истинную личность злоумышленника.

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

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

.Отказ в обслуживании.

Отказ в обслуживании (от англ. Denial of Service, сокращенно DoS), без сомнения, является наиболее известной формой сетевых атак. Кроме того, против атак такого типа труднее всего создать стопроцентную защиту. Для организации DoS требуется минимум знаний и умений. Тем не менее именно простота реализации и огромные масштабы причиняемого вреда привлекают злоумышленников к DoS-атакам.

Данная атака существенно отличается от других видов атак. Злоумышленники не имеют своей целью получение доступа к сети, а также получение из этой сети какой-либо информации, но атака DoS делает вашу сеть недоступной для обычного использования за счет превышения допустимых пределов функционирования сети, операционной системы или приложения. В случае использования некоторых серверных приложений (таких как Web-сервер или FTP-сервер) атаки DoS могут заключаться в том, чтобы занять все соединения, доступные для этих приложений, и держать их в занятом состоянии, не допуская обслуживания рядовых пользователей. В ходе атак DoS могут использоваться обычные интернет-протоколы, такие как TCP и ICMP.

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

.Парольные атаки.

Злоумышленники могут проводить парольные атаки с помощью целого ряда методов, таких как простой перебор (brute force attack), троянский конь, IP-спуфинг и сниффинг пакетов. Не смотря на то, что логин и пароль зачастую можно получить при помощи IP-спуфинга и сниффинга пакетов, злоумышленники нередко пытаются подобрать пароль и логин, используя для этого многочисленные попытки доступа. Такой подход носит название простого перебора.

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

.Атаки типа «человек посередине».

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

.Атаки на уровне приложений.

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

Главная проблема при атаках на уровне приложений заключается в том, что злоумышленники часто пользуются портами, которым разрешен проход через межсетевой экран (firewall). К примеру, злоумышленник, эксплуатирующий известную слабость Web-сервера, часто использует в ходе атаки ТСР порт 80. Поскольку web-сервер предоставляет пользователям Web-страницы, то межсетевой экран должен обеспечивать доступ к этому порту. С точки зрения межсетевого экрана атака рассматривается как стандартный трафик для порта 80.

.Сетевая разведка.

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

.Злоупотребление доверием.

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

.Переадресация портов.

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

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

Несанкционированный доступ не может быть выделен в отдельный тип атаки, поскольку большинство сетевых атак проводятся именно ради получения несанкционированного доступа. Чтобы подобрать логин Тelnet, злоумышленник должен сначала получить подсказку Тelnet на своей системе. После подключения к порту Тelnet на экране появляется сообщение «authorization required to use this resource» («Для пользования этим ресурсом нужна авторизация»). Если после этого злоумышленник продолжит попытки доступа, они будут считаться несанкционированными. Источник таких атак может находиться как внутри сети, так и снаружи.

.Вирусы и приложения типа «троянский конь»

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

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

Из класса сетевых атак можно выделить атаки, которые вызывают подозрительное, аномальное поведение сетевого трафика в корпоративной сети. Это так называемые сетевые аномалии. Сетевые аномалии можно также проклассифицировать. Их можно разделить на две основные группы: программно-аппаратные отклонения и проблемы безопасности (Рис. 1.2.1.)


Рис. 1.2.1.


. Программно-аппаратные отклонения.

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

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

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

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

. Нарушения безопасности.

Сетевое сканирование (network scan) производится с целью анализа топологии сети и обнаружения доступных для атаки сервисов. В процессе сканирования производится попытка соединения с сетевыми сервисами методом обращения по определенному порту. В случае открытого сканирования сканер выполняет трехстороннюю процедуру квитирования, а в случае закрытого (stealth) - не завершает соединение. Так как при сканировании отдельного хоста происходит перебор сервисов (портов), то данная аномалия характеризуется попытками обращения с одного IP адреса сканера на определенный IP адрес по множеству портов. Однако, чаще всего сканированию подвергаются целые подсети, что выражается в наличии в атакованной сети множества пакетов с одного IP адреса сканера по множеству IP адресов исследуемой подсети, иногда даже методом последовательного перебора. Наиболее известными сетевыми сканерами являются: nmap, ISS, satan, strobe, xscan и другие.

Анализаторы трафика или снифферы предназначены для перехвата и анализа сетевого трафика. В простейшем случае для этого производится перевод сетевого адаптера аппаратного комплекса в прослушивающий режим и потоки данных в сегменте, к которому он подключен, становятся доступны для дальнейшего изучения. Так как многие прикладные программы используют протоколы, передающие информацию в открытом, незашифрованном виде, работа снифферов резко снижает уровень безопасности. Отметим, что выраженных аномалий в работе сети снифферы не вызывают. Наиболее известными снифферами являются: tcpdump, ethereal, sniffit, Microsoft network monitor, netxray, lan explorer.

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

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


1.3 Понятие о системах обнаружения вторжений


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

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

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


1.4 История разработок систем обнаружения вторжений


Первая концепция СОВ появилась благодаря Джеймсу Андерсону. В 1984 Фред Коэн сделал заявление о том, что каждое вторжение обнаружить невозможно и ресурсы, необходимые для обнаружения вторжений, будут расти вместе со степенью использования компьютерных технологий.

Дороти Деннинг, при содействии Питера Неймана, опубликовали модель СОВ в 1986, сформировавшую основу для большинства современных систем. Ее модель использовала статистические методы для обнаружения вторжений и называлась IDES (Intrusion detection expert system - экспертная система обнаружения вторжений). Система работала на рабочих станциях Sun и проверяла как сетевой трафик, так и данные пользовательских приложений.

IDES использовала два подхода к обнаружению вторжений: в ней использовалась экспертная система для определения известных видов вторжений и компонент обнаружения, основанный на статистических методах и профилях пользователей и систем охраняемой сети. Тереза Лунт предложила использовать искусственную нейронную сеть как третий компонент для повышения эффективности обнаружения. Вслед за IDES в 1993 вышла NIDES (Next-generation Intrusion Detection Expert System - экспертная система обнаружения вторжений нового поколения).

MIDAS (Multics intrusion detection and alerting system), экспертная система, использующая P-BEST и LISP, была разработана в 1988 году на основе работы Деннинга и Неймана. В этом же году была разработана система Haystack, основанная на статистических методах.

W&S (Wisdom & Sense - мудрость и чувство), основанный на статистических методах детектор аномалий, был разработан в 1989 году в Лос-Аламосской Национальной лаборатории. W&S создавал правила на основе статистического анализа и затем использовал эти правила для обнаружения аномалий.

В 1990, в TIM (Time-based inductive machine) было реализовано обнаружение аномалий с использованием индуктивного обучения на основе последовательных паттернов пользователя на языке Common LISP. Программа была разработана для VAX 3500. Примерно в то же время был разработан NSM (Network Security Monitor - монитор сетевой безопасности), сравнивающий матрицы доступа для обнаружения аномалий на рабочих станциях Sun-3/50. В том же 1990 году был разработан ISOA (Information Security Officer's Assistant), содержащий в себе множество стратегий обнаружения, включая статистику, проверку профиля и экспертную систему. ComputerWatch, разработанный в AT&T Bell Labs, использовал статистические методы и правила для проверки данных и обнаружения вторжений.

Далее, в 1991, разработчики Университета Калифорнии разработали прототип распределенной системы DIDS (Distributed intrusion detection system), которая также являлась экспертной системой. Также в 1991 сотрудниками Национальной Лаборатории Встроенных Вычислительных Сетей (ICN) была разработана система NADIR (Network anomaly detection and intrusion reporter). На создание этой системы оказало большое влияние работа Деннинга и Люнт. NADIR использовала основанный на статистике детектор аномалий и экспертную систему.

В 1998 году Национальная лаборатория им. Лоуренса в Беркли представила Bro, использующий собственный язык правил для анализа данных libcap. NFR (Network Flight Recorder), разработанный в 1999, также работал на основе libpcap. В ноябре 1998 был разработан APE, сниффер пакетов, тоже использующий libpcap. Спустя месяц APE был переименован в Snort.

В 2001 году была разработана система ADAM IDS (Audit data analysis and mining IDS). Система использовала данные tcpdump для создания правил [3].


1.5 Классификация систем обнаружения вторжений


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

. Способ мониторинга системы. По способам мониторинга системы делятся на:

1.1. Сетевые (Network-Based IDS);

.2. Узловые (Host-Based IDS);

.3. Прикладные (Application-Based IDS).

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

.1. Обнаружение сигнатур (Signature Detection), также называемый обнаружением злоупотреблений (Misuse Detection);

.2. Обнаружение аномалий (Anomaly Detection).

. Ответные действия системы. В зависимости от ответных действий СОВ делятся на:

3.1. Активные (Active IDS);

3.2. Пассивные (Passive IDS).

Рассмотрим каждый тип СОВ более подробно.


1.5.1 Способы мониторинга системы

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

.Сетевые СОВ.

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

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

.Узловые СОВ.

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

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

3.Прикладные СОВ.

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

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


1.5.2 Способы анализа системы

Существует два основных подхода к анализу событий для определения атак: определение сигнатур (signature detection) и определение аномалий (anomaly detection).

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

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

.Обнаружение сигнатур.

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

.Обнаружение аномалий.

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

Метрики и технологии, используемые при определении аномалий, включают:

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

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

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

.4. другие метрики, включая нейросети, генетические алгоритмы и модели иммунных систем.

Только первые две технологии используются в современных коммерческих СОВ.

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

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

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


1.5.3 Ответные действия системы

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

.Активные действия.

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

1.1. Сбор дополнительной информации.

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

1.2. Изменение окружения.

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

·вставить ТСР-пакеты с флагом reset в соединение атакующего с его жертвой, тем самым обрывая соединение;

·переконфигурировать роутеры и firewallы для блокирования пакетов с IP-адреса, который определен как источник атаки;

·переконфигурировать роутеры и firewallы для блокирования сетевых портов, протоколов или сервисов на стороне жертвы, которые использует атакующий;

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

1.3. Выполнение действия против атакующего.

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

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

.Пассивные действия.

Пассивные ответы СОВ предоставляют информацию пользователям системы, предполагая, что человек сам выполнит дальнейшие действия на основе данной информации. Многие коммерческие СОВ предполагают исключительно пассивные ответы.

2.1. Тревоги и оповещения.

Тревоги и оповещения создаются СОВ для информирования администраторов об обнаружении атак. Большинство коммерческих IDS позволяют администраторам определять детали того, какие и когда тревоги создаются и кому и как они передаются.

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

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

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

2.2. Использование SNMP Traps.

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

2.3. Возможности отчетов и архивирования.

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

2.4. Возможность хранения информации о сбоях.

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

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

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


1.6 Существующие на рынке системы обнаружения вторжений


На современном рынке существует множество различные систем обнаружения вторжения. Приведём некоторые из них:

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

. Bro является сетевой системой обнаружения вторжений с открытым исходным кодом. Она является пассивной СОВ только для пользователей unix-подобный операционных систем. На сайте производителя утверждается, что данный программный продукт настоятельно рекомендуется использовать только как дополнение к уже установленной СОВ. Документация весьма скудная.

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

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

В таблице 1.6.1. приведём сравнение четыёх систем обнаружения систем по нескольким параметрам.


Табл. 1.6.1. Сравнительная характеристика систем обнаружения вторжений

СОВ ПараметрBroCATNETOSSECSnortБесплатность+?++Открытость исходных кодов+?++Мультиплатформенность?+++Графический интерфейс?++?Тип по мониторингу системысетеваясетеваяузловаясетевая, узловая

Для рассмотрения СОВ предпочтение было отдано Snort. При выборе системы руководствовались следующими принципами:

. Бесплатность.

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

. Открытость исходного кода.

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

. Мультиплатформенность.

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

. Простота в настройке.

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

. Наличие различных сообществ.

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

. Включение в себя системы определения и предотвращения вторжений.

Snort включает в себя не только систему определения вторжения, но и систему предотвращения вторжений.

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


Глава 2 Структура и функционирование СОВ Snort


В этой главе мы рассмотрим Snort, которая является бесплатной сетевой системой предотвращения вторжений (IPS) и сетевой системой обнаружения вторжений (IDS) с открытым исходным кодом, способной выполнять регистрацию пакетов и в реальном времени осуществлять анализ трафика в IP сетях. Snort была написана Мартином Роешом и в настоящее время разрабатывается компанией Sourcefire, основателем и техническим директором которой является Роеш. Sourcefire предлагает так же коммерческие версии систем для предприятий, специализированные аппаратные платформы и услуги по поддержке.

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


2.1 Общий принцип функционирования СОВ


Систему обнаружения вторжений Snort по способу мониторинга системы можно отнести как к узловой, так и к сетевой системе в зависимости от параметров настройки. Обычно она защищает определённый сегмент локальной сети от внешних атак из интернета. На Рис. 2.1.1. показана схема сети и работа Snort в ней. СОВ выделенная красным прямоугольником работает как узловая СОВ, другая же как сетевая. Пусть кто-то через сеть интернет отправляет пакет. После этого пакет попадает в маршрутизатор и передаётся дальше в нужную подсеть. Пройдя через маршрутизатор, пакет проходит или не проходит через межсетевой экран. Его ещё называею файервол, брауменд. Межсетевой экран - это комплекс аппаратных и программных средств, осуществляющий контроль и фильтрацию проходящих через него сетевых пакетов в соответствии с заданными правилами. Здесь нужно отметить, что файервол, как правило, совмещён с маршрутизатором, но они могут сосуществовать как и отдельные устройства.


Рис. 2.1.1. Построение сети с установленной сетевой СОВ Snort


После этого пакет попадает на машину с СОВ Snort, которая контролирует нашу подсеть. Snort просмартривает не подпадает ли пакет под какое-либо, существующее в её базе, правило. Если такого правила не существует, то пакет передаётся дальше получателю, иначе же Snort передаёт межсетевому экрану соответсвующие команды. Команды могут быть двух видов:

. Система позволяет передавать пакет получателю;

. Система запрещает передавать пакет получателю.

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

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


2.2 Архитектура СОВ Snort


Посмотрим, из каких же функциональных блоков состоит СОВ Snort. На Рис. 2.2.1. показаны компоненты, которых включает в себя Snort.


Рис. 2.2.1. Подсистемы СОВ Snort


Сенсорная подсистема - подсистема, занимающаяся сбором событий, которые связаны с безопасностью защищаемой система.

Подсистема анализа - подсистема, предназначенная для выявления атак и подозрительных действий на основе данных сенсорной подсистемы.

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

СОВ Snort включается в себя сниффер пакетов, который перехватывает все пакеты в своей подсети. На Рис. 2.2.2. показан принцип прохождения данных, полученных сниффером, через СОВ Snort.


Рис. 2.2.2. Прохождение данных через Snort


Рассмотрим этапы прождения данный через программный продукт Snort:

. Преобразование данных к пригодному для анализа виду. Это преобразование производится с помощью так называемого декодера;

. Анализ данных с помощью соответственных блоков программы;

. Преобразование полученных результатов к понятному для человека виду;

. Сохранение выходных данных в базу данных.


Глава 3 Практическое применение системы обнаружения вторжений Snort


3.1 Подготовка среды для проведения экспериментов


Для практического применение системы Snort нам необходимо несколько компьютеров, объединённых в сеть. Отличительной особенность является тот факт, что мы должны иметь одновременный доступ к нескольким машинам в этой компьютерной сети. В домашних условиях у нас не было возможности доступа к какой-нибудь реальной компьютерной сети, поэтому было найдено решение эмулировать виртуальную вычислительную сеть.

На современном рынке множество программных продуктов, созданных специально для решения подобных задач. Примером компании, занимающихся разработкой продуктов виртуализации, могут служить VMware, Parallels, Sun Microsystems. С помощью данных программ можно эмулировать оборудование реального компьютера. Созданная в этой среде машина называется виртуальной машиной. Виртуальная машина захватывает не все ресурсы компьютера сразу, пользователь может самостоятельно их ограничивать. К примеру, при создании виртуальной машины пользователь указывает объём жесткого диска, оперативной памяти, видео-памяти. На созданную виртуальный компьютер возможно произвести установку какого-нибудь программного обеспечения и комфортно с ним работать из своей же родной операционной системы. Для большей наглядности проиллюстрируем это рисунком 3.1.1.


Рис. 3.1.1. Использование ресурсов компьютера виртуальной машиной


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

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

Выбор пал на кроссплатформенный продукт VirtualBox. Данная программа разрабатывается компанией Sun Microsystems. На виртуальную машину, созданную с использованием VirtualBox, можно установить такие операционные системы как Microsoft Windows, DOS, GNU/Linux, FreeBSD, Mac OS X, Sun Solaris/OpenSolaris. Приступим к созданию виртуальной машины.

По ходу создания виртуальной машин, система попросила нас установить объём оперативной памяти (Рис. 3.1.2.). Ограничимся 512 Мб памяти.


Рис. 3.1.2. Определение оперативной памяти


Затем указываем расположение файла с виртуальным диском на нашем физическом носителе, его название, а также его размер (Рис. 3.1.3.) Установим объём виртуального винчестера равный 10 ГБ.


Рис. 3.1.3. Определение объёма жесткого диска


В настройке программы можно указать количество ядер, которые будет использовать наша виртуальная машина (Рис. 3.1.4.). Выберем 2 ядра.


Рис. 3.1.4. Определние количество ядер просессора, используемое виртуальной машиной


Здесь же настраиваем сетевой интерфейс, выбрав внутренняя сеть (Рис. 3.1.5.).


Рис. 3.1.5. Выбор сетевого интерфейса


В конечном итоге на Рис. 3.1.6. показаны параметры созданной виртуальной машины:


Рис. 3.1.6. Параметры виртуальной машины


В результате получили две виртуальные машины с установленными операционными системами (Рис. 3.1.7.). В каждой виртуальной машине мы настроили сеть, указав ip-адреса 192.168.1.2 и 192.168.1.3 соответсвенной и маску подсети 255.255.255.0 для каждой. После этого обе машины оказались в одной подсети и могут друг с другом взаимодействовать. Созданная нами вычислительная сеть будет являться полем для экспериментов.



Рис. 3.1.7. Созданные виртуальные машины в VirtualBox


Теперь посмотрим структуру созданной компьютерной сети (Рис. 3.1.8.). Три компьютера соеденены между собой и находятся в одной подсети. Через хост-машину они также имеют доступ в интернет.


Рис. 3.1.8. Структура компьютерной сети


3.2 Режимы запуска Snort


Snort может быть запущен в четырёх режимах:

)сниффер - просто читает пакеты из сети и показывает их на экране в виде продолжительного потока в консоли.

Для запуска в данном режиме используется команда:

./snort -v - на экран выводятся только IP и TCP/UDP/ICMP заголовки пакетов, которые программа перехватывает в сети;

./snort -vd - в отличие от предыдущего случая ключ d обеспечивает ещё вывод на экран пакетных данных;

./snort -dev - ключ e обеспечивает дополнительный вывод данных на канальном уровне.

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

Запуск Snort в данном режиме осуществляется таким же образом как и в режиме сниффера с добавлением ключа l после которого следует указать путь к каталогу где будут хранится лог-файлы. Если же указанного каталога не существует, то запуск программы будет завершён с ошибкой. Ниже приведён пример:

./snort -dev -l /usr/local/var/logs/snort;

./snort -dev -l /home/user/logs -h 192.168.1.0/24

./snort -l /home/user/logs -b - запись данных в бинарный лог-файл;

./snort -dv -r packet.log - чтение бинарного файла для дальнейшего анализа.

)сетевая система обнаружения вторжений - Snort анализирует сетевой трафик и выполняет какие-либо действия в зависимости от вида атак.

./snort -dev -c /usr/local/etc/snort/snort.conf

)inline - режим работы совместно с файерволом iptables. Для того, чтобы запустить в этом режиме, необходимо добавить дополнительный ключ Q:

./snort -GDc ../etc/drop.conf -l /var/log/snort

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


3.3 Конфигурирование системы обнаружения вторжений Snort


Три типа переменных могут быть определены в СОВ Snort:

·var

·portvar

·ipvar

Давайте разберёмся для чего и в каком случае используется тот или иной тип. Три ключевые слова, приведённые выше, предназначены для присвоения указанным нами переменным значений. Синтаксис у них одинаков, отличие состоит в том, что var/portvar/ipvar используются для разных типов данных, и выглядит так:

<var | portvar | ipvar> <название_переменной> <значение_переменной>

Слово var используется для присвоения переменной пути к файлу или директории и для назначения переменной ip-адресов. Заметим, что ключевое слово ipvar применяется к переменным также для указания ip-адресов, но только с поддержкой IPv6. Слово portvar используется для задания переменных с номерами портов. Теперь приведём отрывок из файла конфигурации snort.conf. Полная его версия находится в приложении 1.RULE_PATH /usr/local/etc/snort/rules - указание расположения директории с правилами.

var HOME_NET [192.168.1.0/24,!192.168.1.23] - указание диапазона ip-адресов, которые мы будем защищать. При этом мы исключили один ip-адрес. Ничего не мешает здесь указать только ip-адрес своей машины, тогда Snort использовался бы как узловая СОВ.

var EXTERNAL_NET any - указание ip-адресов от которых мы будем защищать нашу сеть. В данном случае от всех адресов.

portvar HTTP_PORTS [80,2301,3128,7777,7779,8000,8008,8028,8080,8180,8888,9999]

portvar FTP_PORTS 21

portvar SMB_PORTS [139,445]SSH_PORTS 22

В предыдущих черырёх примерах мы просто определяем порты. Здесь тоже может использоваться отрицание, как и в случае с ip-адресами. Для указания последовательности портов, запись может выглядит так: [12:17,1024:].

С помощью ключевого слова include можно подключать дополнительные файлы с настройками. В данном случае мы подключили несколько правил:

include $RULE_PATH/ftp.rules

include $RULE_PATH/ssh.rules

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

<действие_программы> <протокол> <ip-адреса> <порт> <направление действия правила> <ip-адреса> <порт> (опции).

К действиям программы относится:

. alert - вывести предупреждающее сообщение, а потом записать данные пакета в лог-файл;

. log - просто записать данные пакета в лог-файл;

. pass - игнорировать пакет.

Протоколы с которыми работает Snort

. tcp;

. udp;

. icmp;

. ip.

В поле ip-адреса может указываться как диапазон ip-адресов, так и отдельные адреса.

В поле порт можно указать любой порт от 1 до 65535.

Направления действия правила может быть двух видов:

. В одну сторону, обозначается ->;

. В обе стороны, обозначается <>.

Опций в программе Snort большое множество, приведём лишь основные:

. msg - информирующее сообщение об угрозе;

. content - поиск определённой сигнатуры в файле;

. sid - указание номера правила;

. rev - указание номера версии правила;

. ref - указание ссылки с подробным описанием угрозы.

В приложении 2 приведены примеры с разными правилами.


3.4 Сигнатурные правила


Определение атак по сигнатурам довольно известная практика. В первых версиях Snort только по этому принципу и определялись атаки. Рассмотрим как же работает эта возможность в данном программном продукте. Возьмём какой-нибудь любой файл, к примеру sunset.jpg, и откроем его в шестнадцатиричном редакторе (Рис. 3.4.1.). В этот файл любое место вставим нашу сигнатуру, на рисунке она выделена и представляет 4-байтовую последовательность: 0A 2D 42 C8.


Рис. 3.4.1. Шестнадцатиричный редактор


После напишем своё правило, чтобы Snort все файлы с такой сигнатурой отлавливал и сохранял соответсвующее предупреждающее сообщение. Правило будет выглядеть так:tcp any any -> $HOME_NET $SMB (msg:SMB attack!; content: |0A 2D 42 C8|; sid: 1000004; rev:2;).

Данное правило добавим в файл local.rules, которая находится в директории с различными правилами.

Затем по протоколу SMB отправляем наш модифицированный файл sunset.jpg. В результате система выдает нам сообщение, которое показано на Рис. 3.4.2.

Рис. 3.4.2. Ответные действия системы на модифицированный файл


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


3.5 Аномальные правила


Рассмотрим одно из существующих аномальных правил. Предположим, что злоумышленник решил выявить уязвимость компьютеров сети путём сканирования их портов. Популярной утилитой с такими возможностями является Nmap. Она предназначена для настраиваемого сканирования IP-сетей с любым количеством объектов. Nmap использует множество различных методов сканирования. Для проверки работоспособности СОВ воспользуемся этим самым просканируем компьютер с ip-адресом 192.168.2.3 невидимым FIN методом. Для этого введём команду nmap -sF 192.168.2.3 (Рис. 3.5.1.). После сканирования мы видим на этом же рисунке, что программа нам выдала результаты.


Рис. 3.5.1. Сканирование портов с помощь nmap5.0


После проведённых действий обратимся к сканируемому компьютеру и проверим, обнаружил ли Snort неправильную активность со стороны другого компьютера. После просмотра файла alert с предупреждениями (Рис. 3.5.2.) обнаруживаем, что СОВ засекла сканирование портов с указанием ip-адресов сканирующей и сканируемой машины. Также в этом файле указан адрес в интернет с подробным описание атаки. Правила, отвечающие за выявление атак связанных со сканированием портов, хранятся в файле scan.rules. Приведём текст этих правил в приложении 2.


Рис. 3.5.2. Ответные действия СОВ на сканирование портов


Заключение


В ходе проведения дипломной работы были исследованы возможности современных систем обнаружения вторжений.

В работе были:

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

б) смоделирована компьютерная сеть;

в) в этой сети была настроена и подготовлена к работе система обнаружения вторжений

г) произведена проверка работоспособности СОВ, путем моделирования вторжений

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


Список используемой литературы


1.Жигулин Г.П., Новосадов С.Г., Яковлев А.Д. Информационная безопасность, СПб: СПб ГУ ИТМО, 2003

2.Портал об интернет-технологиях (<#"center">вторжение обнаружение snort корпоративная сеть

Приложение 1


# Содержание файла настройки snort.conf, версия Snort 2.8.5.2

======================================================

# Step #1: Set the network variables:HOME_NET anyEXTERNAL_NET anyDNS_SERVERS $HOME_NETSMTP_SERVERS $HOME_NETHTTP_SERVERS $HOME_NETSQL_SERVERS $HOME_NETTELNET_SERVERS $HOME_NETFTP_SERVERS $HOME_NETSNMP_SERVERS $HOME_NETHTTP_PORTS 80SHELLCODE_PORTS !80ORACLE_PORTS 1521FTP_PORTS 21SMB_PORTS [139,445]AIM_SERVERS [64.12.24.0/23,64.12.28.0/23,64.12.161.0/24,64.12.163.0/24,64.12.200.0/24,205.188.3.0/24,205.188.5.0/24,205.188.7.0/24,205.188.9.0/24,205.188.153.0/24,205.188.179.0/24,205.188.248.0/24]RULE_PATH ./rulesPREPROC_RULE_PATH ../preproc_rules

======================================================

# Step #2: Configure dynamic loaded librariesdirectory /usr/local/lib/snort_dynamicpreprocessor//usr/local/lib/snort_dynamicengine/libsf_engine.so

======================================================

# Step #3: Configure preprocessorsfrag3_global: max_frags 65536frag3_engine: policy first detect_anomalies overlap_limit 10stream5_global: max_tcp 8192, track_tcp yes, \_udp nostream5_tcp: policy first, use_static_footprint_sizeshttp_inspect: global \_unicode_map unicode.map 1252http_inspect_server: server default \all ports { 80 8080 8180 } oversize_dir_length 500rpc_decode: 111 32771boftp_telnet: global \_traffic yes \_type statefulftp_telnet_protocol: telnet \\_attack_thresh 200ftp_telnet_protocol: ftp server default \_max_param_len 100 \_max_param_len 200 { CWD } \_validity MODE < char ASBCZ > \_validity MDTM < [ date nnnnnnnnnnnnnn[.n[n[n]]] ] string > \_str_fmt { USER PASS RNFR RNTO SITE MKD } \_cmds yes \_chanftp_telnet_protocol: ftp client default \_resp_len 256 \yes \_cmds yessmtp: \{ 25 587 691 } \_type stateful \cmds \_cmds { EXPN VRFY RCPT } \_max_command_line_len 260 { MAIL } \_max_command_line_len 300 { RCPT } \_max_command_line_len 500 { HELP HELO ETRN } \_max_command_line_len 255 { EXPN VRFY }sfportscan: proto { all } \{ 10000000 } \_level { low }ssh: server_ports { 22 } \_client_bytes 19600 \_encrypted_packets 20 \_respoverflow enable_ssh1crc32 \_srvoverflow enable_protomismatchdcerpc2dcerpc2_server: defaultdns: \{ 53 } \_rdata_overflowssl: noinspect_encrypted, trustservers

======================================================

# Step #4: Configure output pluginsclassification.configreference.config

======================================================

# Step #5: Configure snort with config statementsdaemonlogdir: /usr/local/var/log/snortinterface: eth0alert_with_interface_namealertfile: alert_fribbis

======================================================

# Step #6: Customize your rule set$RULE_PATH/local.rules$RULE_PATH/bad-traffic.rules$RULE_PATH/exploit.rules$RULE_PATH/scan.rules$RULE_PATH/finger.rules$RULE_PATH/ftp.rules$RULE_PATH/telnet.rules$RULE_PATH/rpc.rules$RULE_PATH/rservices.rules$RULE_PATH/dos.rules$RULE_PATH/ddos.rules$RULE_PATH/dns.rules$RULE_PATH/tftp.rules$RULE_PATH/web-cgi.rules$RULE_PATH/web-coldfusion.rules$RULE_PATH/web-iis.rules$RULE_PATH/web-frontpage.rules$RULE_PATH/web-misc.rules$RULE_PATH/web-client.rules$RULE_PATH/web-php.rules$RULE_PATH/sql.rules$RULE_PATH/x11.rules$RULE_PATH/icmp.rules$RULE_PATH/netbios.rules$RULE_PATH/misc.rules$RULE_PATH/attack-responses.rules$RULE_PATH/oracle.rules$RULE_PATH/mysql.rules$RULE_PATH/snmp.rules$RULE_PATH/smtp.rules$RULE_PATH/imap.rules$RULE_PATH/pop2.rules$RULE_PATH/pop3.rules$RULE_PATH/nntp.rules$RULE_PATH/other-ids.rules$RULE_PATH/experimental.rules


Приложение 2


alert tcp $EXTERNAL_NET any -> $HOME_NET any (msg:"SCAN FIN"; flow:stateless; flags:F,12; reference:arachnids,27; classtype:attempted-recon; sid:621; rev:8;)tcp any any -> $HOME_NET $SMB (msg:SMB attack!; content: |0A 2D 42 C8|; sid: 1000004; rev:2;)ip $EXTERNAL_NET any -> $HOME_NET any (msg:"DOS IGMP dos attack"; fragbits:M+; ip_proto:2; metadata:policy security-ips drop; reference:bugtraq,514; reference:cve,1999-0918; reference:url,www.microsoft.com/technet/security/bulletin/MS99-034.mspx; classtype:attempted-dos; sid:272; rev:12;)icmp $EXTERNAL_NET any -> $HOME_NET any (msg:"DOS ath"; itype:8; content:"+++ath"; nocase; metadata:policy balanced-ips drop, policy security-ips drop; reference:arachnids,264; reference:cve,1999-1228; classtype:attempted-dos; sid:274; rev:8;)tcp $EXTERNAL_NET any -> $HOME_NET 7070 (msg:"DOS Real Audio Server"; flow:to_server,established; content:"|FF F4 FF FD 06|"; metadata:policy security-ips drop; reference:cve,1999-0271; reference:nessus,10183; classtype:attempted-dos; sid:276; rev:8;)tcp $EXTERNAL_NET any -> $TELNET_SERVERS 23 (msg:"TELNET SGI telnetd format bug"; flow:to_server,established; content:"_RLD"; content:"bin/sh"; metadata:policy balanced-ips drop, policy security-ips drop, service telnet; reference:arachnids,304; reference:bugtraq,1572; reference:cve,2000-0733; classtype:attempted-admin; sid:711; rev:11;)


СОДЕРЖАНИЕ Введение Глава 1 Общие сведения о системах обнаружения вторжений и их назначение .1 Информационные угрозы .2 Классификация сетевых ат

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ