Продолжение статьиn
Нужна защита от ДДос атак, обращайтесь, [email protected]
Атакер пытается использовать уязвимости протоколов третьего, четвертого и седьмого уровня. В основном целью являются уязвимости приложений, работающих на сервере. Последствиями атаки может быть как превышение лимитов используемых протоколов, так и перегрузка ресурсов сервера.n
SLOWLORIS атака
Алгоритм: Он заключается в том, что сохранить несколько соединений с серверами жертвы открытыми как можно дольше. Для этого непрерывно периодически шлются частичные HTTP-запросы, ни один из которых не завершен. Атакуемые сервера открывают больше соединений, ожидая завершения каждого. Периодически атакер отправляет последующие HTTP-запросы, но никогда фактически не завершает соединение. В конечном итоге максимальный пул одновременных подключений целевого сервера заполняется, а дополнительные (допустимые) попытки подключения запрещаются.nnТо, что запросы не несут вредоносного кода, помогает атаке оставаться незамеченной системами защиты. Атака требует времени, так как открытие новых вредоносных запросов происходит после закрытия реальных. Для маскировки некоторые запросы могут закрываться и открываться снова. Атака может быть настроена с разными запросами для разных хостов или с подавлением записи логов.nnnn nnПротиводействие: Настроить сервер с целью смягчения атаки: увеличить максимальное количество клиентов, ограничить число соединений с одного IP-адреса, ограничить минимальную скорость передачи, ограничить время соединения для клиента.nnВ случае Apache можно установить модули mod_limitipconn, mod_qos, mod_evasive, mod security, mod_noloris, and mod_antiloris которые должны смягчить атаку. С версии 2.2.15, Apache предоставляет модуль mod_reqtimeout в качестве официального решения, поддерживаемого разработчиками.n
R.U.D.Y. (R-U-DEAD-YET?) атака
Алгоритм: Целью так же является удержание соединений с клиентами. Атакер отправляет HTTP POST запросы с ненормально длинным ‘content-length’ заголовком. После начинает ввод данных по 1 байту каждые ~10 секунд с очень низкой скоростью. Атака создает огромное количество потоков приложений, в то время как длинное поле «Content-Length» предотвращает закрытие соединений с сервером. В конечном счете, атака исчерпывает таблицу соединений сервера жертвы, вызывая сбой сервера. Что интересно, при такой атаке сеть и физические ресурсы сервера не пострадают.nnПротиводействие: Для обнаружения нужно мониторить состояние ресурсов сервера, включая длинные и простаивающие открытые сетевые подключения или зависшие процессы приложений. Другим способом является анализ и имитация поведения открытых соединений. Подозрительная деятельность на основе анализа может быть выявлена и атака смягчена.n
SlowPost атака
Алгоритм: Атакер отправляет HTTP POST запросы с низкой частотой в пределах одной сессии. Это заставляет сервер ждать обработки таких запросов. Приводит к тому, что количество ресурсов сервера исчерпывается, и реальные пользователи не могут получить доступ.nnnn nnПротиводействие: Можно настроить сервер с целью смягчения атаки: установить тайм-аут заголовка HTTP, удалять все сессии, продолжительность которых превышает лимит и др.n
HTTP-flood атака
Алгоритм: Атакер использует кажущиеся реальными HTTP GET или POST запросы для атаки на веб-сервер или приложение. Цель атаки – задействовать наибольшее количество ресурсов для выполнения запроса и ответа. Post запросы для этих целей подходят больше, так как с их помощью можно заставить выполнять приложение более сложные операции на сервере. Но уязвимые get запросы легче выявить и легче использовать в усиливающей сети.nnДля успеха атаки требуется хорошее понимание сайта жертвы, и каждая атака создается по её уязвимостям. Поэтому такие атаки тяжелее выявлять и отражать. При атаке используется botnet – усиливающая сеть, компьютеры которой заражены вирусом.nnnnПротиводействие: Использование подходов смягчения, основанных на профилировании трафика с определением репутации IP, отслеживании аномальной активности, использование прогрессивных проверок безопасности (например, запрос на анализ JavaScript). Установка Apache mod_evasive and mod_security модулей для гибкой настройки блокировки подозрительной деятельности.n
SYN-flood атака (или “half-open” attack)
Алгоритм: Атакер отправляет через TCP-протокол SYN-пакет жертве, но предварительно поменяв свой IP-адрес на несуществующий. Жертва отправляет ответ SYN/ACK на несуществующий IP-адрес и ждет ответ, то есть переходит в состояние SYN-RECEIVED. Ответ при этом помещается в буфер на 75 секунд. Если запросов очень много, лимит по количеству соединений будет исчерпан, и новые соединения будут просто удаляться.nnnnПротиводействие:n
- Micro blocks – администратор выделяет микро-запись размером 16 byte в памяти сервера для каждого SYN-запроса вместо создания полноценного соединения.
- SYN cookies – запросы шифруются и память для соединения выделяется только тогда, когда сервер подтвердит легитимность запроса.
- RST cookies – для первого соединения нового пользователя сервер намеренно шлет не валидный SYN-ACK. Если клиент легитимный, сервер получает от него сообщение, что SYN-ACK не валидный. Если так происходит, то далее сервер принимает от подтвержденного клиента запросы.
- Stack tweaking – администратор может настроить сервер так, что он сам будет смягчать атаку. Можно реализовать через случайное удаление соединений или уменьшение времени ожидания.
- Использование DPI-систем позволяет проверить соединение на легитимность промежуточным веб-сервисом, и только после этого устанавливать соединение.
LAND атака
Алгоритм: Атакер шлет TCP-пакеты с флагом SYN, в которых исходящий IP-адрес заменен на адрес жертвы. Жертва будет отправлять ответы сама себе циклически. Это Может вызвать проблему с перегрузкой CPU, вызывая блокировку жертвы.nnnnПротиводействие: Если добавить проверку соответствия адреса отправителя адресу получателя, то такие пакеты можно попросту блокировать.n
Fragmented UDP flood атака
Алгоритм: Жертва получает фрагментированные UDP-пакеты, на сборку и анализ которых требуются ресурсы. При высокой интенсивности атаки, ресурсы сервера будут исчерпаны.nnПротиводействие: Если UDP-протокол не обязателен для веб-сервиса, его можно попросту отключить. В случае если протокол должен обязательно использоваться, смягчение атаки достигается за счет анализа входящего трафика и блокировки вредоносного.n
BlackNurse атака
Алгоритм: Используя уязвимости брандмауэра, атакер посылает ICMP-пакеты Type 3 Code 3. Таким образом, он перегружает защиту и делает веб-сервис недоступным.nnПротиводействие: Добавление доверенных адресов, с которыми можно обмениваться ICMP-пакетами. Выключение ICMP-пакетов Type 3 Code 3 в WAN интерфейсе легко решает проблему. Также возможно использовать специальный софт.n
Mail Bomb атака
Алгоритм: Атака нацелена на почтовый ящик жертвы либо на хостинг ящика. Атакер отсылает огромное количество писем жертве. Атакер может:n
- Просто высылать письма с разных IP.
- Подписывать жертву на множество реальных подписок.
- Высылать в письмах ZIP-архив, который сложно распаковать.
Это ведет к перегрузке почтового ящика и дестабилизации хостинга.n
Zero Day атака
Алгоритм: Целью атакера является уязвимость в новом коде и ее использование. Найдя уязвимость, хакер использует ее для подходящей DDoS атаки.nnПротиводействие: Тестирование нового кода в приближенной к реальной среде. Добавление периода раскатки перед выпуском в продакшн. Возможность быстро откатить новый релиз в случае вредоносной деятельности.n
Переполнение сервера лог-файлами
Алгоритм: Атакер использует ошибки в конфигурации сервера. Атака работает, когда размер лог файлов не ограничен, и они хранятся на том же диске, что и система. Атакер вызывает переполнение памяти через лог-файлы, что приводит к сбою в работе сервера.nnПротиводействие: Можно ограничить размер логов или хранить их на отдельном диске.n
Плохая система квотирования
Алгоритм: Для связи программы с WEB-сервером, может использоваться CGI-интерфейс. Для реализации атаки необходим доступ к нему. Атакер может написать скрипт, который задействует избыточное количество ресурсов и веб-сервис станет недоступен.n
Атака второго рода
Алгоритм: Цель атаки состоит в том, чтобы вызвать ложный запуск системы защиты, который блокирует сегмент сети, из которого возникла атака. В случае распределенной атаки или изменения IP-заголовка (что зависит от типа поведения безопасности) он будет полностью блокировать атакуемую сеть из Интернета, но без сбоя системы. В результате защита блокирует доступ реальных пользователей к веб-сервису.n
Итог
Атаки рода «Distributed denial of service» или DDoS являются преобладающей и возрастающей угрозой. Целями атак могут быть как государственные учреждения и крупнейшие организации, так и мелкие коммерческие проекты, благотворительные фонды. Количество крупных DDoS-атак резко возросло за последние несколько лет, оставляя каждый интернет-бизнес и веб-сайт под потенциальным риском.