Подробно разбираем, как сетевые и прикладные атаки по-разному рушат инфраструктуру.

В основе различий лежит модель взаимодействия в сети. Атакующий может давить на транспортный уровень, пытаясь забить канал и сетевую инфраструктуру, или на прикладной уровень, имитируя реальных пользователей и ломая работу приложения. От понимания разницы между L4 и L7 зависит, какие услуги защиты вы покупаете, как настраиваете инфраструктуру и что будете делать в момент атаки.
Полная модель OSI выглядит впечатляюще, но для практики в контексте DDoS достаточно помнить несколько уровней. Сетевой уровень (L3) отвечает за маршрутизацию пакетов между узлами, транспортный уровень (L4) управляет соединениями и портами, а прикладной уровень (L7) обслуживает конкретные протоколы и приложения вроде HTTP, DNS, SMTP и других.
Если упрощать, L4 видит потоки пакетов по IP адресам и портам и почти не интересуется тем, что именно внутри этих пакетов. L7 уже понимает смысл: он видит конкретные запросы к страницам, API методам, поисковым формам, корзине интернет магазина и так далее. На одном и том же соединении L4 может быть много отдельных операций L7, каждая со своей логикой и нагрузкой.
Поэтому две атаки с одинаковым объемом трафика в мегабитах могут выглядеть для бизнеса совершенно по разному. В первом случае забита полоса и все клиенты отваливаются разом. Во втором канал почти свободен, но сервер приложений полностью занят обработкой «умных» запросов и честные пользователи наблюдают бесконечные «крутилки» в интерфейсе.
L4 атака нацелена на транспортный уровень. Цель атакующего проста и груба: забить пропускную способность канала или ресурсы сетевого стека так, чтобы легитимные пакеты вообще не могли пройти или обрабатывались с большим трудом. Для этого используются потоковые и усилительные техники с огромным количеством однотипных пакетов.
Типичные примеры L4 атак:
Для владельца ресурса L4 атака обычно выглядит как внезапный и резкий рост входящего трафика. Графики загрузки канала взлетают, сетевое оборудование начинает задыхаться, а пользователи жалуются, что сайт «не открывается вообще». Иногда отдельные запросы до сервера все же пролезают, но общая картина напоминает автомобильную пробку: движение есть, но крайне медленное.
Защитные меры против L4 атак обычно реализуются на стороне оператора связи или специализированного облачного сервиса. Это может быть фильтрация на пограничных маршрутизаторах, применение принципа Anycast с распределением трафика между большим числом узлов, отсеивание подозрительных пакетов, BGP анонсы на очистные центры и другие инженерные техники. Важно понимать, что классический сетевой экран на площадке клиента здесь уже не справляется просто по объему трафика он стоит слишком «низко» по отношению к месту возникновения пробки.
L7 атака бьет не по каналу, а по самому приложению. Здесь трафика может быть совсем немного, но каждый запрос специально подобран так, чтобы выполнять максимально дорогую для сервера операцию. Такие атаки часто выглядят как множество обычных HTTP запросов, и на первый взгляд их сложно отличить от поведения реальных пользователей.
Что делают атакующие на L7:
Снаружи L7 атака может выглядеть тихо: канал загружен умеренно, нет аномального числа пакетов, но сервер приложений, базы данных и внешние сервисы перегружены. Пользователь видит, что страница открывается долгие секунды, корзина не обновляется, а операции зависают на шаге «обработка заказа». Часто такие атаки сопровождаются ростом количества HTTP запросов с ошибками 500 или 503.
Защита от L7 требует уже не только сетевой фильтрации, но и понимания логики протоколов. Здесь вступают в игру веб экраны приложений, поведенческий анализ трафика, капчи, rate limiting на уровне запросов, кеширование и разные хитрости в архитектуре самого веб приложения. Хороший L7 фильтр умеет отделять «шум» ботов от людей с учетом множества признаков, а не только IP адреса и заголовков.
Иногда кажется, что разговор про уровни это чистая теория. На практике различия между L4 и L7 определяют, каким образом вы будете защищаться, с кем подписывать договор и какие метрики отслеживать. Свести разницу можно к нескольким пунктам.
Во первых, отличаются цели. L4 направлена на перегрузку канала и сетевой инфраструктуры, L7 на истощение ресурсов приложения и баз данных. Во вторых, сильно различаются признаки: при L4 вы видите всплеск трафика и проблемы с доступностью всех сервисов разом, при L7 чаще страдает конкретный сайт, API или отдельная функция.
Кроме того, L7 атака обычно дороже для атакующего: нужен ботнет, который умеет ходить по HTTP, поддерживать cookie, иногда исполнять JavaScript. Зато такая атака дает тонкую настройку можно давить конкретный бизнес процесс, например авторизацию в кабинете или оформление заказов. L4, наоборот, проще реализовать массово, но она менее точечная, больше напоминает ковровую бомбардировку.
Разделение на L4 и L7 напрямую влияет на то, какие услуги защиты вы покупаете. Есть решения, которые умеют отлично фильтровать большие потоки трафика на уровне IP и портов, но почти не разбираются в HTTP. И наоборот есть продукты, которые блестяще защищают веб приложение, но не способны выдержать гигабитный поток на входе.
Если считать, что «DDoS как услуга» универсален, легко попасть в ситуацию, когда при первой серьезной атаке защита срабатывает наполовину: оператор снимает нагрузку с канала, но приложение по прежнему не справляется с потоком запросов, либо веб экран рассортировал трафик, но канал оператора уже забит до отказа. Поэтому в договоре и техническом описании услуг важно смотреть, какие уровни защиты реально обеспечиваются.
Главная особенность L4 атак объемы. Борьба с ними почти всегда вынесена за пределы площадки клиента туда, где есть большой резерв пропускной способности и мощное сетевое оборудование. Обычно это операторы связи или специализированные центры очистки трафика, куда по BGP анонсам перенаправляются пакеты, адресованные к вашей инфраструктуре.
Типичные меры защиты на уровне 4:
На стороне клиента тоже есть пространство для действий. Можно корректно настроить параметры TCP стека, уменьшить тайм ауты, ограничить размер таблиц полусоединений, применять фильтрацию в пограничных сетевых экранах. Но все это имеет смысл только при условии, что канал связи до вас уже очищен или хотя бы не полностью забит. В противном случае вы просто не увидите большую часть легитимных пакетов.
Для оценки и выбора решений имеет смысл изучить публичную документацию операторов и сервисов защиты, например руководства по DDoS защите у крупных поставщиков: обучающие материалы по DDoS помогут сформировать базовое понимание, какие именно механизмы доступны на рынке.
L7 атака требует другого набора инструментов. Здесь мало просто отсечь подозрительные IP или ограничить скорость трафика важно отличить «плохой» HTTP запрос от «хорошего» и не навредить реальным пользователям. Поэтому на первый план выходят решения, которые умеют разбирать протокол на уровне заголовков и содержимого.
Основные методы защиты прикладного уровня:
Значительную роль играет архитектура самого приложения. Если любой запрос к главной странице запускает десятки сложных запросов к базе, никакая защита не спасет сайт от перегрузки при росте нагрузки в несколько раз. Поэтому грамотная оптимизация запросов, использование кэшей, разнос статического и динамического контента по разным доменам и серверам это тоже часть защиты от L7 DDoS.
Полезно также внимательно следить за логами веб сервера и приложений и использовать системы наблюдаемости, способные быстро визуализировать аномалии в количестве запросов, ошибках и времени ответа. Конструкторы дашбордов вроде Grafana помогают сделать картину более наглядной, а значит ускорить реакцию при возникновении атаки.
В реальной жизни атаки редко бывают «идеально чистыми». Часто они комбинируют объемную нагрузку на транспортный уровень и «умные» запросы к приложению. Атакующий может начать с разогрева канала, а затем переключиться на конкретные API методы, или наоборот сначала «присмотреться» к приложению, а потом добавить объемный трафик, чтобы усложнить анализ.
Поэтому эффективная защита от DDoS почти всегда строится многоуровнево. На границе сети операторы и очистные центры отсекают грубый шум и усилительные атаки. Ближе к приложению включаются веб экраны, поведенческий анализ и архитектурные меры. Плюс поверх всего этого накладывается организационный контур мониторинг, регламенты, план действий и отработанные процедуры взаимодействия с провайдерами.
Для относительно небольших компаний хорошим вариантом бывает использование облачных платформ, совмещающих L3 4 и L7 защиту. Такие решения позволяют скрыть реальный IP сайта за сетью поставщика, автоматически фильтровать разнообразные типы атак и перегружать на себя львиную долю работы по отбору трафика. При выборе важно внимательно читать техническое описание и соглашение об уровне сервиса, а не ограничиваться красивым словом «анти DDoS» в рекламе.
В момент атаки одной из самых сложных задач оказывается диагностика. «Сайт не открывается» слишком общая формулировка. Чтобы быстро понять, столкнулись ли вы с L4, L7 или комбинированной атакой, нужно смотреть на несколько уровней сразу и иметь хотя бы минимальные метрики по каждому.
Полезно сопоставлять:
Если канал забит, а до серверов почти ничего не доходит, это сильный признак L4 атаки. Если канал относительно свободен, но резко выросло количество HTTP запросов к конкретным разделам сайта, а приложения и базы данных перегружены, вероятнее всего идет L7 атака. Комбинация аномальной загрузки канала и приложений укажет на смешанный сценарий.
Чем более отлажен сбор и визуализация этих метрик, тем меньше времени вы будете тратить на споры в стиле «виноват оператор» или «сломалось приложение» и тем быстрее сможете перейти к реальным действиям по локализации проблемы.
Несмотря на то что тема DDoS давно известна, бизнес и ИТ команды регулярно наступают на одни и те же грабли. Чаще всего проблемы возникают из за попытки решить все одной волшебной коробкой или подключением одной услуги без понимания того, какие уровни защиты она покрывает.
Среди распространенных ошибок:
Наконец, часто забывают о внутренних сервисах. Защита концентрируется на официальном сайте, а вспомогательные панели управления, API для партнеров или внутренние веб приложения остаются доступными напрямую и без какой либо фильтрации. В результате удар по «забытым» сервисам может парализовать ключевые бизнес процессы не хуже, чем атака на главный портал.
Иногда можно услышать аргумент «мы слишком маленькие, нас никто атаковать не будет». На практике многие DDoS кампании автоматизированы, и под раздачу попадают все, кто оказался в диапазоне, который использует злоумышленник. Кроме того, малый бизнес может стать косвенной целью например, как часть цепочки атаки на крупного партнера.
Если бюджет ограничен, имеет смысл выстроить базовый набор мер, не уходя в сложные и дорогие решения:
Полезно также заранее подготовить сценарии взаимодействия с клиентами и партнерами на случай инцидента. Краткие шаблоны сообщений и понятное объяснение происходящего помогают сохранить доверие, даже если атака все же привела к временному отказу сервиса.
DDoS давно перестал быть чисто технической проблемой администраторов. Это риск, который напрямую влияет на деньги, репутацию и доверие клиентов. Понимание разницы между L4 и L7 атаками помогает видеть картину целиком: где уязвим канал, где может не выдержать приложение, какие зоны ответственности у оператора, у сервисов защиты и у вашей собственной команды.
Не существует универсального «щита» от всех сценариев. Но можно выстроить разумный баланс: договориться с провайдером о защите на сетевом уровне, закрыть веб приложения через специализированные экраны и сервисы, привести в порядок архитектуру и наблюдаемость, а также заранее подготовить план действий. Тогда вопрос «DDoS L4 vs L7» перестанет звучать как абстрактная теория и превратится в понятный набор практических решений, от которых зависит стабильность вашего бизнеса.