Apache Storm DRPC: неаутентифицированный рост памяти (CVE-2026-82439)
В Apache Storm DRPC обнаружена уязвимость неограниченного роста памяти: сервер бессрочно хранит запись очереди для каждого встреченного имени функции, а имена приходят от клиента и никак не ограничены. По умолчанию авторизация (`drpc.authorizer`) не включена, поэтому атака не требует учётных данных. Итог — постепенное исчерпание heap вплоть до отказа в обслуживании.
Подробности
Затронут компонент Apache Storm DRPC (Apache Software Foundation). Суть уязвимости — в механизме учёта очередей запросов. DRPC-сервер хранит отображение (map) из имени функции в очередь запросов и создаёт запись при первом появлении имени функции. Ни один участок кода эту запись не удаляет: очистка запроса убирает сам запрос из его очереди, а процедура завершения работы опустошает очереди, однако объект очереди и соответствующая ему запись в map остаются на всё время жизни процесса. Имена функций приходят от клиента и не ограничиваются набором функций, зарегистрированных какой-либо топологией. Поэтому число удерживаемых записей ограничено лишь количеством различных имён, которые атакующий решит отправить, а каждая сохранённая запись содержит само имя. Поскольку параметр `drpc.authorizer` по умолчанию не задан, для доступа к эндпоинту учётные данные не требуются. Удерживаемое состояние является постоянным, а не временным всплеском нагрузки: эффект накапливается до тех пор, пока DRPC-сервер не исчерпает свой heap. Значение CVSS в записи CVE не указано.Что делать
Основная рекомендация — обновление до версии 3.1.0, в которой очередь функции удаляется, как только в ней ничего не ожидает. Если обновление невозможно немедленно, следует: - настроить `drpc.authorizer`, чтобы доступ к DRPC-эндпоинтам имели только доверенные субъекты; - убедиться, что DRPC-порты недоступны из недоверенных сетей. Эти меры не устраняют саму уязвимость, но ограничивают круг тех, кто может её эксплуатировать. Итог: уязвимость не требует аутентификации и приводит к накоплению неудаляемого состояния в памяти DRPC-сервера, что создаёт риск отказа в обслуживании. Для защиты необходимо обновление до Apache Storm 3.1.0; в качестве временной меры — включение авторизации DRPC и изоляция его портов от недоверенных сетей.Источник: CVE Project (cvelistV5)
