Rambler's Top100
Статьи ИКС № 6 2005
П.В. КОВАЛЕВ  01 июня 2005

Поручите охрану сети «недремлющему аналитику»

Традиционно самым простым и, пожалуй, наиболее распространенным способом борьбы с различного рода вторжениями считается межсетевой экран (МЭ) на входе в сеть. Некоторые «умные» МЭ способны остановить атаку на уровне не только стека TCP/IP, но и приложений (Application Layer Gateway, Deep Inspection, Application Intelligence и др. ). Однако далеко не всегда их использование в данном качестве эффективно, поскольку многофакторная защита – задача весьма трудоемкая. Она зачастую просто не по зубам устройствам, у которых на вооружении почти всегда не более одного процессора: производительность сети при обработке МЭ большого объема данных резко падает. Однако выход из создавшегося положения давно найден: для борьбы с разнородными атаками существуют специализированные системы (или устройства), главная задача которых – анализ циркулирующего в сети трафика и блокировка злонамеренных пакетов. Таких продуктов на рынке средств защиты информации (СЗИ) немало – от свободно распространяемых (Snort и ее варианты) до коммерческих (производства Cisco, ISS, Network Associate, Juniper Networks, Symantec и др. ).

Подобные СЗИ делятся на два больших класса: пассивные (Intrusion Detection Systems, IDS) и активные (Intrusion Prevention Systems, IPS). Первые позволяют лишь зафиксировать факт атаки и подать сигнал исполнительному устройству (МЭ или маршрутизатору) на выполнение блокировки, соответствующей политике безопасности. Зато вторые вполне заслужили право называться «недремлющими стражами-аналитиками» : они не только определяют наличие атаки, но и принимают решение о мерах защиты, а также генерируют команды для их исполнения.

Способы обнаружения

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

Практически все современные системы IDS/IPS выявляют атаки с помощью двух базовых методов: сигнатурного анализа (Signature Detection, SD) и анализа аномалий в использовании сетевых протоколов (Protocol Anomaly Detection, PAD). Первый позволяет обнаружить известные типы атак (для которых определены сигнатуры), а второй – совершенно новые (неизвестные ранее).

Анализ аномалий

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

Примером может служить механизм обнаружения системой IDS атаки типа FTP Bounce. Атака использует требование протокола FTP указать адрес и номер порта-отправителя (или получателя) данных, прежде чем скачать или загрузить файлы с помощью механизма PORT Command. Однако слабость метода таится в отсутствии возможности проверять подлинность предоставляемой клиентом информации. В итоге злоумышленник оправляет на FTP-сервер запрос на открытие соединения с хостом-» жертвой», а затем использует открытый на нем порт для загрузки трояна и спокойно перекачивает с него файлы в свой компьютер.

Чтобы выявить данную атаку, системе IDS необходимо проанализировать запросы клиентов, отправляемые на FTP-сервер, на предмет проверки правильности указанных в них адресов клиентских хостов. При обнаружении несогласованности система генерирует сигнал тревоги. Сигнатурный анализ, к сожалению, в этом случае не применим, поскольку атака основана на обычном взаимодействии клиента с сервером, а не на сравнении данных пакета со специфическим для атаки массивом (pattern, сигнатура) в составе пакетной информации.

Другой пример эффективности анализа аномалий использования протоколов при выявлении атак, направленных на переполнение буфера, – атаки на базе уязвимостей ПО. В некоторых ОС отсутствует проверка переполнения внутреннего буфера при пересылке в него данных большого объема. В этом случае при переполнении буфера непоместившиеся данные направляются в оперативную память, «затирая» всю имеющуюся там информацию. Принцип реализации такой атаки основан на систематической и многократной генерации злонамеренного трафика до тех пор, пока цель не будет достигнута. Затем программное приложение может отправить их по определенному адресу. Таким образом, злоумышленник способен взять хост-» жертву» под свой контроль (рис. 2). Выявить действия хакера способны лишь системы, основанные на механизме анализа аномалий использования протоколов. А уж после этого можно определить соответствующую сигнатуру атаки как ее неотъемлемый признак и далее применить сигнатурный метод.

Классика жанра

Для эффективного обнаружения злонамеренного трафика система IDS должна:
  • осуществлять дефрагментацию IP-пакетов;
  • повторно собирать TCP-сегменты;
  • ассоциировать потоки от клиента к серверу и от сервера к клиенту с единой сессией;
  • производить нормализацию (интерпретировать и в случае необходимости устранять закодированные и специальные символы из восстановленного сообщения).
Все эти функции реализованы в большинстве систем IDS, однако при использовании только традиционных методов обнаружения с помощью сигнатур анализируется каждый байт информации, что может вызвать потерю производительности сети и появление большого уровня ложных тревог. Поэтому некоторые разработчики систем обнаружения вторжений применяют различные комплексные методы борьбы.

Метод Stateful Signature (сигнатура с учетом состояния соединения) объединяет в себе два метода – сигнатурного анализа и анализа аномалий использования сетевых протоколов. Суть его в том, что IDS анализирует каждый байт пакета с учетом состояния (этапа) сеанса связи между хостом-отправителем и хостом-получателем. Другими словами, система сопоставляет сигнатуру атаки только для определенного набора данных, который соответствует данному состоянию сеанса связи. Например, при атаке EXPN root на систему электронной почты злоумышленник может получить административный доступ к почтовому серверу, если отправит команду EXPN root на SMTP-сервер во время командной сессии. Если система обнаружения атак использует лишь традиционный сигнатурный метод, то анализируется не только командная сессия, но и данные. Если же в системе реализован метод Stateful Signature, то она анализирует только командную сессию, генерируя сигнал тревоги лишь при выявлении в ней команды EXPN root.

Пока мы рассматривали атаки с известными сигнатурами и основанные на несоответствии использования IP-протоколов. Однако существуют и угрозы, не относящиеся ни к первому, ни ко второму типу, – это черви и трояны. Попадая внутрь сети (через электронную почту или ICQ) инфицированный код открывает «потайной ход» (backdoor) – сеанс связи с хостом злоумышленника (рис. 3). Такая «работа» выявляется в результате анализа неавторизованного интерактивного сетевого трафика между хостом хакера и хостом» жертвой» с установленным трояном по методу Backdoor Detection. Для его корректной реализации администратор безопасности должен настроить параметры трафика между хостами в соответствии с правилами для каждого типа трафика (приложения SSH, Telnet и др. ). Тогда все иные виды трафика между хостами сети считаются недопустимыми, и при их обнаружении система подает сигнал тревоги или самостоятельно их блокирует.

Следует заметить, что реальной атаке может предшествовать особый тип сетевой активности – сканирование сетевых адресов и портов. Для обнаружения подобных аномалий трафика существует метод Traffic Anomaly Detection. Злоумышленник путем сканирования собирает информацию о хостах и работающих на них приложениях и пользователях, чтобы затем нанести мощный и целенаправленный удар по сети или серверу (рис. 4). Есть множество способов сканирования – как явного, так и скрытого, и обнаружить такие атаки способны лишь системы IDS/IPS, умеющие осуществлять корреляцию потоков данных, принадлежащих к разным сессиям.

«Всегда на связи»

Известный слоган, принятый на сетях мобильной связи, как нельзя лучше иллюстрирует одно из важнейших требований к системе обнаружения и предотвращения вторжений – она должна всегда быть активной. Увы, большинство предлагаемых сегодня IDS/IPS не способны самостоятельно предотвращать атаки, поскольку работают в пассивном режиме анализатора пакетов (sniffer). Приведем лишь два весомых аргумента в пользу использования систем обнаружения и предотвращения вторжений в активном режиме (in-line) : во-первых, их практически невозможно обмануть; во-вторых, эффективность мер противодействия в них гораздо выше, чем в пассивных системах

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

В качестве примера рассмотрим механизм обмана системы IDS/IPS перекрывающимися TCP-сегментами (т. е. сегментами с одинаковыми порядковыми номерами), которые создают проблему неоднозначности. Если злоумышленник отправляет в сеть перекрывающиеся TCP-сегменты с различными данными, то разные ОС интерпретируют порядок их приема по-разному: Windows отбрасывает первый и принимает последний сегмент, а Solaris – наоборот. Отсутствие информации о том, как ОС выполняет сборку TCP-сегментов, может создать прецедент обмана IDS/IPS.

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

Другая беда пассивных систем – отсутствие способности самостоятельно подавлять атаки, поскольку традиционно производители реализуют лишь два механизма IDS: генерации TCP-сегментов с установленным флагом Reset для последующей передачи их на хост-отправитель и хост-получатель данных, а также передачи сигнала на исполнительное устройство (МЭ, маршрутизатор) для блокировки атаки (Firewall Shunning).

Следует заметить, что первый механизм неэффективен по трем причинам: 1) он может быть использован лишь для одного протокола – TCP, но неприменим для ICMP-или UDP-трафика; 2) системе IDS требуется время для определения факта атаки, генерации и отправки сегмента TCP Reset, и часть вредоносных пакетов успевает добраться до хоста-» жертвы» ; 3) сам механизм генерации сегментов с установленным флагом Reset предусматривает наличие в них порядкового номера, и в сегмент нужно вставлять порядковый номер следующего сегмента. Но почти все системы IDS отправляют TCP Reset с порядковым номером «старого» сегмента, который, вероятнее всего, уже достиг цели, поскольку большинство пассивных систем не способны определить порядковый номер следующего сегмента, если хакер изменяет последовательность их отправки случайным образом (рис. 5).

Основной недостаток второго механизма связан с задержками. Наличие петли обратной связи (система IDS – исполнительное устройство) обусловливает появление временной задержки для команды блокирования. Типичная ситуация: вредоносный трафик уже проник в сеть через МЭ или маршрутизатор, и, пока IDS анализирует его пакеты, они успевают достичь цели – хоста-» жертвы» (рис. 6).

***


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

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

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

Комплексность и быстродействие

Системы обнаружения и предотвращения вторжений производства Juniper Networks NetScreen-IDP (Intrusion Detection &Prevention – обнаружение и предотвращение атак) отличает комплексный метод обнаружения атак на 2 – 7-м уровнях модели OSI, позволяющий немедленно остановить атаку в режиме реального времени. При этом системы NetScreen-IDP анализируют поведение трафика при использовании протоколов, определяют характер трафика, выявляют предопределенные последовательности, распознают атаки типа backdoor, IP spoof, Syn-flood и др. Арсенал этих защитных средств базируется на нескольких технологиях и методах: Stateful Signature Detection, анализе аномалий использования протоколов, Backdoor Detection, Network Honeypot и др.

Семейство продуктов NetScreen-IDP состоит из четырех одинаковых по функциональности моделей (NetScreenIDP 10/100/500/1000), различающихся по пропускной способности и набору интерфейсов. Любая система семейства устанавливается непосредственно на линии связи и способна работать в режимах прозрачного моста (без MAC-и IP-адресов на интерфейсах), обычного моста (без IP-адресов на интерфейсах), устройства Proxy-Arp, маршрутизатора или пассивного детектора атак. При обнаружении атаки система создает соответствующую запись в журнале и выполняет сброс не только сессии, но и конкретного пакета. Поддержка восьми механизмов обнаружения атак обусловливает низкий уровень ложных тревог. А реализованный в третьей версии механизм Profiler позволяет анализировать текущее состояние сетевых ресурсов и строить на этой основе соответствующие политики безопасности.

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

Поделиться:
Заметили неточность или опечатку в тексте? Выделите её мышкой и нажмите: Ctrl + Enter. Спасибо!