CVE-2026-66884: Oidcc.Plug.AuthorizationCallback accepts callbacks with no authorize session or no state parameter, defeating CSRF protection
Оценка Noroxi
Приоритет: Наблюдать (оценка срочности 8/100)
- В отслеживаемых источниках (CISA KEV, Exploit-DB, Metasploit, Nuclei, GitHub) нет публичного эксплойта или записей об эксплуатации.
- Вероятность эксплуатации в ближайшие 30 дней: 0,25% (FIRST EPSS).
- Может быть вызвана любым, у кого есть доступ через интернет. Учётная запись или пароль не требуются. Особые условия не требуются; воспроизводится стабильно.
- Исправленная версия: Erlang Ecosystem Foundation oidcc_plug 0.5.0, 97d75afc57826dca31989b47d6e2a3c136039917.
Пока низкий приоритет. Обновитесь до Erlang Ecosystem Foundation oidcc_plug 0.5.0, 97d75afc57826dca31989b47d6e2a3c136039917 или новее.
Формируется автоматически по данным записи: CVSS (NVD и CNA), CISA KEV и SSVC, FIRST EPSS, источники эксплойтов, исправленные версии. Как мы считаем
Первоисточники: NVD · CVE.org · FIRST EPSS
Cross-Site Request Forgery vulnerability in Erlang Ecosystem Foundation oidcc_plug (Oidcc.Plug.AuthorizationCallback module) allows an attacker to make a victim's browser complete an authorization flow the victim never initiated. This vulnerability is associated with program file lib/oidcc/plug/authorization_callback.ex and program routine Oidcc.Plug.AuthorizationCallback.call/2. A callback request that carries no Oidcc.Plug.Authorize session is processed with every security check disabled rather than being rejected. call/2 substitutes permissive defaults for the absent session, and each downstream check treats its value as nothing to compare and returns :ok, so the nonce, state, PKCE, peer IP and user agent checks are all skipped. A separate clause of check_state/2 also accepts a state-less request when a verifier is present. An attacker obtains an authorization code for their own provider account, then induces the victim to visit the callback endpoint with that code and no state parameter. The application signs the victim in as the attacker, so the victim's subsequent actions occur in the attacker's account where the attacker can read them. Applications reusing one callback for both signing in and linking a provider account are further exposed to account takeover, the attacker's account becoming linked to the victim's. The permissive fallback serves no conforming flow. Third-party-initiated login reaches a relying party at a separate login initiation endpoint and causes it to send a fresh authentication request, and this library implements no such endpoint. Oidcc.Plug.Authorize always sends a state parameter, which an authorization server must echo, so no legitimate callback lacks one. This issue affects oidcc_plug: from 0.2.0-beta.1 before 0.5.0.
- Опубликовано
- 4 авг. 2026 г.
- Обновлено
- 23 окт. 2026 г.
- EPSS
- 0,2 % · 17-й процентиль
- CWE
- CWE-352
Инструменты для отчёта
Оценка срочности
8
Наблюдать
Пока низкий приоритет.
- CVSS
- 8 / 40 · 2.1 / 10
- CISA KEV
- 0 / 30 · Нет в списке
- EPSS
- 0 / 30 · 0,2 %
Решение CISA SSVC
- Эксплуатация
- proof of concept
- Автоматизируемо
- нет
- Техническое влияние
- частичное
Vulnrichment: входные данные дерева решений CISA.
Оценка CNA и NVD
- NVD
- —
- CNA · EEF
- 2,1
- NVD ещё не выставил свою оценку; показана оценка CNA.
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N
Оценка присваивающего органа и независимая оценка NVD. Разрыв означает, что критичность спорна.
Узнайте, когда запись изменится
- Нет в KEV: эксплуатация в реальных атаках не зафиксирована
- Публичного эксплойта нет
- Исправление выпущено
Если что-то из этого изменится, сообщим в ежедневной сводке.
У вас WordPress? Проверьте сайт бесплатно в WP Lens
Анализ Noroxi
Что это значит для вашей инфраструктуры?
Оценка выше формируется автоматически по данным записи и не знает вашей среды. Наша команда проверит на ваших системах, действительно ли уязвимость эксплуатируема и какой меры достаточно.
Мы используем этот продукт, нужна помощьЗатронутые системы
Затронута ли ваша версия?
Выберите продукт и введите свою версию. Она сравнивается с диапазонами этой записи прямо в браузере и никуда не отправляется.
—
Версии, заявленные вендором
Диапазоны затронутых версий, заявленные назначающей организацией (EEF). Не зависят от анализа CPE в NVD и обычно опережают его.
Erlang Ecosystem Foundation oidcc_plug
- 0.2.0-beta.1 и новее · до 0.5.0затронута · semver
- e577ae73b9080693442916043a22d8f05491dd93 и новее · до 97d75afc57826dca31989b47d6e2a3c136039917затронута · git
Затронутые пакеты
Данные OSV и GitHub Advisory: экосистема, пакет и диапазон. Сопоставление SBOM использует эту таблицу.
| Экосистема | Пакет | Затронутый диапазон | Исправление |
|---|---|---|---|
| Hex | oidcc_plug | с 0.2.0-beta.1 · до 0.5.0 | 0.5.0 |
Тот же продукт
erlang ecosystem foundation: все записиДругие записи с наивысшей оценкой для того же основного продукта.
- CVE-2026-66883Oidcc.Plug.Authorize user agent session binding inert due to case-sensitive header lookup25Наблюдать
Исправление
На какую версию обновиться
Версии с исправлением по данным вендора, реестров пакетов и Microsoft. Перед обновлением сверьтесь с бюллетенем вендора.
| Продукт / пакет | Исправленная версия | Источник |
|---|---|---|
| Erlang Ecosystem Foundation oidcc_plug | 0.5.0 | Вендор (CNA) |
| Erlang Ecosystem Foundation oidcc_plug | 97d75afc57826dca31989b47d6e2a3c136039917 | Вендор (CNA) |
| Hex:oidcc_plug | 0.5.0 | Реестр пакетов (OSV) |
Статус эксплойта
Публичный эксплойт неизвестен
Публичный эксплойт пока не обнаружен. Это не значит, что вы в безопасности, лишь что порог чуть выше.
Контекст для исследователя
Для пентестеров и исследователей: профиль атаки, расхождение оценок, хронология, коммиты исправлений, авторы, кандидаты в варианты и цепочки, охват bug bounty. Всё выводится из имеющихся данных; без кода эксплойтов.
Хронология
От публикации до сегодня: proof of concept, модуль Metasploit, CISA KEV и запись об исправлении. Даты — как сообщают источники.
Кроме публикации датированных событий нет.
Ежедневная оценка FIRST EPSS; записываются только изменения от 0,01 (ступенчатый график).
Ссылки на патчи и коммиты
Коммиты, PR и diff среди источников. Отправная точка для patch-diff и поиска вариантов; это исправления, не эксплойты.
Авторы
Все исследователиНашедшие, сообщившие и аналитики, названные в записи CNA. Нажмите имя, чтобы увидеть другие записи исследователя.
- Mathias Polligkeitнашёл
- Jonatan Männchen / EEFрецензент исправления
Кандидаты в варианты
Тот же продукт, тот же класс уязвимости, в пределах 18 месяцев. Если патч не закрыл первопричину, родственная ошибка здесь.
Ночной расчёт связей ничего не нашёл.
Кандидаты в цепочки
Обход аутентификации и уязвимость, требующая привилегий, в одном продукте и близко по времени: вместе они могут дать путь без аутентификации.
—
Охват bug bounty
Известной публичной программы нет.
Источник: bounty-targets-data (публичные списки HackerOne, Bugcrowd, Intigriti, YesWeHack).
Технические детали
Условия атаки
- Может быть вызвана любым, у кого есть доступ через интернет.
- Учётная запись или пароль не требуются.
- Особые условия не требуются; воспроизводится стабильно.
В случае успеха
- Конфиденциальность
- Целостность
- Доступность
- Вектор атаки
- Сеть
- Сложность атаки
- Низкая
- Требуемые привилегии
- Не требуются
- Взаимодействие с пользователем
- A
- Область действия
- X
Класс уязвимости (CWE)
CWE-352 · Cross-Site Request Forgery (CSRF)Вектор CVSS
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
nvd-secondary
Первопричина
Запросы, изменяющие состояние, опираются на сессионный cookie, который браузер отправляет автоматически; то, что запрос пришёл со страницы самого пользователя, не проверяется.
Ошибка в коде
Весь класс CWE-352Показательный пример этого класса уязвимостей. Это не исходный код вендора; показан ошибочный шаблон и его исправление.
Уязвимый код
app.use(session({ cookie: { httpOnly: true } }));
app.post("/account/address", updateAddress);Исправленный код
app.use(session({ cookie: { httpOnly: true, sameSite: "lax" } }));
app.post("/account/address", csrfProtection, updateAddress);Контекст атаки
Шаблоны атак MITRE CAPEC и техники ATT&CK для этого класса уязвимости (CWE). Отправная точка для правил обнаружения и threat hunting.
Журнал изменений
- Исправление✗ → ✓
Для отслеживаемых записей эти изменения приходят и как уведомления. →
Источники
Показать все источники (ещё 3)Свернуть
Рекомендации вендоров и официальные записи. Ссылки на эксплойты/PoC намеренно исключены.