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

 

INFO

  • О Mod_Security и GreenSQL-FW читай в статье «Последний рубеж», ][_12_2010.
  • Как научить iptables «заглядывать» внутрь пакета, читай в статье «Огненный щит», ][_12_2010.
 

WWW

 

Технологии IDS/IPS

Чтобы сделать выбор между IDS или IPS, следует понимать их принципы работы и назначение. Так, задача IDS (Intrusion Detection System) состоит в обнаружении и регистрации атак, а также оповещении при срабатывании определенного правила. В зависимости от типа, IDS умеют выявлять различные виды сетевых атак, обнаруживать попытки неавторизованного доступа или повышения привилегий, появление вредоносного ПО, отслеживать открытие нового порта и т. д. В отличие от межсетевого экрана, контролирующего только параметры сессии (IP, номер порта и состояние связей), IDS «заглядывает» внутрь пакета (до седьмого уровня OSI), анализируя передаваемые данные. Существует несколько видов систем обнаружения вторжений. Весьма популярны APIDS (Application protocol-based IDS), которые мониторят ограниченный список прикладных протоколов на предмет специфических атак. Типичными представителями этого класса являются PHPIDS, анализирующий запросы к PHP-приложениям, Mod_Security, защищающий веб-сервер (Apache), и GreenSQL-FW, блокирующий опасные SQL-команды (см. статью «Последний рубеж» в ][_12_2010).

PHPIDS блокирует неправильные PHP-запросы
PHPIDS блокирует неправильные PHP-запросы

Сетевые NIDS (Network Intrusion Detection System) более универсальны, что достигается благодаря технологии DPI (Deep Packet Inspection, глубокое инспектирование пакета). Они контролируют не одно конкретное приложение, а весь проходящий трафик, начиная с канального уровня.

Для некоторых пакетных фильтров также реализована возможность «заглянуть внутрь» и блокировать опасность. В качестве примера можно привести проекты OpenDPI и Fwsnort. Последний представляет собой программу для преобразования базы сигнатур Snort в эквивалентные правила блокировки для iptables. Но изначально файервол заточен под другие задачи, да и технология DPI «накладна» для движка, поэтому функции по обработке дополнительных данных ограничены блокировкой или маркированием строго определенных протоколов. IDS всего лишь помечает (alert) все подозрительные действия. Чтобы заблокировать атакующий хост, администратор самостоятельно перенастраивает брандмауэр во время просмотра статистики. Естественно, ни о каком реагировании в реальном времени здесь речи не идет. Именно поэтому сегодня более интересны IPS (Intrusion Prevention System, система предотвращения атак). Они основаны на IDS и могут самостоятельно перестраивать пакетный фильтр или прерывать сеанс, отсылая TCP RST. В зависимости от принципа работы, IPS может устанавливаться «в разрыв» или использовать зеркалирование трафика (SPAN), получаемого с нескольких сенсоров. Например, в разрыв устанавливается Hogwash Light BR, которая работает на втором уровне OSI. Такая система может не иметь IP-адреса, а значит, остается невидимой для взломщика.

В обычной жизни дверь не только запирают на замок, но и дополнительно защищают, оставляя возле нее охранника, ведь только в этом случае можно быть уверенным в безопасности. В IT в качестве такого секьюрити выступают хостовые IPS (см. «Новый оборонительный рубеж» в ][_08_2009), защищающие локальную систему от вирусов, руткитов и взлома. Их часто путают с антивирусами, имеющими модуль проактивной защиты. Но HIPS, как правило, не используют сигнатуры, а значит, не требуют постоянного обновления баз. Они контролируют гораздо больше системных параметров: процессы, целостность системных файлов и реестра, записи в журналах и многое другое.

Чтобы полностью владеть ситуацией, необходимо контролировать и сопоставлять события как на сетевом уровне, так и на уровне хоста. Для этой цели были созданы гибридные IDS, которые коллектят данные из разных источников (подобные системы часто относят к SIM — Security Information Management). Среди OpenSource-проектов интересен Prelude Hybrid IDS, собирающий данные практически со всех OpenSource IDS/IPS и понимающий формат журналов разных приложений (поддержка этой системы приостановлена несколько лет назад, но собранные пакеты еще можно найти в репозиториях Linux и *BSD).

В разнообразии предлагаемых решений может запутаться даже профи. Сегодня мы познакомимся с наиболее яркими представителями IDS/IPS-систем.

 

Объединенный контроль угроз

Современный интернет несет огромное количество угроз, поэтому узкоспециализированные системы уже не актуальны. Необходимо использовать комплексное многофункциональное решение, включающее все компоненты защиты: файервол, IDS/IPS, антивирус, прокси-сервер, контентный фильтр и антиспам-фильтр. Такие устройства получили название UTM (Unified Threat Management, объединенный контроль угроз). В качестве примеров UTM можно привести Trend Micro Deep Security, Kerio Control, Sonicwall Network Security, FortiGate Network Security Platforms and Appliances или специализированные дистрибутивы Linux, такие как Untangle Gateway, IPCop Firewall, pfSense (читай их обзор в статье «Сетевые регулировщики», ][_01_2010).

 

Suricata

  • Разработчик: OISF (Open Information Security Foundation).
  • Web: www.openinfosecfoundation.org.
  • Платформа: программная.
  • ОС: Linux, *BSD, Mac OS X, Solaris, Windows/Cygwin.
  • Лицензия: GNU GPL.

Бета-версия этой IDS/IPS была представлена на суд общественности в январе 2010-го после трех лет разработок. Одна из главных целей проекта — создание и обкатка совершенно новых технологий обнаружения атак. За Suricata стоит объединение OISF, которое пользуется поддержкой серьезных партнеров, включая ребят из US Department of Homeland Security. Актуальным на сегодня является релиз под номером 1.1, вышедший в ноябре 2011 года. Код проекта распространяется под лицензией GPLv2, но финансовые партнеры имеют доступ к не GPL-версии движка, которую они могут использовать в своих продуктах. Для достижения максимального результата к работе привлекается сообщество, что позволяет достигнуть очень высокого темпа разработки. Например, по сравнению с предыдущей версией 1.0, объем кода в 1.1 вырос на 70%. Некоторые современные IDS с длинной историей, в том числе и Snort, не совсем эффективно используют многопроцессорные/многоядерные системы, что приводит к проблемам при обработке большого объема данных. Suricata изначально работает в многопоточном режиме. Тесты показывают, что она шестикратно превосходит Snort в скорости (на системе с 24 CPU и 128 ГБ ОЗУ). При сборке с параметром '--enable-cuda' появляется возможность аппаратного ускорения на стороне GPU. Изначально поддерживается IPv6 (в Snort активируется ключом '--enable-ipv6'), для перехвата трафика используются стандартные интерфейсы: LibPcap, NFQueue, IPFRing, IPFW. Вообще, модульная компоновка позволяет быстро подключить нужный элемент для захвата, декодирования, анализа или обработки пакетов. Блокировка производится средствами штатного пакетного фильтра ОС (в Linux для активации режима IPS необходимо установить библиотеки netlink-queue и libnfnetlink). Движок автоматически определяет и парсит протоколы (IP, TCP, UDP, ICMP, HTTP, TLS, FTP, SMB, SMTP и SCTP), поэтому в правилах необязательно привязываться к номеру порта (как это делает Snort), достаточно лишь задать действие для нужного протокола. Ivan Ristic, автор Mod_security, создал специальную библиотеку HTP, применяемую в Suricata для анализа HTTP-трафика. Разработчики прежде всего стремятся добиться точности обнаружения и повышения скорости проверки правил.

С Suricata можно использовать все наработки к Snort, например Snorby
С Suricata можно использовать все наработки к Snort, например Snorby

Вывод результатов унифицирован, поэтому можно использовать стандартные утилиты для их анализа. Собственно, все бэк-энды, интерфейсы и анализаторы, написанные для Snort (Barnyard, Snortsnarf, Sguil и т. д.), без доработок работают и с Suricata. Это тоже большой плюс. Обмен по HTTP подробно журналируется в файле стандартного формата Apache.

Основу механизма детектирования в Suricata составляют правила (rules). Здесь разработчики не стали пока ничего изобретать, а позволили подключать рулсеты, созданные для других проектов: Sourcefire VRT (можно обновлять через Oinkmaster), OpenSource Emerging Threats и Emerging Threats Pro. В первых релизах поддержка была лишь частичной, и движок не распознавал и не загружал некоторые правила, но сейчас эта проблема решена. Реализован и собственный формат rules, внешне напоминающий снортовский. Правило состоит из трех компонентов: действие (pass, drop, reject или alert), заголовок (IP/порт источника и назначения) и описание (что искать). В настройках используются переменные (механизм flowint), позволяющие, например, создавать счетчики. При этом информацию из потока можно сохранять для последующего использования. Такой подход, применяемый для отслеживания попыток подбора пароля, более эффективен, чем используемый в Snort метод, который оперирует пороговым значением срабатывания. Планируется создание механизма IP Reputation (вроде SensorBase Cisco, см. статью «Потрогай Cisco» в ][_07_2011).

Резюмируя, отмечу, что Suricata — это более быстрый движок, чем Snort, полностью совместимый с ним по правилам и бэк-эндам и способный проверять большие сетевые потоки. Единственный недостаток проекта — скудная документация, хотя опытному админу ничего не стоит разобраться с настройками. В репозиториях дистрибутивов уже появились пакеты для установки, а на сайте проекта доступны внятные инструкции по самостоятельной сборке из исходников. Есть и готовый дистрибутив Smooth-sec, построенный на базе Suricata.

Конфигурационный файл Suricata понятен тем, кто возился с настройками Snort
Конфигурационный файл Suricata понятен тем, кто возился с настройками Snort
 

Samhain

  • Разработчик: Samhain Labs.
  • Web: www.la-samhna.de/samhain.
  • Реализация: программная.
  • ОС: Unix, Linux, Windows/Cygwin.
  • Лицензия: GNU GPL

Выпускаемый под OpenSource-лицензией Samhain относится к хостовым IDS, защищающим отдельный компьютер. Он использует несколько методов анализа, позволяющих полностью охватить все события, происходящие в системе:

  • создание при первом запуске базы данных сигнатур важных файлов и ее сравнение в дальнейшем с «живой» системой;
  • мониторинг и анализ записей в журналах;
  • контроль входа/выхода в систему;
  • мониторинг подключений к открытым сетевым портам;
  • контроль файлов с установленным SUID и скрытых процессов.
В конфиге Samhain указывается, какие файлы необходимо контролировать
В конфиге Samhain указывается, какие файлы необходимо контролировать

Программа может быть запущена в невидимом режиме (задействуется модуль ядра), когда процессы ядра невозможно обнаружить в памяти. Samhain также поддерживает мониторинг нескольких узлов, работающих под управлением разных ОС, с регистрацией всех событий в одной точке. При этом установленные на удаленных узлах агенты отсылают всю собранную информацию (TCP, AES, подпись) по зашифрованному каналу на сервер (yule), который сохраняет ее в БД (MySQL, PostgreSQL, Oracle). Кроме того, сервер отвечает за проверку статуса клиентских систем, распространение обновлений и конфигурационных файлов. Реализовано несколько вариантов для оповещений и отсылки собранной информации: e-mail (почта подписывается во избежание подделки), syslog, лог-файл (подписывается), Nagios, консоль и др. Управление можно осуществлять с помощью нескольких администраторов с четко установленными ролями.

Пакет доступен в репозиториях практически всех дистрибутивов Linux, на сайте проекта есть описание, как установить Samhain под Windows.

 

StoneGate Intrusion Prevention System

  • Разработчик: StoneSoft Corporation.
  • Web: www.stonesoft.com.
  • Реализация: программно-аппаратная, образ VMware.
  • ОС: 32/64-битные Windows 2k3/Vista/7/2k8R2, Linux (CentOS, RHEL, SLES).
  • Лицензия: коммерческая.

Это решение разработано финской компанией, которая занимается созданием продуктов корпоративного класса в сфере сетевой безопасности. В нем реализованы все востребованные функции: IPS, защита от DDoS- и 0day-атак, веб-фильтрация, поддержка зашифрованного трафика и т. д. С помощью StoneGate IPS можно заблокировать вирус, spyware, определенные приложения (P2P, IM и прочее). Для веб-фильтрации используется постоянно обновляемая база сайтов, разделенных на несколько категорий. Особое внимание уделяется защите от обхода систем безопасности AET (Advanced Evasion Techniques). Технология Transparent Access Control позволяет разбить корпоративную сеть на несколько виртуальных сегментов без изменения реальной топологии и установить для каждого из них индивидуальные политики безопасности. Политики проверки трафика настраиваются при помощи шаблонов, содержащих типовые правила. Эти политики создаются в офлайн-режиме. Администратор проверяет созданные политики и загружает их на удаленные узлы IPS. Похожие события в StoneGate IPS обрабатываются по принципу, используемому в SIM/SIEM-системах, что существенно облегчает анализ. Несколько устройств легко можно объединить в кластер и интегрировать с другими решениями StoneSoft — StoneGate Firewall/VPN и StoneGate SSL VPN. Управление при этом обеспечивается из единой консоли управления (StoneGate Management Center), состоящей из трех компонентов: Management Server, Log Server и Management Client. Консоль позволяет не только настраивать работу IPS и создавать новые правила и политики, но и производить мониторинг и просматривать журналы. Она написана на Java, поэтому доступны версии для Windows и Linux.

Консоль управления StoneGate IPS
Консоль управления StoneGate IPS

StoneGate IPS поставляется как в виде аппаратного комплекса, так и в виде образа VMware. Последний предназначен для установки на собственном оборудовании или в виртуальной инфраструктуре. И кстати, в отличие от создателей многих подобных решений, компания-разработчик дает скачать тестовую версию образа.

 

IBM Security Network Intrusion Prevention System

  • Разработчик: IBM.
  • Web: www.ibm.com/ru.
  • Реализация: программно-аппаратная, образ VMware.
  • Лицензия: коммерческая.

Система предотвращения атак, разработанная IBM, использует запатентованную технологию анализа протоколов, которая обеспечивает превентивную защиту в том числе и от 0day-угроз. Как и у всех продуктов серии IBM Security, его основой является модуль анализа протоколов — PAM (Protocol Analysis Module), сочетающий в себе традиционный сигнатурный метод обнаружения атак (Proventia OpenSignature) и поведенческий анализатор. При этом PAM различает 218 протоколов уровня приложений (атаки через VoIP, RPC, HTTP и т. д.) и такие форматы данных, как DOC, XLS, PDF, ANI, JPG, чтобы предугадывать, куда может быть внедрен вредоносный код. Для анализа трафика используется более 3000 алгоритмов, 200 из них «отлавливают» DoS. Функции межсетевого экрана позволяют разрешить доступ только по определенным портам и IP, исключая необходимость привлечения дополнительного устройства. Технология Virtual Patch блокирует вирусы на этапе распространения и защищает компьютеры до установки обновления, устраняющего критическую уязвимость. При необходимости администратор сам может создать и использовать сигнатуру. Модуль контроля приложений позволяет управлять P2P, IM, ActiveX-элементами, средствами VPN и т. д. и при необходимости блокировать их. Реализован модуль DLP, отслеживающий попытки передачи конфиденциальной информации и перемещения данных в защищаемой сети, что позволяет оценивать риски и блокировать утечку. По умолчанию распознается восемь типов данных (номера кредиток, телефоны…), остальную специфическую для организации информацию админ задает самостоятельно при помощи регулярных выражений. В настоящее время большая часть уязвимостей приходится на веб-приложения, поэтому в продукт IBM входит специальный модуль Web Application Security, который защищает системы от распространенных видов атак: SQL injection, LDAP injection, XSS, JSON hijacking, PHP file-includers, CSRF и т. д.

В продуктах IBM задействованы наработки онлайн-сервиса GTOC и X-Force
В продуктах IBM задействованы наработки онлайн-сервиса GTOC и X-Force

Предусмотрено несколько вариантов действий при обнаружении атаки — блокировка хоста, отправка предупреждения, запись трафика атаки (в файл, совместимый с tcpdump), помещение узла в карантин, выполнение настраиваемого пользователем действия и некоторые другие. Политики прописываются вплоть до каждого порта, IP-адреса или зоны VLAN. Режим High Availability гарантирует, что в случае выхода из строя одного из нескольких устройств IPS, имеющихся в сети, трафик пойдет через другое, а установленные соединения не прервутся. Все подсистемы внутри железки — RAID, блок питания, вентилятор охлаждения — дублированы. Настройка, производящаяся при помощи веб-консоли, максимально проста (курсы обучения длятся всего один день). При наличии нескольких устройств обычно приобретается IBM Security SiteProtector, который обеспечивает централизованное управление, выполняет анализ логов и создает отчеты.

 

McAfee Network Security Platform 7

  • Разработчик: McAfee Inc.
  • Web: www.mcafee.com.
  • Реализация: программно-аппаратная.
  • Лицензия: коммерческая.

IntruShield IPS, выпускавшийся компанией McAfee, в свое время был одним из популярных IPS-решений. Теперь на его основе разработан McAfee Network Security Platform 7 (NSP). В дополнение ко всем функциями классического NIPS новый продукт получил инструменты для анализа пакетов, передаваемых по внутренней корпоративной сети, что помогает обнаруживать зловредный трафик, инициируемый зараженными компами. В McAfee используется технология Global Threat Intelligence, которая собирает информацию с сотен тысяч датчиков, установленных по всему миру, и оценивает репутацию всех проходящих уникальных файлов, IP- и URL-адресов и протоколов. Благодаря этому NSP может обнаруживать трафик ботнета, выявлять 0day-угрозы и DDoS-атаки, а такой широкий охват позволяет свести к нулю вероятность ложного срабатывания.

Не каждая IDS/IPS может работать в среде виртуальных машин, ведь весь обмен происходит по внутренним интерфейсам. Но NSP не испытывает проблем с этим, он умеет анализировать трафик между VM, а также между VM и физическим хостом. Для наблюдения за узлами используется агентский модуль от компании Reflex Systems, который собирает информацию о трафике в VM и передает ее в физическую среду для анализа.

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

Кроме NIPS, McAfee выпускает и хостовую IPS — Host Intrusion Prevention for Desktop, которая обеспечивает комплексную защиту ПК, используя такие методы детектирования угроз, как анализ поведения и сигнатур, контроль состояния соединений с помощью межсетевого экрана, оценка репутации для блокирования атак.

 

Где развернуть IDS/IPS?

Чтобы максимально эффективно использовать IDS/IPS, нужно придерживаться следующих рекомендаций:

  • Систему необходимо разворачивать на входе защищаемой сети или подсети и обычно за межсетевым экраном (нет смысла контролировать трафик, который будет блокирован) — так мы снизим нагрузку. В некоторых случаях датчики устанавливают и внутри сегмента.
  • Перед активацией функции IPS следует некоторое время погонять систему в режиме, не блокирующем IDS. В дальнейшем потребуется периодически корректировать правила.
  • Большинство настроек IPS установлены с расчетом на типичные сети. В определных случаях они могут оказаться неэффективными, поэтому необходимо обязательно указать IP внутренних подсетей и используемые приложения (порты). Это поможет железке лучше понять, с чем она имеет дело.
  • Если IPS-система устанавливается «в разрыв», необходимо контролировать ее работоспособность, иначе выход устройства из строя может запросто парализовать всю сеть.
 

Заключение

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

  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    0 комментариев
    Межтекстовые Отзывы
    Посмотреть все комментарии