CVE-2025-66570 in cpp-httplib
Sumário
de VulDB • 23/07/2026
cpp-httplib é uma biblioteca HTTP/HTTPS multiplataforma de arquivo único e apenas cabeçalhos (header-only) para C++11. Antes da versão 0.27.0, uma vulnerabilidade permite que cabeçalhos HTTP controlados pelo atacante influenciem metadados visíveis ao servidor, registros (logs) e decisões de autorização. Um atacante pode injetar cabeçalhos nomeados REMOTE_ADDR, REMOTE_PORT, LOCAL_ADDR e LOCAL_PORT, que são analisados no multimap de cabeçalhos da solicitação via read_headers() em httplib.h (headers.emplace); posteriormente, o servidor anexa seus próprios metadados internos utilizando os mesmos nomes de cabeçalho em Server::process_request sem apagar duplicatas. Como Request::get_header_value retorna a primeira entrada para uma chave de cabeçalho (id == 0) e os cabeçalhos fornecidos pelo cliente são analisados antes dos cabeçalhos inseridos pelo servidor, o código downstream que utiliza esses nomes de cabeçalho pode inadvertidamente usar valores controlados pelo atacante. Arquivos/localizações afetadas: cpp-httplib/httplib.h (read_headers, Server::process_request, Request::get_header_value, get_header_value_u64) e cpp-httplib/docker/main.cc (get_client_ip, nginx_access_logger, nginx_error_logger). Superfície de ataque: cabeçalhos HTTP controlados pelo atacante em solicitações recebidas fluem para o multimap Request.headers e para o código de registro que lê cabeçalhos encaminhados, permitindo spoofing de IP, envenenamento de logs (log poisoning) e violação de autorização via shadowing de cabeçalho. Esta vulnerabilidade foi corrigida na versão 0.27.0.
If you want to get best quality of vulnerability data, you may have to visit VulDB.