В 58-м выпуске SDCast состоялось интервью с Павлом Одинцовым, разработчиком FastNetMon — свободной системы обнаружения DDoS-атак. В подкасте обсуждались как теоретические вопросы об их типах, целях и способах проведения, так и практические вопросы защиты и механизмы обнаружения на примере реализации в проекте Павла.
Компания BeGet выложила в открытый доступ систему защиты от DDOS атак SynCookied. Основным предназначением является защита от SYN/ACK/DATA-флуда, также SynCookied может фильтровать трафик по произвольному набору правил в формате Pcap до 4 уровня по модели OSI.
SynCookied состоит из трех частей:
модуля ядра Linux;
сервиса, запускаемого на защищаемом сервере;
сервиса, запускаемого на фаерволе.
Основным отличием от подобных систем (Arbor, F5, Juniper SRX) является:
бесплатность и открытый исходный код;
возможность прозрачного включения/выключения без разрыва соединения (технология SynProxy этого не позволяет);
для фильтрации необходимо обрабатывать только входящий трафик, что позволяет устанавливать Syncookied либо на стыке с вышестоящими провайдерами, либо сразу за граничным маршрутизатором.
Фактически, 10 ядер процессора Intel Xeon E5-2680v3 могут обрабатывать до 10 Гбит трафика. Один физический сервер способен обрабатывать более 40 Гбит трафика.
SynCookied — идеальное решение для провайдеров с распределенной сетью (асинхронными маршрутами), парком серверов на базе Linux, для которых возможна предварительная установка модуля для ядра.
За прошедшие почти 10 месяцев с релиза 1.0.0 была очень большая работа по улучшению программы.
Из основных изменений стоит отметить следующие:
Возможность выявлять самые популярные виды атак: syn_flood, icmp_flood, udp_flood, ip_fragmentation_flood
Добавление поддержки протокола Netflow, поддерживаются 5, 9 и 10 (IPFIX) версии
Добавление поддержки протокола sFLOW v5, который поддерживается большинством современных сетевых коммутаторов
Добавлена поддержка использования netmap (поддерживаются Linux и FreeBSD, для Linux предоставляется специальная версия драйвера ixgbe: https://github.com/pavel-odintsov/ixgbe-linux-netmap) для захвата пакетов. Данный режим обеспечивает наивысшую производительность захвата трафика наряду с PF_RING ZC.
Добавлена поддержка PF_RING ZC (к сожалению, этот режим требует отдельной лицензии на библиотеку PF_RING)
Хотел бы поделиться своей программой для анализа проходящего миррор-порты/роутеры/OpenVZ ноды трафика на предмет входящих/исходящих DDoS атак.
Для чего она писалась? Чтобы фиксировать серьезные всплески в сотни kpps по полосе/pps как со стороны клиентов, так и со стороны интернета в сторону клиентов.
Что выдает? Выдает топ 10 самых активных потребителей ресурсов сети, выборки топ 10 можно делать как по pps так и по трафику.
Что умеет? Умеет передавать управление внешнему скрипту, который передаст IP на/с которого идет атака на анализ группе администраторов либо заблокирует его на некоторое время.
На чем работает? Поддерживает PF_RING (рекомендуется), pcap (не рекомендуется) и ULOG2 (не рекомендуется).
Что еще умеет? Умеет считать трафик по заданным диапазонам, решение базируется на redis и используется в исключительно внутренних целях.
На каком канале работает? Приложение сейчас в продакшене (на миррор портах, с отдельной машины) с нагрузкой в несколько гигабит входящего+исходящего трафика с примерно 550kpps и более в среднем. Ресурсы почти не жрет — около 10% по всем ядрам на i7 2600.
На какой платформе точно работает? Debian/CentOS/Ubuntu. Но скомпилировать можно только на Debian 7.
В январе 2014 года на сайте ntp.org появилось следующее сообщение:
NTP users are strongly urged to take immediate action to ensure that their NTP daemon is not susceptible to use in a reflected denial-of-service (DRDoS) attack. Please see the NTP Security Notice for more information.
Пользователей NTP настоятельно просим незамедлительно убедиться, что их NTP демон не подвержен атаке DRDoS (усиление трафика). См. NTP Security Notice для большей информации.
Несмотря на то, что уязвимость была закрыта еще в 2010 году в версии 4.2.7p26, во многих дистрибутивах до сих пор распространяется версия 4.2.6 или ранее. Пользователям этих версий следует обновиться на версию 4.2.7p26. Если это по каким-то причинам невозможно, следует использовать либо noquery в разрешениях по умолчанию, чтобы отключить все статусные запросы, либо disable monitor для отключения только команды ntpdc -c monlist, либо ограничить доступ к ntpd настройками файрволла.
Атака DRDoS в данном случае использует то, что демон ntpd работает по протоколу UDP, а также то, что пакет ответа на команды REQ_MON_GETLIST и REQ_MON_GETLIST_1 содержит в 3600~5500 раз больше данных, чем пакет запроса. Таким образом, если подделать IP адрес отправителя запроса на IP-адрес жертвы, то ей придет огромный трафик ответов от NTP сервера, забивая входящий канал мусором.
Эта статья поможет защитить сервер от DDOS-атак вида HTTP flood, узнать, на какой из сайтов идет DDOS-атака, научиться, как отключать атакуемый сайт и защищать свой сайт на сервере или vps.
HTTP flood — наиболее типичный вид DDOS-атаки, когда атакуемый веб-сервер переполняется запросами к главной странице. Симптомы атаки: записи о невозможности открыть новые соединения в логе веб-сервера, очень быстрый рост логов посещений с одинаковыми запросами. Число одновременных запросов к веб-серверу может быть получено в Linux при помощи команды netstat -plan | grep :80 | grep -c tcp. Обычное состояние для среднего сервера — до 200-400 запросов. В случае HTTP flood — более тысячи.