Защита от DDoS: как устроены атаки и как им противостоять

DDoS перестал быть проблемой только крупных компаний: арендовать ботнет на несколько часов сегодня стоит дешевле, чем час работы администратора. Под удар попадают интернет-магазины, СМИ, игровые серверы и небольшие корпоративные сайты. Разберём, как устроены такие атаки, почему обычный хостинг с ними не справляется и что реально помогает.

Схема защиты от DDoS: атакующий трафик отсекается на центре очистки, легитимный доходит до сервера

Принцип защиты прост: трафик идёт не напрямую на ваш сервер, а через фильтрующую сеть. Мусорные запросы отсекаются на подступах, а до приложения доходит только легитимный трафик.

Что такое DDoS-атака

DDoS (Distributed Denial of Service) — это распределённая атака на отказ в обслуживании. Множество заражённых устройств (ботнет) одновременно шлют запросы к вашему ресурсу, чтобы исчерпать его ресурсы: полосу канала, ёмкость сетевого оборудования, процессор или пул соединений приложения. Цель не украсть данные, а сделать сервис недоступным для настоящих пользователей. Ключевое отличие от обычного всплеска нагрузки — источники распределены по тысячам адресов, поэтому просто «забанить один IP» не получится.

Объёмные атаки (L3/L4)

Самый прямолинейный тип: канал забивают мусорным трафиком до тех пор, пока сквозь него не перестаёт проходить полезный. Сюда относятся UDP-флуд, SYN-флуд и амплификация — когда атакующий отправляет небольшой запрос к открытым публичным сервисам (DNS, NTP, memcached), подставив ваш адрес как обратный, а те отвечают жертве пакетами в десятки раз большего объёма. Измеряются такие атаки в гигабитах в секунду, и противостоять им можно только фильтрацией на сети с достаточным запасом пропускной способности — на стороне вашего сервера канал уже переполнен.

Атаки на приложение (L7)

Гораздо коварнее: трафика мало, он выглядит как обычные HTTP-запросы, но каждый из них дорог для сервера. Боты долбят поиск по сайту, страницы фильтрации каталога, формы или тяжёлые API-методы — то, что порождает сложные запросы к базе. Канал при этом свободен, а приложение уже лежит. Отличить такого бота от живого посетителя по одному лишь IP невозможно — нужен анализ поведения, частоты обращений, заголовков и проверка клиента на способность исполнять браузерную логику.

Как работает фильтрация: центры очистки

Защита строится на том, что трафик к сайту проходит через распределённую сеть фильтрации (её называют центрами очистки, scrubbing centers). Запросы принимают пограничные узлы, которые:

  • гасят объёмные атаки за счёт суммарной пропускной способности сети — атака «размазывается» по множеству узлов;
  • отбрасывают заведомо некорректные пакеты и известные сигнатуры атак;
  • анализируют поведение клиента и отсекают ботов на уровне приложения;
  • кэшируют статику, снижая нагрузку на источник даже в обычное время.

До вашего сервера доходит уже очищенный поток. Именно так работает связка CDN + AntiDDOS: сеть выступает буфером между интернетом и вашей инфраструктурой.

Почему важно скрыть реальный IP

Любая фильтрация бессмысленна, если атакующий знает адрес вашего сервера и бьёт мимо защиты — напрямую. Поэтому при подключении проксирования исходный IP перестаёт светиться в DNS: наружу видны только адреса фильтрующей сети. Стоит помнить, что реальный адрес может «утечь» через старые A-записи в истории DNS, поддомены вроде mail или ftp, заголовки писем и SSL-сертификаты. Перед включением защиты имеет смысл сменить IP сервера и закрыть на нём приём трафика отовсюду, кроме сети фильтрации.

Что подготовить заранее

Подключать защиту в разгар атаки — плохая идея: DNS-изменения расходятся не мгновенно, а вы теряете деньги каждую минуту. Разумный минимум заранее:

  • заранее понизить TTL DNS-записей, чтобы переключение проходило за минуты;
  • держать зону у оператора, который умеет включать проксирование в один клик;
  • вынести статику на CDN — это снимает базовую нагрузку и ускоряет сайт в спокойное время;
  • знать свой нормальный профиль трафика: без него невозможно отличить атаку от удачной рекламной кампании.
Тип атаки Как проявляется Что помогает
UDP / SYN-флудКанал забит, сервер недоступенФильтрация на сети, запас полосы
АмплификацияТрафик в десятки раз выше обычногоЦентры очистки, отсечение по сигнатурам
HTTP-флуд (L7)Канал свободен, приложение «лежит»Антибот, анализ поведения
Атака по прямому IPЗащита включена, но сайт недоступенСокрытие IP, доступ только из сети фильтрации

Универсального «выключателя» DDoS не существует: объёмные атаки гасятся ёмкостью сети, прикладные — анализом поведения, а прямые удары по серверу — сокрытием его адреса. Работающая защита — это все три уровня сразу. Подключить их можно в CDN и защите сайтов Alviy, а сравнить тарифы — на странице цен.