cpp-httplib — это однофайловая кроссплатформенная библиотека HTTP/HTTPS C++11, предназначенная только для заголовков. До версии 0.39.0 HTTP-клиент cpp-httplib перенаправлял сохраненные учетные данные базовой аутентификации, токена носителя и дайджест-аутентификации на произвольные хосты при следовании HTTP-перенаправлениям между источниками (301/302/307/308). Вредоносный или скомпрометированный сервер может перенаправить клиента на хост, контролируемый злоумышленником, который затем получает учетные данные в виде открытого текста в заголовке `Authorization`.
Версия 0.39.0 устраняет проблему.
Показать оригинальное описание (EN)
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 v3.1