VU#885548: Уязвимость типа "отказ в обслуживании" в HTTP/2 серверах через условия остановки управления потоком
Уязвимость типа "отказ в обслуживании" затрагивает HTTP/2 серверы, которые некорректно обрабатывают потребление ресурсов во время остановки управления потоком. Удаленные, неаутентифицированные злоумышленники могут использовать это, применяя параметры управления потоком для предотвращения передачи данных. Это приводит к чрезмерному буферизации серверных данных ответа, вызывая исчерпание памяти. HTTP/2 использует управление потоком, чтобы предотвратить перегрузку получателей отправителями посредством размеров окон. Клиенты могут остановить этот поток, не отправляя кадры WINDOW_UPDATE или устанавливая начальный размер окна равным нулю. Некоторые реализации серверов продолжают генерировать тела ответов, даже не имея возможности их отправить. Эти буферизованные данные занимают память сервера, причем каждый остановленный поток потребляет ресурсы до завершения соединения. Злоумышленники могут открыть множество потоков, запрашивать большие ресурсы и вызывать значительное накопление памяти. Это может привести к нестабильности системы, сбоям или снижению доступности сервиса. Поставщики выпустили обновления для устранения этой уязвимости, а внедрение ограничений ресурсов и завершение соединений помогает снизить риск.