spblug. Борьба с ddos в хостинге - по обе стороны баррикад
TRANSCRIPT
Борьба с DDoS в хостинге: по обе стороны баррикад.Netflow, Flowspec
Константин НоваковскийVscale, Selectel
SPb Linux User Group2017.02.22
Почему нам больно
• 6 датацентров (6,5к м2)
• Аренда серверов / стоек / серверных помещений / волокон
• Виртуальное приватное облако
• Облачное хранилище / CDN
• Мониторинг
• Vscale
• Anycast DNS• новый “железный” проект в разработке
Проблемы
• атаки на наших клиентов
• атаки на нашу инфраструктуру
• использование нашей инфраструктуры для атак
• взломали сервер клиента
• виртуалки для атак
Коротко А вдруг
● на канал (volumetric)
● на протокол
● на оборудование
● на приложение
Коротко А вдруг
● на канал (volumetric)
● на протокол
● на оборудование
● на приложение
● большой BPS
● большой PPS
● большой PPS
● небольшие числа BPS/PPS
Отражение
1. Атакующий хост рассылает запросы от имени жертвы по всему интернету
2. Хосты в интернете отвечают жертве3. Жертва получает ОЧЕНЬ МНОГО неожиданных ответов
Размер ответа небольшой — как правило, равный размеру запроса.
ping -S <жертва> <host в интернете>
hping3 ...
Усиление
Основной механизм - отражение, но
● посылка маленького по размеру запроса● генерация очень большого ответа - до 100 килобайт
• SNMP, DNS, NTP, SSDP, CS, Quake
• UDP - нет установки сессии перед запросом rfc768
12 декабря 2015
Флуд Атака на протокол
• PING-flood• SYN-flood• SSL-handshake• slow TCP• IP fragments
Мониторинг
Минимум нагрузка на сетевых интерфейсахсерверов роутерах
Держать перед глазами
Мониторинг
Кто кого откуда куда
• сенсор
• коллектор
• анализатор
• сенсор
• коллектор
• анализатор
• Обрабатываются не все пакеты
• Может создать излишнюю нагрузку на сенсор
• Значение семплинга зависит от:
• объемов трафика
• оборудования / сенсора
Инструменты
• nfdump, nfsen
• flowtools
• elasticsearch
• nbox/ntopng
• ipfixcol
Мониторим
Мониторим
Мониторим
Отчёт клиенту
• Топ по портам назначения• Топ портам источников трафика• Автономные системы источников трафика• Топы адресов на основе топов портов
источников и назначения• Количество адресов в по топам портов
Реакция и смягчение
• Работает поверх
• обрабатывается аппаратно на ах
• опасен своей мощью
• поддерживают далеко не все операторы
Фильтры
Фильтры
Фильтры
Реакция
••••
Пример отчёта
Attack type: syn_flood
Initial attack power: 106961 packets per second
Peak attack power: 211654 packets per second
Attack direction: outgoing
Attack protocol: tcp
Total incoming traffic: 33 mbps
Total outgoing traffic: 674 mbps
Total incoming pps: 7290 packets per second
Total outgoing pps: 106961 packets per second
Total incoming flows: 0 flows per second
Total outgoing flows: 0 flows per second
Average incoming traffic: 33 mbps
Average outgoing traffic: 674 mbps
Average incoming pps: 7290 packets per second
Average outgoing pps: 106961 packets per second
Incoming tcp traffic: 0 mbps
Outgoing tcp traffic: 1869 mbps
Incoming tcp pps: 0 packets per second
Outgoing tcp pps: 262144 packets per second
Incoming syn tcp traffic: 0 mbps
Outgoing syn tcp traffic: 1869 mbps
Incoming syn tcp pps: 0 packets per second
Outgoing syn tcp pps: 262144 packets per second
Пример отчёта
Attack type: syn_flood
Initial attack power: 106961 packets per second
Peak attack power: 211654 packets per second
Attack direction: outgoing
Attack protocol: tcp
Total incoming traffic: 33 mbps
Total outgoing traffic: 674 mbps
Total incoming pps: 7290 packets per second
Total outgoing pps: 106961 packets per second
Total incoming flows: 0 flows per second
Total outgoing flows: 0 flows per second
Average incoming traffic: 33 mbps
Average outgoing traffic: 674 mbps
Average incoming pps: 7290 packets per second
Average outgoing pps: 106961 packets per second
Incoming tcp traffic: 0 mbps
Outgoing tcp traffic: 1869 mbps
Incoming tcp pps: 0 packets per second
Outgoing tcp pps: 262144 packets per second
Incoming syn tcp traffic: 0 mbps
Outgoing syn tcp traffic: 1869 mbps
Incoming syn tcp pps: 0 packets per second
Outgoing syn tcp pps: 262144 packets per second
— программный многоуровневый коммутаторОбеспечивает сеть виртуальным машинам
— протокол взаимодействия между сетевымиустройствами коммутаторами программно управляемойсети и централизованным контроллером
Фильтруем трафик виртуалок
http://archive.openflow.org/doc/gui/org/openflow/protocol/Match.html
Фильтруем трафик виртуалок
http://archive.openflow.org/doc/gui/org/openflow/protocol/Match.html
Предотвращение атак из виртуалок
Мониторим превышение на порту виртуалок
Проверяем подозрительный трафик
• не попадает под известные случаи• ничего не делаем
• вредоносная активность• делаем небольшой дамп для дальнейшего разбора
инцидента• отключаем порт виртуалки от сети
Вопросы
Обратная связь:twitter: clickfreakbitemail: kostya.keeper at gmail dot com