cpp-httplib — это однофайловая кроссплатформенная библиотека HTTP/HTTPS C++11, предназначенная только для заголовков. До версии 0.37.2, когда клиент cpp-httplib настроен с прокси и set_follow_location(true), любое перенаправление HTTPS, за которым он следует, будет иметь TLS-сертификат и проверку имени хоста автоматически отключены при новом соединении. Клиент примет любой сертификат, представленный целью перенаправления — просроченный, самозаверяющий или поддельный — без возникновения ошибки или уведомления приложения.
Сетевой злоумышленник, способный вернуть ответ на перенаправление, может полностью перехватить последующее HTTPS-соединение, включая любые учетные данные или токены сеанса. Эта уязвимость исправлена в версии 0.37.2.
Показать оригинальное описание (EN)
cpp-httplib is a C++11 single-file header-only cross platform HTTP/HTTPS library. Prior to 0.37.2, when a cpp-httplib client is configured with a proxy and set_follow_location(true), any HTTPS redirect it follows will have TLS certificate and hostname verification silently disabled on the new connection. The client will accept any certificate presented by the redirect target — expired, self-signed, or forged — without raising an error or notifying the application. A network attacker in a position to return a redirect response can fully intercept the follow-up HTTPS connection, including any credentials or session tokens in flight. This vulnerability is fixed in 0.37.2.
Характеристики атаки
Последствия
Строка CVSS v3.1
Тип уязвимости (CWE)
Уязвимые продукты 1
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Yhirose Cpp-Httplib
cpe:2.3:a:yhirose:cpp-httplib:*:*:*:*:*:*:*:*
|
— |
0.37.2
|