Перейти к содержимому
Noroxi
CVE-2026-33745· NVD / CVE Program· CNA GitHub_M

cpp-httplib Client Leaks Authentication Credentials to Untrusted Hosts on Cross-Origin HTTP Redirect

cpp-httplib is a C++11 single-file header-only cross platform HTTP/HTTPS library. Prior to 0.39.0, the cpp-httplib HTTP client forwards stored Basic Auth, Bearer Token, and Digest Auth credentials to arbitrary hosts when following cross-origin HTTP redirects (301/302/307/308). A malicious or compromised server can redirect the client to an attacker-controlled host, which then receives the plaintext credentials in the `Authorization` header. Version 0.39.0 fixes the issue.

ВысокаяCVSS 7.4 · v3.1—Эксплойта нет Есть исправление
Опубликовано
26 мар. 2026 г.
Обновлено
17 июн. 2026 г.
EPSS
0,4 % · 26-й процентиль
Следить за этой CVE

Войдите, чтобы следить · Вы получите уведомление, если запись попадёт в KEV, получит эксплойт или обновится.

Инструменты для отчёта

JSON

Оценка срочности

29

Наблюдать

Пока низкий приоритет.

CVSS
29 / 40 · 7.4 / 10
CISA KEV
0 / 30 · Нет в списке
EPSS
0 / 30 · 0,4 %

Решение CISA SSVC

Эксплуатация
proof of concept
Автоматизируемо
нет
Техническое влияние
полное

Vulnrichment: входные данные дерева решений CISA.

Оценка CNA и NVD

NVD
7,4
CNA · GitHub_M
7,4
совпадают

Оценка присваивающего органа и независимая оценка NVD. Разрыв означает, что критичность спорна.

Затронутые системы

ВендорПродукт
yhirosecpp-httplib

Затронутые версии

Диапазоны версий NVD (для продуктов из каталога). Добавьте продукт в стек с версией, и сопоставление будет по ним.

  • yhirose cpp-httplibдо 0.39.0

Версии, заявленные вендором

Диапазоны затронутых версий, заявленные назначающей организацией (GitHub_M). Не зависят от анализа CPE в NVD и обычно опережают его.

  • yhirose cpp-httplib

    • < 0.39.0затронута

Затронутые пакеты

Данные OSV и GitHub Advisory: экосистема, пакет и диапазон. Сопоставление SBOM использует эту таблицу.

ЭкосистемаПакетЗатронутый диапазонИсправление
Debian:12cpp-httplibвсе версии—
Debian:14cpp-httplibдо 0.41.0+ds-30.41.0+ds-3
openSUSE:Tumbleweedcpp-httplibдо 0.42.0-1.10.42.0-1.1

Тот же продукт

yhirose: все записи

Другие записи с наивысшей оценкой для того же основного продукта.

  • CVE-2026-45372cpp-httplib: HTTP header value percent-decoding in server-side `parse_header` enables CRLF injection
    39Наблюдать
  • CVE-2025-66570cpp-httplib Untrusted HTTP Header Handling: Internal Header Shadowing (REMOTE*/LOCAL*)
    39Наблюдать
  • CVE-2026-46527cpp-httplib: Malicious `X-Forwarded-For` Under Trusted-Proxy Configuration Triggers Empty `vector::front()`, Leading to Undefined Behavior and Server Crash
    34Наблюдать
  • CVE-2026-22776cpp-httplib vulnerable to a denial of service (DOS) using a zip bomb
    34Наблюдать
  • CVE-2026-77358cpp-httplib: Use-after-free of TLS session in WebSocketClient::shutdown_and_close()
    32Наблюдать
  • CVE-2026-32627cpp-httplib has a Silent TLS Certificate Verification Bypass on HTTPS Redirect via Proxy
    32Наблюдать

Исправление

На какую версию обновиться

Версии с исправлением по данным вендора, реестров пакетов и Microsoft. Перед обновлением сверьтесь с бюллетенем вендора.

Продукт / пакетИсправленная версияИсточник
debian:cpp-httplib0.41.0+ds-3 · Debian:14Реестр пакетов (OSV)
opensuse:cpp-httplib0.42.0-1.1 · openSUSE:TumbleweedРеестр пакетов (OSV)

Статус эксплойта

Публичный эксплойт неизвестен

Публичный эксплойт пока не обнаружен. Это не значит, что вы в безопасности, лишь что порог чуть выше.

Контекст для исследователя

Для пентестеров и исследователей: профиль атаки, расхождение оценок, хронология, коммиты исправлений, авторы, кандидаты в варианты и цепочки, охват bug bounty. Всё выводится из имеющихся данных; без кода эксплойтов.

Хронология

От публикации до сегодня: proof of concept, модуль Metasploit, CISA KEV и запись об исправлении. Даты — как сообщают источники.

Кроме публикации датированных событий нет.

EPSS за 120 дней

Ежедневная оценка FIRST EPSS; записываются только изменения от 0,01 (ступенчатый график).

Ссылки на патчи и коммиты

Коммиты, PR и diff среди источников. Отправная точка для patch-diff и поиска вариантов; это исправления, не эксплойты.

Среди источников нет ссылок на коммит или PR.

Нашедшие, сообщившие и аналитики, названные в записи CNA. Нажмите имя, чтобы увидеть другие записи исследователя.

В записи CNA нет авторов.

Кандидаты в варианты

Тот же продукт, тот же класс уязвимости, в пределах 18 месяцев. Если патч не закрыл первопричину, родственная ошибка здесь.

  • CVE-2026-28434с разницей 22 дн.cpp-httplib's default exception handler leaks e.what() to clients via EXCEPTION_WHAT response header
    21Наблюдать

Кандидаты в цепочки

Обход аутентификации и уязвимость, требующая привилегий, в одном продукте и близко по времени: вместе они могут дать путь без аутентификации.

—

Охват bug bounty

Известной публичной программы нет.

Источник: bounty-targets-data (публичные списки HackerOne, Bugcrowd, Intigriti, YesWeHack).

Технические детали

Условия атаки

  • Может быть вызвана любым, у кого есть доступ через интернет.
  • Учётная запись или пароль не требуются.
  • Действия пользователя не требуются.
  • Требуются особые условия, например определённое время или конфигурация.

В случае успеха

Конфиденциальность
высокое · данные могут быть прочитаны
Целостность
высокое · данные или конфигурация могут быть изменены
Доступность
нет
Вектор атаки
Сеть
Сложность атаки
Высокая
Требуемые привилегии
Не требуются
Взаимодействие с пользователем
Не требуется
Область действия
Не изменяется
Влияние на конфиденциальность
Высокое
Влияние на целостность
Высокое
Влияние на доступность
Нет

Вектор CVSS

CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N

nvd-primary

Первопричина

Расширение запрашивает более широкие разрешения, чем требуется для его функции, и отправляет собранные данные вовне для целей, не связанных с его назначением.

Ошибка в коде

Весь класс CWE-200

Показательный пример этого класса уязвимостей. Это не исходный код вендора; показан ошибочный шаблон и его исправление.

Уязвимый код

json
{  "permissions": ["tabs", "<all_urls>"],  "background": { "service_worker": "analytics.js" }}

Исправленный код

json
{  "permissions": ["activeTab"],  "host_permissions": ["https://yildiz.example/*"]}

Анализ Noroxi

Анализа Noroxi для этой записи пока нет

Мы не пишем анализ вручную для всех 385 000+ уязвимостей; это было бы нечестно. Для значимых уязвимостей с реальным влиянием наша команда описывает механизм, обнаружение и устранение.

Мы используем этот продукт, нужна помощь

Журнал изменений

  1. Исправление✗ → ✓

Для отслеживаемых записей эти изменения приходят и как уведомления. →

Все записи