Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessGain local low-privileged access
-
DeliveryCraft malicious MMS GetNamedVariableListAttributesResponse with oversized itemId
-
ExploitSubmit crafted message to vulnerable libiec61850-based application
-
ExecutionTrigger heap buffer overflow in MmsMapping_varAccessSpecToObjectReference
-
PersistCorrupt heap memory
-
ImpactAchieve code execution or process crash
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Heap buffer bounds checking
MITRE ATT&CK
1 technique across 1 tactic: Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Local access to the target system is required - the attack cannot be executed remotely over a network. The attacker must hold at minimum low-privileged (user-level) local account credentials or equivalent process execution capability on the host running an application built against libiec61850 up to 1.6.1. The vulnerable code path is reached during processing of MMS protocol GetNamedVariableListAttributesResponse messages, so the target application must be actively processing such MMS messages at the time of exploitation. Limiting factors include: (1) physical or logical local access is mandatory, ruling out remote, unauthenticated exploitation; (2) the attacker must be able to supply or inject a crafted MMS response to the library's parsing routine; (3) the application must be using the MMS Named Variable List attribute query functionality. No special non-default configuration is known to be required beyond the application accepting MMS traffic. |
| Impact | The CVSS 4.0 base score of 4.8 (Medium) reflects the local attack vector (AV:L), which materially constrains exploitability compared to network-accessible flaws. The threat metric E:P (exploit code proof-of-concept) is included in the provided vector, acknowledging that a working PoC ZIP archive has been publicly released on GitHub. No CISA KEV listing exists, so confirmed active exploitation is unverified. The limited confidentiality, integrity, and availability impacts (VC:L/VI:L/VA:L) and the absence of scope change (SC:N/SI:N/SA:N) keep the numerical score moderate. However, the industrial control system (ICS) deployment context of IEC 61850 libraries is a critical risk amplifier not captured by CVSS: a heap overflow in a substation automation library could disrupt power grid operations even with partial memory corruption. The combination of a public PoC and an unresponsive vendor warrants elevated prioritization in ICS/OT environments despite the moderate CVSS. No conflicting signals between CVSS vector and description - local access requirement is consistent across all sources. |
| Exploit ScenarioDerived | A local attacker with a standard user account on a system running an application built on libiec61850 constructs a malformed MMS GetNamedVariableListAttributesResponse packet containing an oversized or specially crafted itemId value. When the vulnerable application processes this response via MmsMapping_varAccessSpecToObjectReference, the heap buffer overflow corrupts adjacent heap memory, potentially enabling arbitrary code execution or process crash. A public PoC ZIP archive is available on GitHub, lowering the technical barrier for exploitation by less-skilled actors. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 08, 2026
Heap-based buffer overflow in MZ Automation libiec61850 up to version 1.6.1 allows a local attacker with low privileges to corrupt heap memory by supplying a crafted GetNamedVariableListAttributesResponse itemId argument to the MmsMapping_varAccessSpecToObjectReference function in the MMS Protocol Workflow. A public proof-of-concept exploit has been released and is available for download. The vulnerability has not yet been patched; the project was notified via GitHub issue #599 but has not responded at time of analysis. No active exploitation is confirmed by CISA KEV, though the publicly available PoC meaningfully elevates near-term risk.
RemediationAI
No vendor-released patch is available at time of analysis; the vendor has not responded to the responsible disclosure via GitHub issue #599. As a compensating control, operators should restrict local system access to the minimum set of trusted users who require it, thereby reducing the attack surface since exploitation requires local, low-privileged access. Disabling or sandboxing processes that parse MMS GetNamedVariableListAttributesResponse messages from untrusted sources using OS-level controls (e.g., seccomp, AppArmor, or SELinux profiles) would prevent exploitation without requiring library changes - note this trade-off may limit MMS protocol functionality in devices relying on full IEC 61850 MMS attribute queries. Network segmentation that prevents unauthorized local shell or process access to ICS hosts running libiec61850 is also recommended. Monitor the upstream GitHub repository at https://github.com/mz-automation/libiec61850/issues/599 for vendor response and patch release.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
libiec61850 (CPE: cpe:2.3:a:mz_automation:libiec61850:*:*:*:*:*:*:*:*) is an open-source C library implementing the IEC 61850 standard used in electrical substation automation and power grid communication systems. The affected component is the MMS (Manufacturing Message Specification) protocol workflow, specifically the function MmsMapping_varAccessSpecToObjectReference in src/iec61850/common/iec61850_common.c. MMS is an ISO/IEC 9506 application-layer messaging protocol used to exchange real-time process data between intelligent electronic devices (IEDs). CWE-122 (Heap-based Buffer Overflow) identifies the root cause: the function fails to properly validate the length of the itemId field within a GetNamedVariableListAttributesResponse message before writing to a heap-allocated buffer, permitting an out-of-bounds write that corrupts adjacent heap memory. Such corruption in a C library can lead to arbitrary code execution, denial of service, or information leakage depending on heap layout and attacker control.
Know when Libiec61850 gets its next vulnerability
- 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:L/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:P
Local attack vector and low-privilege requirement confirmed by description and CVSS 4.0 source; limited partial impacts across CIA with unchanged scope.
Primary rating from Vendor (VulDB).
CVSS VectorVendor: VulDB
Lifecycle Timeline
3DescriptionCVE.org
A vulnerability has been found in MZ Automation libiec61850 up to 1.6.1. The affected element is the function MmsMapping_varAccessSpecToObjectReference of the file src/iec61850/common/iec61850_common.c of the component MMS Protocol Workflow. Such manipulation of the argument GetNamedVariableListAttributesResponse.itemId leads to heap-based buffer overflow. The attack must be carried out locally. The exploit has been disclosed to the public and may be used. The project was informed of the problem early through an issue report but has not responded yet.
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
A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.
A heap overflow occurs when a program writes data beyond the bounds of a buffer allocated in the heap memory region.
More in Libiec61850
View allAn issue has been found in libIEC61850 v1.3. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploita
An issue has been found in libIEC61850 v1.3. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploita
An issue has been found in libIEC61850 v1.3. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploita
MmsValue_decodeMmsData in mms/iso_mms/server/mms_access_result.c in libIEC61850 through 1.4.0 has a heap-based buffer ov
In libIEC61850 1.4.0, MmsValue_decodeMmsData in mms/iso_mms/server/mms_access_result.c has a heap-based buffer overflow.
In mz-automation libiec61850 v1.4.0, a NULL Pointer Dereference was detected in the mmsServer_handleFileCloseRequest.c f
An issue in mz-automation libiec61850 v.1.5.3 and before, allows a remote attacker to cause a denial of service (DoS) vi
libiec61850 v1.5.1 was discovered to contain a segmentation violation via the function ControlObjectClient_setOrigin() a
A denial of service vulnerability exists in the parseNormalModeParameters functionality of MZ Automation GmbH libiec6185
libIEC61850 through 1.3.3 has a use-after-free in MmsServer_waitReady in mms/iso_mms/server/mms_server.c, as demonstrate
mz-automation libiec61850 1.3.2 1.3.1 1.3.0 is affected by: Buffer Overflow. Rated high severity (CVSS 7.5), this vulner
An issue has been found in libIEC61850 v1.3.1. Rated high severity (CVSS 7.5), this vulnerability is remotely exploitabl
EUVD-2026-54728
GHSA-36pq-cx6x-rc54
NVD
CVE.org
EPSS
VulDB
Exploit-DB