Skip to main content
← All vulnerabilities
CVE-2026-103930GHSA-VQ69-F637-8FHR

cpp-httplib open_stream serializes CRLF in request target into HTTP request line

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 0.51.0
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: no
  • Technical impact: partial

Summary

cpp-httplib is a C++ header-only HTTP/HTTPS library. From 0.29.0 until 0.51.0, Client::open_stream in httplib.h accepts a caller-controlled path that reaches detail::write_request_line() without the detail::encode_path() protection used by the ordinary buffered request path. Raw carriage-return and line-feed bytes in the path can therefore split the outbound HTTP/1.1 request line and inject attacker-shaped request metadata. Exploitation requires an embedding application to pass remote user input into the open_stream path and a backend or intermediary that interprets the injected bytes; the established impact is modification of backend-visible request data, not direct confidentiality or availability impact. This issue is fixed in version 0.51.0.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: no · Technical impact: partial

  3. Record last updated

Affected versions

  • yhirose cpp-httplib

    From 0.29.0 · fixed in 0.51.0

References 4

GitHub · yhirose/cpp-httplib