Уязвимость HTTP/2 CONTINUATION Flood угрожает веб-серверам DoS-атаками

Уязвимость HTTP/2 CONTINUATION Flood угрожает веб-серверам DoS-атаками

Уязвимость HTTP/2 CONTINUATION Flood угрожает веб-серверам DoS-атаками

Как показало новое исследование специалиста по кибербезопасности Бартека Новотарски, фрейм CONTINUATION в протоколе HTTP/2 можно использовать для проведения атак вида DoS (отказ в обслуживании). Вектор получил имя HTTP/2 CONTINUATION Flood.

Новотарски сообщил о своей находке представителям Координационного центра CERT 25 января 2024 года. Сам центр на днях опубликовал по этому поводу следующее сообщение:

«Многие имплементации HTTP/2 некорректно ограничивают или обрабатывают число фреймов CONTINUATION, отправленных в одном потоке. Условный атакующий может послать пакеты целевому серверу вместе с потоком фреймов CONTINUATION, которые не будут фигурировать в списке заголовков в памяти».

«Тем не менее эти фреймы всё равно будут обрабатываться и декодироваться сервером, приводят к сбою в работе из-за нехватки памяти».

HTTP/2, как и предыдущая версия — HTTP/1, использует поля заголовков в запросах и ответах. Эти поля могут содержать списки, которые обрабатываются и разбиваются на блоки заголовков, а последние затем делятся на фрагменты и передаются внутри HEADER. Это и называется фреймами CONTINUATION.

Последний фрейм должен содержать флаг END_HEADERS, что даёт понять удалённой точке: это конец блока заголовка. Как отметил Новотарски, CONTINUATION Flood представляет собой класс уязвимостей в нескольких реализациях протокола HTTP/2.

И этот вектор атаки представляет большую угрозу, чем Rapid Reset, о которой рассказывали в октябре 2023 года.

«Одно устройство (в некоторых случаях это может быть одно TCP-соединение или несколько фреймов) может привести к недоступности сервера — начиная от сбоя, заканчивая заметным снижением производительности», — объясняет Новотарски.

Проблема затрагивает:

Замедление Telegram ударило по разработчикам российских ОС

В России оказался недоступен сервис git.kernel.org, через который разработчики получают обновления исходного кода ядра Linux. Крупные участники сообщества подтвердили проблему и связали её с действиями Роскомнадзора. Сам регулятор свою причастность отрицает.

Первые сообщения о сбоях в доступе к kernel.org появились 12 февраля. Пользователи отмечали, что зайти на ресурс без использования средств подмены адреса невозможно — ни по протоколу git, ни по HTTP. Аналогичные трудности возникли и с рядом других сайтов, в том числе с онлайн-курсами по Python и ресурсами разработчиков некоторых системных библиотек.

Портал Digital Report сообщил, что сбои могли быть связаны с мерами Роскомнадзора по замедлению Telegram. По версии издания, при попытке точечно ограничить трафик мессенджера и популярных VPN-протоколов (WireGuard, OpenVPN) применялась тактика «ковровых» блокировок по диапазонам IP-адресов. В результате под ограничения могли попасть CDN-сети, на которых размещаются зеркала Linux Kernel Archives.

Как отмечает Digital Report, ещё 12 февраля разработчики обратились в профильные группы Минцифры с просьбой разобраться в ситуации. По их словам, официальной реакции долгое время не последовало, а обсуждения сопровождались смесью тревоги и иронии.

Лишь сегодня Роскомнадзор в ответ на запрос издания «Подъём» сообщил: «Решения уполномоченных органов в отношении сервисов Linux не поступали, меры ограничения к ним не применяются».

После публикации комментария доступ к сервису начал постепенно восстанавливаться. Об этом, в частности, рассказал Алексей Смирнов в комментарии для Forbes.

Накануне похожие проблемы возникли у пользователей Windows: обновления системы либо не загружались, либо устанавливались с заметными задержками. Тогда Роскомнадзор также отрицал свою причастность.

RSS: Новости на портале Anti-Malware.ru