Защита от 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, а сравнить тарифы — на странице цен.