Состоялся релиз программы FastNetMon 1.1.2, предназначенной для выявления входящих и исходящих DDoS-атак на основе анализа транзитного трафика. Программа разработана для фиксации серьезных всплесков интенсивности отправки пакетов (сотни тысяч пакетов в секунду), как со стороны клиентов, так и со стороны внешней сети в сторону клиентов. Данные о трафике могут собираться через PF_RING, PCAP, ULOG2, Netmap, NetFlow, sFLOW. На выходе выводится список 10 самых активных потребителей ресурсов сети, как по числу пакетов в секунду, так и по трафику. Для хранения статистики используется БД Redis. Программа написана на языке C++.


FastNetMon

За прошедшие почти 10 месяцев с релиза 1.0.0 была проделана очень большая работа по улучшению программы. Из основных изменений стоит отметить следующие:

  • Возможность выявлять самые популярные виды атак: syn_flood, icmp_flood, udp_flood, ip_fragmentation_flood
  • Поддержка протокола Netflow v5, v9 и v10 (IPFIX)
  • Возможность применения протокола sFLOW v5, который поддерживается большинством современных сетевых коммутаторов
  • Поддержка использования netmap (поддерживаются Linux и FreeBSD, для Linux предоставляется специальная версия драйвера ixgbe) для захвата пакетов. Данный режим обеспечивает наивысшую производительность захвата трафика наряду с PF_RING ZC.
  • Добавлена поддержка PF_RING ZC (к сожалению, этот режим требует отдельной лицензии на библиотеку PF_RING)

Другие изменения:

  • Добавлена возможность сбора netflow на основе шаблонов с нескольких устройств (в том числе - виртуальных, в пределах одного шасси)
  • Базовая поддержка IPv6 в модуле Netflow, коллектор может прослушивать IPv6 интерфейс, анализ протокола пока не поддерживается
  • Информация об атаке теперь включает очень большое число полей, среди которых - используемые протоколы, типы пакетов, флаги TCP и многое другое, все это позволяет идентифицировать атаки максимально точно
  • Вместо ежесекундного расчета используется усреднение скорости атаки за Х последних секунд, что позволяет минимизировать ложные срабатывания
  • Добавлена возможность сохранения отпечатков атаки в отдельных файлах
  • Добавлена возможность указывать лимит с которого трафик считается атакой в числе потоков, пакетов/секунду и байт/секунду
  • Добавлена интеграция с проектом ExaBGP, с помощью которого можно анонсировать блокируемые IP адреса непосредственно на BGP роутеры собственной сети либо напрямую аплинку
  • Добавлена поддержка плагинов, теперь возможна разработка собственных систем захвата трафика в дополнение к имеющимся
  • Добавлены init файлы для систем на базе systemd
  • Добавлена возможность разблокировки IP после истечения заданного периода времени
  • Добавлена возможность сохранения данных об атаке в Redis
  • Добавлена поддержка распаковки протокола L2TP в режиме захвата с зеркальных портов
  • Модернизация процесса разработки:переход на систему сборки cmake, использование системы непрерывной интеграции Travis CI, отказ от использования функциональности С++ 11 (из соображений переносимости). Также стоит отметить подключение проекта Gitter для эффективного обсуждения вопросов, касающихся проекта. и в дополнение к нему добавлен классический список рассылки
  • Добавлена поддержка следующих систем: Fedora 21, Debian 6/7/8, CentOS 6/7, FreeBSD 9/10/11, DragonflyBSD 4, OS X 10.10

Бинарный пакеты собраны для следующих систем : CentOS 6, CentOS 7, Fedora 21, FreeBSD. Для других Linux систем рекомендуется использовать автоматический установщик.


Новая версия позволяет достичь очень высокой производительности. Скорость обработки sFLOW/Netflow почти неограниченная (до десятков и сотен гигабит секунду). Для режима PF_RING (не ZC) максимально достигнутая скорость в районе ~3mpps/5GE. Наивысшей скорости можно добиться используя системы захвата трафика PF_RING ZC или netmap, обе библиотеки позволяют обрабатывать до 10 и более миллионов пакетов в секунду на зеркальных портах (10GE+). При очень высокой скорости рекомендуется отключать режим трекинга соединений, который очень сильно нагружает процессорные ресурсы. Все изменения приведены для Intel i7 2600 и сетевой карты Intel 82599.


Источник opennet.ru