Ad

CVE-2026-72887

CRITICAL CVSS 3.1: 9,8 EPSS 0.55%
Обновлено 26 августа 2026
Net
Параметр Значение
CVSS 9,8 (CRITICAL)
Уязвимые версии до 0.32
Тип уязвимости CWE-757
Поставщик Net
Публичный эксплойт Нет

Версии Net::OAuth::Client до 0.32 для Perl позволяют поставщику услуг автоматически понизить версию OAuth 1.0a до OAuth 1.0 в get_request_token. При передаче обратного вызова конструктору выбирается OAuth 1.0a. Затем get_request_token отменяет этот выбор, когда в ответе токена запроса отсутствует oauth_callback_confirmed, без исключений, без предупреждений и без возможности требовать версию 1.0a.

Запрос токена доступа создается на основе класса сообщений OAuth 1.0, который не имеет параметра verifier, поэтому oauth_verifier исключается из запроса, даже если он был передан get_access_token. oauth_verifier — это привязка, добавленная OAuth 1.0a между этапом авторизации и обменом токенов. Приложение, которое запросило 1.0a и получило 1.0, открыто для фиксации сеанса OAuth 1.0, при котором злоумышленник получает токен запроса, просит жертву авторизовать его, а затем самостоятельно завершает обмен, связывая учетную запись провайдера жертвы с сеансом, который контролирует злоумышленник. Никакие действия злоумышленника не приводят к переходу на более раннюю версию: достаточно провайдера, который не подтверждает обратный вызов.

Показать оригинальное описание (EN)

Net::OAuth::Client versions before 0.32 for Perl allow the service provider to silently downgrade OAuth 1.0a to OAuth 1.0 in get_request_token. Passing a callback to the constructor selects OAuth 1.0a. get_request_token then revokes that choice when the request token response omits oauth_callback_confirmed, with no exception, no warning and no option to require 1.0a. The access token request is built from the OAuth 1.0 message class, which has no verifier parameter, so oauth_verifier is dropped from the request even when get_access_token was passed one. oauth_verifier is the binding that OAuth 1.0a added between the authorization step and the token exchange. An application that asked for 1.0a and gets 1.0 is open to OAuth 1.0 session fixation, where an attacker obtains a request token, has the victim authorize it, and then completes the exchange themselves, linking the victim's provider account to a session the attacker controls. No attacker action sets up the downgrade: a provider that does not confirm the callback is enough.

Характеристики атаки

Способ атаки
По сети
Атака возможна удалённо
Сложность
Низкая
Легко эксплуатировать
Нужны права
Не требуются
Права не нужны
Участие пользователя
Не требуется
Не нужно действие пользователя

Последствия

Конфиденциальность
Высокое
Полная утечка данных
Целостность
Высокое
Полная модификация данных
Доступность
Высокое
Полный отказ в обслуживании

Строка CVSS v3.1

Тип уязвимости (CWE)