Description (CNA)
cpp-httplib is a C++11 single-file header-only cross platform HTTP/HTTPS library. Prior to version 0.37.0, cpp-httplib uses std::regex (libstdc++) to parse RFC 5987 encoded filename* values in multipart Content-Disposition headers. The regex engine in libstdc++ implements backtracking via deep recursion, consuming one stack frame per input character. An attacker can send a single HTTP POST request with a crafted filename* parameter that causes uncontrolled stack growth, resulting in a stack overflow (SIGSEGV) that crashes the server process. This issue has been patched in version 0.37.0.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| yhirose / cpp-httplib | affected < 0.37.0 |
CWE
CWE-674, CWE-1333
References
- https://github.com/yhirose/cpp-httplib/security/advisories/GHSA-qq6v-r583-3h69
- https://github.com/yhirose/cpp-httplib/commit/de296af3eb5b0d5c116470e033db900e4812c5e6
- https://github.com/yhirose/cpp-httplib/releases/tag/v0.37.0
ADP enrichment
No English description supplied.
No references supplied.