CVE-2026-85491 in Catalyst::SealИнформация

Сводка

по VulDB • 25.09.2026

Версии Catalyst::Seal до 0.03 для Perl позволяют одному запросу отключить путь или провести другой запрос мимо проверки авторизации благодаря диспетчерской мемоизации (dispatch memo), ключом которой служит только путь запроса.

Catalyst::Seal заменяет метод prepare_action диспетчера на версию, которая запоминает результат разрешения пути: какой тип диспетчирования совпал, на каком уровне и что осталось в качестве аргументов. Ключом является путь запроса и ничего более. Роли действий (action roles), которые сопоставляются по методу, типу контента, схеме или параметрам запроса, делают этот результат зависимым от состояния, которое не передается через ключ; поэтому мемоизированный ответ применяется к запросу, для которого он не был создан.

Путь, который не разрешается ни в какое действие, также запоминается (мемоизируется), и повторное использование этой записи приводит к возврату без проверки типа диспетчирования, из-за чего действие не устанавливается и запрос завершается ошибкой. GET-запрос к пути, для которого действие объявлено как доступным только через POST, поэтому отключает этот путь для всех последующих запросов, включая корректный POST. Запись, которая успешно разрешалась в какое-то действие, воспроизводит уровень, на котором остановилось предыдущее спускание по дереву маршрутизации. Если действие, доступное только через POST, находится ниже более поверхностного действия с тем же путем, GET запоминает (мемоизирует) этот поверхностный маршрут, и последующий POST диспетчеризуется туда, при этом auto() защищает глубинный контроллер от выполнения.

Мемоизация очищается только при регистрации нового действия, что происходит на этапе настройки; следовательно, запись сохраняется в течение всего времени жизни процесса, а ограничение в 2048 записей определяет максимальное количество путей, которые один вызывающий может отключить. В измеренной конфигурации ошибочная маршрутизация приводит к менее привилегированному действию, поэтому это сбой проверки авторизации, а не повышение привилегий.

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

Ответственный

CPANSec

Резервировать

03.09.2026

Раскрытие

25.09.2026

Модерация

принято

Вход

VDB-409808

EPSS

0.00000

KEV

Нет

Деятельности

Очень низкий

Источники

Do you know our Splunk app?

Download it now for free!