Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Network-reachable IEC 60870-5-104 endpoint requires no authentication; impact is strictly availability-only with no confidentiality or integrity effect.
Primary rating from Vendor (mitre).
CVSS VectorVendor: mitre
Lifecycle Timeline
6DescriptionCVE.org
A heap buffer overflow in the HighPriorityASDUQueue_hasUnconfirmedIMessages function of lib60870 v2.3.3 to v2.3.6 allows attackers to cause a Denial of Service (DoS) via a crafted payload.
AnalysisAI
Heap buffer overflow in lib60870 versions 2.3.3 through 2.3.6 allows remote unauthenticated attackers to crash processes handling IEC 60870-5 protocol traffic by sending crafted Application Service Data Unit (ASDU) messages. The overflow occurs in the HighPriorityASDUQueue_hasUnconfirmedIMessages function, which manages high-priority message queuing in the IEC 60870-5-104 telecontrol protocol stack - making this particularly relevant to SCADA and industrial control system deployments where availability is operationally critical. No active exploitation is confirmed by CISA KEV; however, SSVC indicates a proof-of-concept exists, and EPSS of 0.18% (8th percentile) suggests minimal current exploitation activity.
Technical ContextAI
lib60870 is an open-source C library maintained by mz-automation that implements the IEC 60870-5 protocol family (including -101 and -104 variants), used extensively in energy grid automation, SCADA systems, and industrial telecontrol equipment for communication between control centers and remote terminal units (RTUs). The vulnerability is classified as CWE-122 (Heap-based Buffer Overflow), occurring specifically in HighPriorityASDUQueue_hasUnconfirmedIMessages - a function responsible for checking unconfirmed I-format messages in the high-priority ASDU queue. Insufficient bounds validation on heap-allocated buffer operations during message processing allows an attacker-controlled payload to write beyond the allocated buffer, corrupting heap metadata and triggering a process crash. The affected CPE is listed as cpe:2.3:a:n/a:n/a, indicating this library lacks a formally registered NVD CPE entry, reflecting its status as a community-maintained open-source dependency rather than a tracked commercial product.
RemediationAI
Upgrade lib60870 to a release beyond version 2.3.6; check https://github.com/mz-automation/lib60870/releases for the latest available version containing the fix. The upstream issue tracker entry at https://github.com/mz-automation/lib60870/issues/196 should be consulted to confirm patch status and identify the exact fixing commit or tagged release, as no specific patched version was confirmed in the available intelligence. As a compensating control where upgrading is not immediately feasible, restrict network access to the IEC 60870-5-104 service port (default TCP 2404) using firewall rules or network ACLs to permit only trusted SCADA masters and RTUs - this directly reduces the attack surface to trusted network segments and counteracts the AV:N/PR:N attack vector. Note that port-level blocking will disrupt legitimate telecontrol communication and must be coordinated with operations teams before implementation. Deploying protocol-aware deep packet inspection capable of validating IEC 60870-5 ASDU structure can provide an additional detection or blocking layer.
LibreNMS before 24.10.0 allows a remote attacker to execute arbitrary code via OS command injection involving AboutContr
Reachable assertion in Open5GS up to version 2.7.6 allows remote unauthenticated attackers to crash the Diameter CER han
A Command Injection issue in the payload build page in BYOB (Build Your Own Botnet) 2.0 allows attackers to execute arbi
Denial of service in Open5GS 2.7.6 and earlier allows network-adjacent attackers with low-privilege Diameter Gx peer acc
Denial of service in Open5GS HSS (Home Subscriber Server) versions 2.7.0 through 2.7.6 is triggered remotely by manipula
Remote command injection in Control Web Panel allows unauthenticated attackers to execute arbitrary OS commands as root
LINQPad before 5.52.01 Pro edition is vulnerable to Unsafe Deserialization in LINQPad.AutoRefManager::PopulateFromCache(
Remote code execution in dash-uploader (Python package for Plotly Dash) versions 0.1.0 through 0.7.0a2 allows unauthenti
Command injection in LiteLLM 1.18.10 lets attackers who can configure MCP (Model Context Protocol) servers supply arbitr
SQL injection in AzuraCast's backup restore flow (versions up to and including 0.23.7) lets an attacker achieve privileg
Arbitrary file read in Yu AI Code Mother v4.3 lets anonymous, remote attackers retrieve files outside the intended previ
Remote code execution in APScheduler (all versions through 3.10.x and 4.0.0a5) is achievable when applications deseriali
Same weakness CWE-122 – Heap-based Buffer Overflow
View allSame technique Buffer Overflow
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-40245
GHSA-27wh-38h4-pr2j