Bug 2526709

Summary: CVE-2026-77358 cpp-httplib: cpp-httplib: Use-after-free in WebSocket client leads to denial of service [epel-all]
Product: [Fedora] Fedora EPEL Reporter: Vladimir Vasilev <vvasilev>
Component: cpp-httplibAssignee: Davide Cavalca <davide>
Status: NEW --- QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: epel10CC: davide, epel-packagers-sig, orion, pemensik
Target Milestone: ---Keywords: Security, SecurityTracking
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard: {"flaws": ["f57dc7eb-952c-42ee-b78f-76f36bab2878"]}
Fixed In Version: Doc Type: ---
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2525317    

Description Vladimir Vasilev 2026-09-01 08:42:43 UTC
Disclaimer: Community trackers are created by Red Hat Product Security team on a best effort basis. Package maintainers are required to ascertain if the flaw indeed affects their package, before starting the update process.

cpp-httplib is a C++ header-only HTTP/HTTPS library. In versions 0.33.0 through 0.50.0, the TLS-enabled WebSocket client frees the TLS session before closing the WebSocket that still uses it, producing a use-after-free. In WebSocketClient::shutdown_and_close the SSL object is freed and the pointer cleared, but the subsequent WebSocket close still sends a close frame through the SSL socket stream, which holds a raw copy of the now-dangling session pointer and reads from and writes to the freed memory. The same freed-then-used ordering is reachable through the client's destructor and its connect path, so ordinary teardown of a secure WebSocket connection triggers the defect. This issue is fixed in version 0.50.1.