Что такое атака HTTP flood?

Атака HTTP flood — это особая форма DDoS-атаки (Distributed Denial of Service). Атакующий пытается вывести из строя целевой веб-сайт или приложение посредством огромного количества посещений из разных мест. Атаку HTTP flood часто называют атакой уровня 7. Уровень 7 относится к «прикладному уровню» в модели OSI, которая гласит, что интернет состоит из 7 уровней.

Атака на этом уровне заключается в лишении сети или сервера их ресурсов. Как только аппаратное обеспечение перестает располагать достаточными ресурсами, ответы на запросы через клиента требуют больше времени. Поскольку на оборудование продолжает поступать бесчисленное количество запросов, возникает постоянная перегрузка системы, и сервер или вся сеть становятся недоступными.

Когда злоумышленники используют HTTP-флуд, они пытаются вызвать крах сервера с помощью запросов, которые являются совершенно стандартными. Как этот процесс HTTP превращается в опасную атаку?

Как происходит HTTP flood?

Атака HTTP flood основана на запросе GET или POST клиента. Когда клиент — другими словами, браузер, вызывающий веб-сайт — отправляет один из этих запросов, сервер обрабатывает запрос и отправляет результат обратно клиенту.

С помощью запроса GET извлекается статическое содержимое, такое как изображения и текстовые блоки. Запрос POST используется, если запрашивается доступ к динамическим ресурсам. Проще говоря, метод GET получает данные от сервера, а метод POST отправляет данные на сервер. Оба метода могут применяться в атаке, однако метод POST используется чаще, поскольку он вызывает сложную обработку со стороны сервера.

Атака HTTP flood основана на том, что множество запросов подается одновременно в течение длительного периода времени. При этом для увеличения количества запросов обычно используется ботнет. Атака HTTP flood построена таким образом, что сервер выделяет максимально возможное количество ресурсов на каждый запрос. В нормальной ситуации сервер должен работать именно так, поскольку не получает тысячи или сотни тысяч запросов в минуту. Однако при большом количестве запросов и обращений злоумышленник ожидает, что сервер будет перегружен огромным количеством процессоемких запросов и веб-сайт или приложение перестанет корректно отображаться.

Как остановить атаку

Поскольку определенно может случиться так, что страница получает много действительного трафика, трудно определить, является ли повышенное количество запросов результатом атаки или только результатом успешной маркетинговой кампании. Однако при обнаружении атаки HTTP flood брандмауэры могут определить и заблокировать подозрительные IP-адреса.

В качестве первого шага вы можете отправить JavaScript Challenge обратно клиенту. Это позволит вам проанализировать, принадлежит ли клиент к бот-сети или является обычным пользователем. В отличие от ботов, любой браузер обычного пользователя может справиться с этим дополнительным препятствием.

Если стратегия атакующего известна, в систему брандмауэра можно ввести простые правила, автоматически блокирующие IP-адрес ботнета. Обычно HTTP-флуд можно выявить и остановить всего за несколько минут, как только вы узнаете, что именно он является причиной сбоя системы.

Как можно защититься от этих атак?

Защититься от атаки HTTP flood сложно, поскольку запросы изначально выглядят как обычный трафик на сайте. На сервер не посылается вредоносное ПО, и нет попыток использовать возможные бреши в системе безопасности. Вместо этого злоумышленники заваливают сервер авторизованными доступами. Поскольку при этом используется значительно меньшая пропускная способность, чем при существенном проникновении в код страницы, на ранних стадиях атаки чаще всего остаются нераспознанными.

Большинство веб-сайтов прибегают к тесту captcha, который должен быть выполнен вручную реальным пользователем. Таким образом, ботнет можно выявить заранее и заблокировать его IP-адреса. Однако существуют также брандмауэры для веб-сайтов и приложений. Эти системы просматривают и анализируют трафик, поступающий на сайт. Они лишь минимально замедляют работу сайта, а взамен гарантируют его защиту и стабильность. Если сам сайт уже требует больших объемов данных и процессов, есть возможность встроить экран загрузки, пока главная страница загружается в фоновом режиме.

Примечание:

HTTP flood — это только одна из различных форм DDoS-атак. Злоумышленники также могут пытаться остановить работу веб-серверов с помощью таких методов, как ping flood, SYN Flood, UDP Flood и ping of death.

Оцените статью
cdelat.ru
Добавить комментарий