- безопасность
Когда клиенты арендуют ресурсы в облаке или интернет-канал, они часто полагают, что провайдер уже позаботился о защите от DDoS-атак на уровне своей инфраструктуры.
В действительности это не всегда так. В сегодняшней статье расскажем о возможных подходах к антиDDoS-защите на уровне L4 при размещении в облаке.
Что такое DDoS-атака на уровне L4?
Прежде чем пойдем дальше, оговоримся, что в статье пойдет речь о DDoS-атаках на уровне L4 (транспортном), то есть на уровне инфраструктуры. При таких атаках злоумышленник отправляет:
- Поддельные SYN-запросы на целевой сервер (SYN-flood). Сервер создает полуоткрытые сессии, но не заканчивает их, и это приводит к исчерпанию ресурсов сервера.
- Поддельные UDP-пакеты (пакеты без установления соединения) на целевой сервер. Поскольку UDP не требует установления соединения, сервер просто переходит к обработке каждого пакета, что может привести к его перегрузке.
- Поддельные сбросы соединения (RST-пакеты) на целевой сервер (RST Flood). Это может привести к преждевременному завершению или обрыву сеансов связи между сервером и клиентами.
- Пакеты с нулевой длиной (Zero-length Packet Attack) на сервер, что приводит к его перегрузке.
- Специально сформированные пакеты с целью переполнения буфера и выхода за пределы доступной памяти.
Все эти тактики приводят к недоступности атакуемых IP-адресов, серверов, а также сервисов, размещающихся на них.
Как определить, нужна ли защита от DDoS?
Часто к защите от DDoS-атак прибегают уже после печального опыта. Чтобы реально оценить необходимость такой защиты, достаточно оценить риски: какие убытки (материальные или репутационные) DDoS-атака принесет бизнесу и сколько денег оправдано потратить на защиту.
Просто ответьте на эти вопросы:
- Какой простой допустим?
- Во сколько обойдется простой сервиса (например, в 1 час), который я планирую защищать?
- Во сколько обойдется защита от DDoS?
Если стоимость часового простоя несет большие убытки, а стоимость сервиса по защите сильно меньше, чем возможный ущерб от успешной атаки, то стоит задуматься о специализированных средствах защиты.
Если DDoS-атака началась, а защиты нет
Если атака крупная и начинает угрожать инфраструктуре самого провайдера, то с высокой вероятностью провайдер применит blackhole по отношению к проблемному клиенту. Другими словами, он просто перекроет поток трафика на атакуемый сервер, IP-адрес еще на уровне апстрима (верхнего провайдера). В этом случае провайдер снимает нагрузку с каналов и тем самым спасает свою инфраструктуру и всех остальных клиентов, которые на ней живут.
Для атакуемого же результат blackhole мало чем отличается от успешной DDoS-атаки: все его сервисы становятся недоступны из сети Интернет.
В таком случае у вас следующие варианты действий:
1. Можно просто ждать, когда закончится атака, и провайдер выведет его из блэкхола. Этот вариант подойдет, только если вы не несете ощутимых убытков от простоя.
2. Перевести атакуемые сервисы на другие IP-адреса в надежде, что злоумышленник не вычислит новые IP-адреса и не перенаправит внимание на них. При этом простой также неизбежен: сначала из-за начавшейся атаки, а потом уже из-за временных задержек на перенос сервисов, обновление DNS-записей и IP-адресов в сервисах, которые связаны с атакуемыми IP-адресами. К сожалению, злоумышленник с большой вероятностью настигнет вас и по новым адресам (если разведка была проведена должным образом), и тогда снова придется бежать на новые IP-адреса или встать под защиту AntiDDoS-сервиса уже во время атаки.
— Почему смена IP-адресов у сервисов происходит не быстро?
Смена IP-адресов у атакуемых сервисов — это не одно действие, и на каждом из них будут какие-то задержки. Как минимум, нужно настроить новые правила доступа и NAT, а возможно и перенастроить работу самого атакуемого приложения.
Когда вы меняете IP-адрес в DNS и объявляете об этом, то должно пройти какое-то время, чтобы эти новые настройки применились. В частности, у DNS есть параметр Time to Live (время жизни записи). Например, если у этого параметра большая величина 4 часа, то ресурс по новому IP-адресу будет доступен для всех пользователей только через 4 часа.
3. Экстренно подключиться к сервису DDoS-защиты под атакой. Если тактика со сменой IP-адресов не сработала или атака длится неделями, то стоит воспользоваться специализированным сервисами: ServicePipe, Qrator, Stormwall. Это реальный способ остановить злоумышленника, но подключение и настройка займут какое-то время, а значит ваш сервис будет по-прежнему недоступен.
Здесь тоже придется поменять IP-адреса на новые из пула сервиса, если у вас нет своей сети и AS. После подключения к сервису трафик будет фильтроваться через мощности сервиса и приходить на новые IP-адреса уже очищенным.
Но такое быстрое внедрение под атакой имеет свои недостатки. Из-за того, что времени на обучение сервиса и тонкую настройку практически нет, более вероятны ложные срабатывания и блокировка легитимного трафика.
Такой сервис AntiDDoS можно подключить у своего облачного или интернет-провайдера. В первом случае подключение даже может пройти быстрее: есть уже налаженный контакт с техподдержкой, и облачный провайдер имеет представление о том, как устроена ваша инфраструктура.
Если вы оцениваете риски DDoS-атак как высокие, не готовы “тушить пожары” и мириться с длительным простоем, то стоить позаботиться о защите заранее.
Как защититься от DDoS заблаговременно?
Мы, конечно же, не рассматриваем вариант покупки специализированного оборудования для борьбы с DDoS-атаками. Для большинства компаний это будет избыточно, дорого и сложно в обслуживании.
Кроме того, даже если вы купите “железо”, например, с возможностью отражать атаки 10 Гбит/сек, а вам прилетит 100 Гбит/сек, то вы все равно ляжете. Провайдеры же могут консолидировать мощности такого оборудования и отражать атаки, превышающие мощность одной отдельно взятой единицы оборудования. Таким образом, по-настоящему большие узлы фильтрации могут себе позволить только провайдеры.
Более реалистичным вариантом является подключение сервиса защиты от DDoS-атак у облачного или интернет-провайдера. Это те же ServicePipe, Qrator и прочие сервисы, о которых мы говорили выше. Только в этом случае подключение не будет происходить в авральном режиме, и у вас будет возможность протестировать сервис и отстроить фильтрацию так, чтобы минимизировать ложные срабатывания и блокировки легитимного трафика.
Еще один вариант защититься от DDoS-атак — это выбрать облако с уже встроенной защитой от DDoS. Одним из немногих таких облаков является NGcloud — облако нового поколения, в котором уже позаботились о безопасности.
Весь трафик в защищенной сети облака идет через фильтрующие узлы сервиса. То есть трафик клиентов облака NGcloud анализируется на предмет атаки в режиме 24х7. Если атака фиксируется, то она блокируется еще на уровне вышестоящего провайдера NGcloud, а в облако приходит уже очищенный трафик.
Клиент не столкнется ситуацией, когда его сервисы будут недоступны из-за успешной DDoS-атаки или из-за того, что провайдер перевел его IP-адреса в blackhole. При этом клиент платит только за облачные ресурсы.
Помимо встроенной защиты от DDoS, в облаке также регулярно сканируются IP-адреса на предмет уязвимостей или появления несанкционированных устройств, собираются для последующего анализа логи. Облако NGcloud аттестовано по требованиям 152-ФЗ.
Защита от DDoS на уровне L4 не защитит от атак на приложения (уровень L7). Об этом важно помнить и использовать средства защиты от DDoS-атак на уровне L7. Об этих видах DDoS-атак и способах защиты мы поговорим в одной из следующих статей.