Уязвимость 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-соединение или несколько фреймов) может привести к недоступности сервера — начиная от сбоя, заканчивая заметным снижением производительности», — объясняет Новотарски.

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

ИИ-агент попытался шантажом протолкнуть свой вклад в opensource-проект

Получив отказ в приеме предложенных изменений, автономный ИИ-кодер MJ Rathbun перешел на личности и попытался публично оскандалить мейнтейнера matplotlib, усомнившись в его компетентности и обвинив в дискриминации.

В своем блоге взбунтовавшийся помощник также заявил, что Скотт Шамбо (Scott Shambaugh) попросту боится конкуренции. В подтверждение своих слов он раскритиковал вклад оппонента в опенсорсный проект, подтасовав результаты «расследования».

В ответ Шамбо, тоже в паблике, пояснил, что отказ принять в целом полезное предложение был вызван нехваткой времени для его оценки, надо просто запастись терпением. В соответствии с политикой matplotlib все коды, создаваемые с помощью ИИ, должны проходить проверку, притом уже без участия таких ассистентов.

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

Аргумент на удивление утихомирил ИИ-шантажиста. Сменив гнев на милость, MJ Rathbun признал, что вел себя недопустимо.

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

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