Здравствуйте! Продолжая опубликовать серии статей, посвященные безопасности от заражения компьютерных вирусов, в сегодняшнем выпуске продолжим рассматривать одну из разновидность DDoS атак.

Slowloris — это программа DDoS атаки, которая позволяет злоумышленнику сокрушить целевой сервер, открывая и поддерживая множество одновременных HTTP-соединений между злоумышленником и целью. Многие термины и определения для новичков могут запутать и не придать смысл принцип самой атаки, но я постараюсь выделить отдельные ключевые моменты, чтобы в целом объяснить суть как работает атака Slowloris.

Как работает атака Slowloris?

Slowloris — это атака уровня приложения, которая работает с использованием частичных HTTP-запросов. Атака функционирует, открывая соединения с целевым веб-сервером, а затем сохраняя эти соединения открытыми до тех пор, как это возможно.

Что такое HTTP?

Прежде всего, я бы хотел отметить один небольшой нюанс, дело в том, что Slowloris не является категорией атаки, но вместо этого является конкретным инструментом, предназначенным для того, чтобы позволить одной машине снять сервер без использования большой пропускной способности. В отличие от DDoS-атак, основанных на использовании полосы пропускания, таких как усиление NTP, этот тип атаки использует низкую пропускную способность и вместо этого стремится использовать ресурсы сервера с запросами, которые кажутся медленнее обычного, но в противном случае имитируют обычный трафик. Он попадает в категорию атак, известных как «слабые и медленные».

Какие бывают киберугрозы?

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

Атаки Slowloris происходит в 4 шага:

— Сначала злоумышленник открывает несколько подключений к целевому серверу, отправляя несколько частичных заголовков HTTP-запросов.

— Цель открывает поток для каждого входящего запроса с намерением закрыть поток после завершения подключения. Для того чтобы быть эффективным, если соединение занимает слишком много времени, сервер будет уходить в тайм-аут, освобождая поток для следующего запроса.

— Чтобы предотвратить истечение времени ожидания соединения цели, злоумышленник периодически отправляет частичные заголовки запроса цели, чтобы сохранить его. В сущности говоря, «я все еще здесь! Я просто медленный, пожалуйста, подожди меня».

— Целевой сервер никогда не сможет освободить любое из открытых частичных подключений во время ожидания завершения запроса. После использования всех доступных потоков сервер не сможет отвечать на дополнительные запросы, поступающие от обычного трафика, что приведет к отказу в обслуживании. Ключом Slowloris является его способность вызвать много проблем с очень небольшой пропускной способностью.

Как смягчается атака Slowloris?

Для веб-серверов, уязвимых для Slowloris, существуют способы смягчения некоторых последствий. Параметры смягчения для уязвимых серверов можно разделить на 3 общие категории:

1. Увеличение доступности сервера. Увеличение максимального числа клиентов, разрешенного сервером в любой момент времени, приведет к увеличению числа подключений, которые злоумышленник должен заполнить, прежде чем он сможет перегрузить сервер. Реально, злоумышленник может масштабировать количество атак, чтобы преодолеть емкость сервера независимо от увеличения.

2. Ограничение скорости входящих запросов. Ограничение доступа на основе определенных факторов использования поможет смягчить атаку Slowloris. Такие методы, как ограничение максимального количества подключений, разрешенных одному IP-адресу, ограничение медленных скоростей передачи и ограничение максимального времени, в течение которого клиенту разрешено оставаться на связи, — это все подходы для ограничения эффективности низких и медленных атак.

3. Облачная защита. Использовать службу, которая может функционировать как обратный прокси-сервер, защищая исходный сервер.

Как Cloudflare смягчает атаку Slowloris?

Cloudflare буферизует входящие запросы перед отправкой на исходный сервер. В результате «слабый и медленный» трафик атаки, такой как атаки Slowloris, никогда не достигает намеченной цели.