1 декабря 2022
Провайдеры сервисов Anti-DDoS зачастую предлагают подключать защиту по асимметричной схеме: фильтруется только входящий трафик – тот, что идет к защищаемым ресурсам, а исходящий вообще никак не фильтруется. В ряде иных ситуаций они применяют симметричную схему, когда фильтруется не только входящий, но и исходящий трафик либо служебная информация о нем. Когда и в каких случаях следует предпочесть асимметричную схему фильтрации, а когда – симметричную?
Асимметричная схема: проще, дешевле…
Асимметричная схема фильтрации трафика пользуется популярностью как среди клиентов, так и среди провайдеров Anti-DDoS.
Ее популярность среди клиентов во многом объясняется ее преимуществами:
- она во многих отношениях проще, в том числе потому, что клиенту не требуется вносить дополнительные изменения в инфраструктуру;
- она дешевле: ниже и плата за подписку на сервисы Anti-DDoS, и расходы на трафик;
- подключение происходит быстрее – за считанные часы;
- эта схема предоставляет больше возможностей для управления исходящим трафиком, позволяя клиенту самостоятельно выбирать маршруты через различных провайдеров (при их наличии) для уменьшения задержек;
- соответственно, задержки при доставке трафика при ее использовании, как правило, ниже;
- асимметричная схема упрощает использование DDoS-сенсоров;
- она позволяет применять мультивендорные решения Anti-DDoS и использовать сервисы нескольких «защитников».
Провайдеры Anti-DDoS охотно реализуют асимметричную схему еще и потому, что она проще и в реализации, и при дальнейшем масштабировании, к тому же ее себестоимость ниже – она требует меньшего количества вычислительных ресурсов.
…Но и уязвимее
Проблема с асимметричной схемой защиты в том, что существует ряд DDoS-атак, против которых она малоэффективна. В их числе, например, атаки типа TCP Reflection и флуд Random UDP.
В атаках типа TCP Reflection используются особенности трехшагового «рукопожатия», применяемого для установки TCP-соединения: злоумышленник отправляет поддельный пакет SYN (примечание: правильно было бы сказать “поддельный TCP-сегмент с флагом SYN”, т.к. пакет — это сущность протокола IP, а не TCP, но мы для простоты будем далее использовать термин “пакет”), в котором исходный IP-адрес заменен на IP-адрес узла-жертвы, на множество IP-адресов других узлов (их называют узлами отражения), и они отправляют жертве пакеты SYN+ACK. Если перегруженный ими узел-жертва не высылает в ответ пакет ACK, который от него ожидает TCP-сервис на узле отражения, то пакет SYN-ACK отправляется повторно – таким образом создается эффект усиления. Отфильтровать такую атаку на 100% можно только если анализировать не только входящий, но и исходящий трафик – а это позволяет делать именно симметричная схема защиты. StormWall, в отличие от большинства других провайдеров защиты, имеет собственный механизм фильтрации TCP Reflection при асимметричном подключении, и он в десятки-сотни раз снижает число пакетов атаки, которое “пролетает” в жертву, но вынужден пропускать какую-то их часть, чтобы проверить легитимность соединений и не лишить защищаемый ресурсы возможности устанавливать исходящие TCP-подключения с сетью Интернет. Этот пример хорошо демонстрирует ограничения асимметричной схемы подключения, которые надо всегда иметь ввиду.
Флуд Random UDP основан на том, что злоумышленник отправляет в сторону жертвы(чаще всего это публичный пул IP интернет-провайдера) множество UDP-датаграмм разных размеров на разные порты, при этом и их размеры, и порты выбираются с использованием функции рандомизации (генератора случайных чисел). Сервер пытается определить, какое приложение может их обработать, и если не находит подходящего (а в случае флуда такое происходит с подавляющим большинством UDP-датаграмм), то отправляет в качестве ответа пакет ICMP Destination Unreachable. Если поток UDP-датаграмм достаточно велик, то сервер тратит всю свою производительность на их обработку. Чтобы отфильтровать такой флуд, нужно анализировать исходящий трафик, выяснять, какие UDP-сессии действительно запрашивали клиенты, и пропускать только датаграммы, связанные с этими сессиями. Не имея доступа к исходящему трафику, фильтровать флуд Random UDP практически невозможно, поэтому провайдеры сервисов Anti-DDoS, использующие асимметричную схему, в подобных случаях просто шейпят (ограничивают) входящий трафик. Еще более изощренный вариант этой атаки, с которым приходится сталкиваться, — воспроизведение легитимного трафика одного провайдера с повышением интенсивности и заменой IP назначения на IP другого (атакуемого) провайдера. В этом случае IP-адреса источников и содержимое пакетов (payload) остаются полностью легитимными, и единственная возможность отфильтровать такую атаку при невысокой ее интенсивности — использовать симметричное подключение.
Чтобы помешать проведению этих и других подобных DDoS-атак, провайдеру асимметричной защиты приходится применять различные уловки и ухищрения, однако и они не позволяют обезопасить ресурс-жертву на все 100%, особенно если речь идет о трафике интернет-провайдера (если защищается публичный TCP-сервис, то можно просто заблокировать TCP SYN+ACK вместе с UDP и не знать проблем).
Защита сервисов TCP/UDP от DDoS-атак
Симметричная схема: надежнее, но дороже
В отличие от асимметричной, симметричная защита позволяет достаточно легко фильтровать перечисленные атаки с использованием особенностей протокола TCP: она сначала сама устанавливает соединения, и если их установка завершилась успешно, то передает их на защищаемый сервер. Для фильтрации UDP-трафика симметричная защита анализирует не только входящие, но и исходящие UDP-датаграммы и пропускает только те, что относятся к ранее открытым (или легитимно установленным с точки зрения профиля фильтрации) UDP-сессиям.
Есть и множество других видов атак, от которых симметричная схема фильтрации защищает гораздо лучше, чем асимметричная, поэтому при подключении защиты критически важных приложений и программных онлайн-сервисов на уровне L7 модели OSI наша компания StormWall, как правило, использует симметричную схему, причем для защиты сайтов и приложений с раскрытием сертификатов SSL применяет ее всегда.
Разумеется, симметричная схема неидеальна: платой за ее высокую надежность становятся более высокие издержки на подключение, оплату сервисов Anti-DDoS и трафика (поскольку объем исходящего трафика, как правило, на один-два порядка больше объема исходящего), а также (в случае удаленности защищаемого объекта от точки очистки) более долгие задержки при передаче пакетов.
Что выбрать – зависит от ваших целей и требований
Делая выбор между симметричной и асимметричной схемой защиты, важно учесть следующие требования и факторы:
- Нужно совместно с провайдером защиты от DDoS оценить риски подключения только асимметричной защиты — настолько они актуальны для ваших сервисов.
- Также надо учесть объем трафика, который вы готовы пропустить внутрь сети: если инфраструктура внутри периметра сети обладает достаточной производительностью и сможет сохранить доступность в случае, если какая-то часть атакующего трафика преодолеет защиту, то можно попытаться обойтись асимметричной схемой.
- Кроме того, надо оценить, насколько устойчивы к DDoS-атакам ваши интернет-приложения и онлайн-сервисы. Если у них есть запас производительности, достаточный для того, чтобы справиться с неотфильтрованной частью нелегитимного трафика, то можно попробовать сэкономить, подключив асимметричную защиту. Если же производительность приложений для вас критически важна, или запас ее невелик, или вы не можете ее контролировать, то следует выбрать симметричную схему.
Наши рекомендации
Вот несколько рекомендаций, которые позволят повысить устойчивость ваших ресурсов к DDoS-атакам.
- Обеспечьте профилирование трафика по разным IP или подсетям. Размещение разных типов защищаемых ресурсов отдельно друг от друга позволит заранее обезопасить себя от целых классов угроз. Например, на IP с веб-сайтами можно изначально закрыть все протоколы кроме TCP и запретить пакеты с флагами SYN+ACK, что повысит защищенность от целого класса атак. Тем временем, на IP с VDS или пользователями Интернет эти же ограничения уже нельзя применить безболезненно.
- Если вы решили использовать асимметричную схему, продумайте также вариант экстренного включения симметричной, чтобы защититься от атак, с отражением которых не справится асимметричная схема.
В целом рекомендуем придерживаться взвешенного подхода к выбору схемы фильтрации трафика для защиты от DDoS-атак. Прежде всего, настоятельно советуем тщательно оценить ваши собственные риски и непременно учесть их, выбирая ту или иную схему.
Считаем также необходимым заранее продумать план действий при начале серьезной DDoS-атаки, чтобы, когда она «прилетит», не тратить время на раздумья, а предпринимать четкие шаги, которые позволят свести к минимуму ваш ущерб.
Защита веб-сайтов от DDoS-атак
- Подключение за 10 минут
- Поддержка 24×7