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

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


Схема стенда

Стенд состоит из трёх основных частей:

  1. Виртуальная среда на базе VMWare, имитирующая локальную сеть + ЦОД (слева на схеме)
  2. Межсетевой экран HP NGFW
  3. Виртуальная среда, имитирующая сегмент сети Интернет (справа на схеме)

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

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

  Виртуальная среда, имитирующая сегмент Интернет, представляет собой набор виртуальных машин на базе операционной системы Linux c установленном на них специализированным ПО – в числе прочего, веб-сервер Apache, сервер баз данных MySQL, интерпретатор языка PHP версии 5, сканер безопасности Nessus, утилита сканирования сети nmap.

Базовая конфигурация межсетевого экрана


Ниже приведены базовые настройки NGFW в соответствии с разработанной схемой стенда, приведенной на рисунке 3. Все настройки показаны в собственном веб-интерфейсе NGFW. На рисунке 4 приведены настройки IP интерфейсов FW в соответствии со схемой приведенной выше.


Настройки IP интерфейсов

Ниже показаны настройки зон безопасности. В стенде для простоты настроено три зоны безопасности – Inside, Outside и VPN.


Настройки зон безопасности

На рисунке 6 показаны базовые настройки, сделанные для Destination NAT. Опубликовано несколько внутренних адресов виртуальных машин, на которых запущены различные сетевые сервисы (HTTP/HTTPS, FTP и т.д. ).


Настройки Destination NAT

Ниже показаны базовые настройки Source NAT. Несколько адресов виртуальных машин транслированы во внешние адреса, чтобы обеспечить их доступ к эмулированным сервисам с вредоносным ПО.


Source NAT

Базовые настройки FW Policy, в соответствии с которыми обрабатывается трафик, показаны на рисунке 8. Для того, чтобы проверить как отрабатывает политика IPS, настроенная по умолчанию, мы пропустим весь трафик через базовые фильтры Statеful FW прозрачно.


FW Policy

Базовые настройки системы противодействия вторжениям (IPS). Все рекомендованные категории фильтрации IPS включены в данном тесте.


Базовые настройки IPS

Настройка порогов для атак типа DDoS. Порог срабатывания IPS на DDoS атаку типа SYN FLOOD – 100 пакетов в секунду.  


IPS DDoS

Эмулируем атаку согласно классической схеме, приведенной в части 2 серии и попытаемся защититься от атаки при помощи NGFW. При этом, в реальной DDoS атаке фильтровать по портам/адресам – подход неэффективный, так как заражённые машины разбросаны, как правило, по сети и имеют хаотически разбросанные адреса. Поэтому пропускаем весь трафик на IPS и, как показано выше, настраиваем в IPS правило защиты от DDoS:

1. Чтобы убедиться, что работает именно IPS, выключаем на NGFW правило, по которому трафик хоста-источника сетевой атаки будет блокирован:



2. Запускаем сетевую атаку DDoS и смотрим в логи Wireshark и  наблюдаем классическую DoS атаку с  зараженной  агентом виртуальной машины:



3. Включаем на NGFW IPS правило, блокирующее трафик хоста, с которого идет сетевая атака:



4. Убеждаемся в логах Wireshark, что правило сработало и DoS атака прекращена:



5. Смотрим в логи NGFW и отмечаем, что атака обнаружена и трафик с атакующего хоста закрыт:



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

Комментарии (6)


  1. Linco
    03.08.2015 16:09
    +2

    Это даже не смешно.
    1. Подобные правила можно и на unix/linux сделать, совсем необязательно иметь NGFW. Более того используя современные решения типа netmap, DPDK, PF_Ring все это можно сделать на неплохих скоростях, вплоть до 10 Гбит/с.
    2. Syn flood, это прошлый век. В наше время даже обезьяньи решения умеют считать syn/syn-ack и отбиваться от подобного рода атак десятью различными методами.
    3. Не указан объем атаки в тесте, обычно средней руки файрволы(как и роутеры) ложаться примерно на 500KPPS-1MPPS. При этом, если не повезет, кладут за собой всю сеть.


    1. exceed
      03.08.2015 18:24

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

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


      1. amarao
        04.08.2015 21:17

        Корпоративный уровень устойчивости — это если я вам всажу 40гбит отборного дерьма в интерфейс, вы из него конфетку отфильтруете? Последний раз, когда я такую штуку щупал (не от HP) она свернулась на трёх мегабитах тупенького флуда unknown-трафиком. Да так, что админ не мог в консоль железки залогиниться. Защищаемой системе этот трафик пофигу (неизвестный тип протокола), а железка загибается и роняет трафик.

        Вот такой вот защитничек.

        Вы бы лучше дали на растерзание IP'шничек, я бы чуток фигни наприсылал, посмотрел как работает. Но сцыкотно, да? Потому что кто знает, что там в голову придёт прислать. Например, установить tcp а потом засрать всё ретраями или бешенными ack'ами… Или с неверными смещениями поиграться…


  1. askbow
    03.08.2015 16:09

    Запускаем сетевую атаку DDoS и смотрим в логи Wireshark и наблюдаем классическую DoS атаку с зараженной агентом виртуальной машины:

    Простите, но DDoS — Distributed DoS. Т.е. атака идёт со множества станций, трафик каждой из которых в отдельности даже может быть не слишком существенным. А вы очень толсто перепрыгнули — запускаете, вроде как, DDoS, а видим DoS. Т.е. вы не показали защиту от распределённости.

    То, что вы продемонстрировали, наверняка можно было сделать ещё, например, на сisco PIX в коде 7-ой версии (вроде-как сходный по структуре пример из 2008 года, возможно есть и другие). Думаю, у других МСЭ (checkpoint, fortigate, или palo alto, к примеру) — уже тогда было аналогично или лучше.

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


    1. exceed
      03.08.2015 18:20

      Как я отписал в предыдущем комментарии, основная цель этой статью — показать настройки NGFW на конкретном примере, а не соревноваться в этом виде программы с конкурентами.

      Как вы понимаете, организовать в лабе настоящий DDoS достаточно не просто, но атака шла с нескольких разных хостов, хотя в статье об этом, согласен, не написано

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


      1. askbow
        04.08.2015 10:02
        +1

        основная цель этой статью — показать настройки NGFW на конкретном примере, ...
        Статья называется «Демонстрация защиты от DDoS», а не «демонстрация настройки программы ххх на примере...». Далее в статье идёт: «Ниже представлен пример защиты от атак типа...» и «Для тестирования этой возможности межсетевого экрана был собран стенд...». Видно, что в статье декларируется цель продемонстрировать возможность межсетевого экрана защищать от некоторого типа атак, обобщённо названного в заголовке «DDoS». Теперь, в комментариях, после того как вам указали на неадекватность демонстрации, вы выдвигаете другую цель статьи.

        … а не соревноваться в этом виде программы с конкурентами.
        Я указал на конкурентов не ради соревнования. Я указал на то, что продемонстрированная в статье защита была в существующих решениях корпоративного класса задолго до того, как маркетологи изобрели термин NGFW. (Заметьте также, что комментатору выше вы указываете на то, что гибкость linux (в котором это всё тоже есть) не делает его решением корпоративного уровня по ряду свойств (утверждение сомнительное само по себе и требующее обоснования).)

        но атака шла с нескольких разных хостов, хотя в статье об этом, согласен, не написано
        Скриншот или этого не было. На приводимом в статье скриншоте атаки из wireshark пакеты идут с одного хоста 10.0.3.101.

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