Нашёл статейку о коэффициентах усилия DDoS-атак, порождаемых злонамеренным использованием ряда сетевых протоколов:
https://www.us-cert.gov/ncas/alerts/TA14-017A
Сама табличка:
Protocol Bandwidth Amplification Factor Vulnerable Command
DNS 28 to 54 see: TA13-088A [1]
NTP 556.9 see: TA14-013A [2]
SNMPv2 6.3 GetBulk request
NetBIOS 3.8 Name resolution
SSDP 30.8 SEARCH request
CharGEN 358.8 Character generation request
QOTD 140.3 Quote request
BitTorrent 3.8 File search
Kad 16.3 Peer list exchange
Quake Network Protocol 63.9 Server info exchange
Steam Protocol 5.5 Server info exchange
Суть усиления в том, что некоторые сетевые протоколы, работающие без установления соединения, порождают ответ существенно большей длины, чем запрос.
Наиболее рзарушителен в этом плане протокол NTP (синхронизация времени). Старые версии содержат такую функцию — получить список пиров, с кем был синк за последние 5 минут. Опасность в том, что длина ответа в полтыщщи раз превышает длину запроса. Ситуация усугублена тем, что а) проверка SourceIP применяется далеко не во всех провайдерских сетях и б) полностарых версий ntpd, висящих на всяких китайских камерах, ТВ-приставках и прочем подобном железе.
Распишу пример. Пусть у нас есть провайдер Roga-&-Копыта-Мудем-фоReVa-шЫз с сеткой 16.55.16.0/17, не фильтрующий траффик по Source IP (коих овер дофига).
И есть уязвимые ntpd на адресах 108.188.45.46, 109.1.1.2 и 110.2.2.3
Целевой сайт — microsoft.com (адреса 134.170.185.46 и 134.170.188.221).
Абоненты из 16.55.16.0/17 в этом случае могут слать UDP-пакеты на порт 123 с DST-IP из (108.188.45.46, 109.1.1.2, 110.2.2.3) и с SourceIP из (134.170.185.46, 134.170.188.221). За счёт того, что маршрутизация в интернете в основе своей полагается на DstIP, получится такая тема:
— от всего одного инфицированного абонента прилетает по 10 Мбит ntp-флуда на каждый из трех уязвимых нтпд (108.188.45.46, 109.1.1.2 и 110.2.2.3). Провайдеру на это вообщем-то пофиг — 30 Мбит вполне могт быть в рамках тарифа, селективный шейпинг именно нтп-траффика — не самая приятная вещь, для реализации которой нужно либо писать адовы ацл-ки (поперек магистрального канала, ага 😀 :D), либо ставить умные DPI типа Cisco SCE с её изумительным шейпером и ценником из серии «продай квартиру, купи циску».
— сервер ntpd старой версии, получив какие-то жалкие 10 Мбит флуда, честно пытается ответить, причём диск чему дял этого читать не надо. В самом печальном случае (когда ntpd поднят на каком-нить джунипере 😀 ) мощность такого ответа будет уже 5 Гбит/сек!!
— сервер микрософта отгребает 15 Гбит флуда, от которого скорее всего и ляжет копытами кверху. Причем в его статистике будут только SourceIP уязвимых серверов ntpd, и сказать про иницииатора атаки ничего нельзя (во всяком случае, без анализа netflow от провайдера, держащего ntpd).
Гарантированной защиты от такого нет и пока что не предвидится. Самая мощная атака такого типа не так давно положила SpamHouse. Почти терабит/секунду флудящего траффика просадили даже межконтинентальные аплинки, а любой сервис, пытавщийся взять сервис под защиту, огребал конкретно.
Немного расскажу о протоколах.
DNS, NTP, SNMPv2 — часто подняты на всяких домашних роутерах, IP-камерах, ТВ-приставках, IP-телефонах, умных холодильниках и прочем.
NetBIOS и SSDP — виндовс-системы.
CharGEN — очень древний тестовый сервис, но вирусня его часто поднимает на зараженных системах.
QOTD и Kad — хня какая-то неведомая 😀
BitTorrent — надежды только на обновления клиентов и провайдерский шейпинг
Quake Network Protocol и Steam Protocol — игрушки. Коэффициент усиления в 65 — некисло. Но сюда наверное дойдут только тогда, когда большая часть NTP будет обновлена.
Однако учитывая, что разработчики проприетарных говнопрошивок часто даже не начинают чесаться (типа устройство снято с поддержки купите новое железо), а пользователей безопасноть их машин мало волнует — быстрого решения проблемы, скорее всего, не будет.
Против такого DDoS беззащитны 99,99% сайтов. На провайдеров хостинга надеяться тоже не стоит. Отхватив 10-20-200 Гбит флуда, ваш сайт просто выключат, в договоре обязательно найдется пункт насчёт обстоятельств непреодолимой силы и праве хостера выключить любой сервис, угрожающий его инфраструктуре, и никакие угрозы уйти к другому хостеру тоже не помогут. И даже более того — хостер будет только рад сплавить проблемного и флудоопасного клиента своему злейшему конкуренту — чтобы при следующей атаке проблемы заторонули уже не его собственные сети.
Вопреки распространённому мнению, далеко не каждый клиент имеет ценность. Клиент, платящий минимальную сумму, выгоден только тогда, когда не особо ебёт мозг и размещение его сайта не ставит под удар всю инфраструктуру. Защита от DDoS есть, но она дико дорогая, оплачивается почасово, гарантирует защиту только до какого-то предела и позволить себе такое могут лишь очень и очень немногие компании.
Так что защищайте свои системы, обновляйте прошивки и постарайтесь, чтобы вашежелезо не участвовало в чужих атаках.