libwebsockets CVE-2025-11677
MEDIUMAttack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach WebSocket server over network
-
ExploitSend crafted HTTP upgrade handshake
-
ExecutionTrigger use-after-free in lws_handshake_server
-
ImpactCrash server (denial of service)
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Memory lifecycle management
MITRE ATT&CK
2 techniques across 2 tactics: Execution, Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires a specific, non-default deployment: the application embedding libwebsockets must provide a user callback that handles the LWS_CALLBACK_HTTP_CONFIRM_UPGRADE event, which is the exact condition named in the description; servers that do not implement this callback path are not affected. Further limiting factors are high attack complexity and a present attack requirement (AT:P in the CVSS 4.0 vector), indicating a timing-sensitive use-after-free window that is not reliably controllable by the attacker. No authentication is required (PR:N) and the vector is network-reachable, but the impact is confined to availability (denial of service) with no confidentiality or integrity effect. |
| Impact | This is a genuinely low-priority issue despite a moderate 6.3 CVSS 4.0 score, and the signals are consistent rather than conflicting. The vendor-supplied CVSS 4.0 vector (AV:N/AC:H/AT:P/PR:N/UI:N) shows network reachability with no authentication, but high attack complexity combined with a present attack requirement (AT:P) - meaning exploitation depends on conditions outside the attacker's control (the target's deployment must register a user callback handling LWS_CALLBACK_HTTP_CONFIRM_UPGRADE) and likely on winning a use-after-free timing window. Impact is availability-only (VC:N/VI:N/VA:L); there is no confidentiality or integrity exposure, so the worst realistic outcome is a crash/denial of service of the affected service, not code execution or data theft. EPSS reinforces low urgency at 0.40% (33rd percentile), there is no CISA KEV listing, and no public exploit code was identified in the provided sources. The one escalating factor is that the flaw was reported by a credible research team (Nozomi Networks), and libwebsockets is embedded in many IoT/embedded and appliance stacks - but the non-default configuration prerequisite sharply narrows the exploitable population. Net: patch in normal cycles; this is not an emergency. |
| Exploit ScenarioDerived | A remote, unauthenticated attacker targets a service built on libwebsockets that has registered a user callback handling LWS_CALLBACK_HTTP_CONFIRM_UPGRADE, sending crafted WebSocket upgrade handshake traffic to lws_handshake_server to trigger a use-after-free. Because attack complexity is high and a timing/configuration precondition (AT:P) applies, reliable exploitation is difficult, and the only demonstrated impact is a denial of service (crash) of the WebSocket server. No public exploit code was identified at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 08, 2026
Use-after-free in the WebSocket server handshake handling of libwebsockets (warmcat) can cause a denial of service when an application embedding the library provides a callback for the LWS_CALLBACK_HTTP_CONFIRM_UPGRADE event. Exploitation requires a specific, non-default configuration where that callback is registered; the attack is network-reachable and unauthenticated but has high attack complexity due to a timing-sensitive condition (AT:P). The impact is limited to availability (no confidentiality or integrity loss), EPSS is low (0.40%, 33rd percentile), and no public exploit or active exploitation has been identified; an upstream fix commit is available.
RemediationAI
Upstream fix available (commit 2f082ec31261f556969160143ba94875d783971a); a released patched version is not independently confirmed. Apply the upstream fix by updating libwebsockets to a release that includes this commit, and verify with the vendor or the commit history for a tagged version. As a workaround, avoid implementing the LWS_CALLBACK_HTTP_CONFIRM_UPGRADE callback in applications that embed the library, or ensure that any such callback does not retain references to handshake memory after the upgrade confirmation step; disabling the callback may remove custom upgrade handling functionality, so weigh that trade-off. Refer to the Nozomi Networks advisory (https://www.nozominetworks.com/labs/vulnerability-advisories-cve-2025-11677) for further guidance.
Affected ProductsAI
libwebsockets (warmcat) versions that contain the vulnerable lws_handshake_server code and are used by applications that register a callback for LWS_CALLBACK_HTTP_CONFIRM_UPGRADE. No specific version range or CPE is provided in the available data, but the upstream fix is identified by commit 2f082ec31261f556969160143ba94875d783971a in the libwebsockets repository. Systems embedding libwebsockets without that callback handler are not affected. For details, see the Nozomi Networks advisory at https://www.nozominetworks.com/labs/vulnerability-advisories-cve-2025-11677.
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The vulnerability is a use-after-free (CWE-416) in lws_handshake_server within libwebsockets, a C library for implementing WebSocket and HTTP servers. During the WebSocket upgrade handshake, if the application registers a callback for LWS_CALLBACK_HTTP_CONFIRM_UPGRADE, the library may free memory associated with the handshake while the callback still references it, leading to a dangling pointer. The CVSS 4.0 vector (AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N) and the independent CVSS 3.1 assessment (AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L) both indicate that the attack is network-reachable and unauthenticated but requires high complexity and a present attack requirement, meaning the use-after-free window is timing-sensitive and not reliably controllable by the attacker. The affected component is the server-side handshake logic, and only deployments that implement the specified callback are vulnerable; those that do not are not affected.
Know when the next one hits your stack
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
Network-reachable and unauthenticated (AV:N/PR:N), but non-default callback config plus a timing-dependent UAF make it AC:H; impact is availability-only (A:L), no C/I.
Primary rating from Vendor (nozominetworks).
CVSS VectorVendor: nozominetworks
DescriptionCVE.org
Use After Free in WebSocket server implementation in lws_handshake_server in warmcat libwebsockets may allow an attacker, in specific configurations where the user provides a callback function that handles LWS_CALLBACK_HTTP_CONFIRM_UPGRADE, to achieve denial of service.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Use-after-free vulnerabilities occur when a program continues to access memory through a pointer after that memory has been deallocated.
Memory corruption occurs when a program writes data beyond the boundaries of allocated memory regions or accesses memory in unintended ways, violating the integrity of the process's address space.
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
NVD
CVE.org
EPSS
GitHub PoC
Exploit-DB