Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessIdentify target device on EtherNet/IP port 44818
-
DeliveryCraft ForwardOpen request with invalid non-Assembly path class
-
ExploitSend unauthenticated request over TCP to target
-
ExecutionTrigger unvalidated class access in ResolveInstances
-
ImpactOut-of-bounds read crashes CIPster process
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, buffer size validation
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 | No authentication or prior session establishment is required: the CIP ForwardOpen service is an unauthenticated standard EtherNet/IP service accessible to any network peer on port 44818, which is the default operational mode for EtherNet/IP adapter and scanner devices. The attack is limited to hosts running liftoff-sr CIPster at or before commit 1802525be27d with the ForwardOpen handler exposed on a reachable network interface. No operator interaction, no non-default configuration, and no elevated privileges on the target device are needed. The primary limiting factor for defenders is network segmentation: the vulnerability requires direct IP reachability to port 44818, so devices behind properly enforced OT network perimeters or unidirectional security gateways are not reachable to external attackers. The CVSS 4.0 vector confirms no attack requirements (AT:N) beyond network access. |
| Impact | The CVSS 4.0 base score of 5.5 with vector AV:N/AC:L/AT:N/PR:N/UI:N reflects a remotely exploitable, unauthenticated attack with no special preconditions, but limits impact to low availability (VA:L) with no confidentiality or integrity impact per the CNA's assessment. The CNA's assignment of VC:N may understate realistic risk: out-of-bounds reads in network-facing C++ code frequently expose adjacent heap or stack memory, and a more conservative assessment would assign C:L. The E:P supplemental metric confirms a public proof-of-concept exists, meaningfully lowering the skill threshold for exploitation despite the moderate base score. The absence of a CISA KEV listing suggests no confirmed, widespread active exploitation at time of analysis - even a mid-sized industrial operator in malbork running CIPster-based EtherNet/IP devices should treat this as a priority patch given the zero-barrier network attack vector and public exploit availability. EPSS data was not present in the provided intelligence, so probability-based prioritization metrics cannot be compared against the CVSS signals here. |
| Exploit ScenarioDerived | A remote attacker with network reachability to port 44818 on a device running unpatched CIPster crafts an EtherNet/IP ForwardOpen request that specifies a consuming or producing connection path pointing to a CIP instance of a non-Assembly class - for example, a CIP Identity or Message Router object - with a manipulated product_code_ value. The unpatched ResolveInstances function processes the path without verifying the instance class, causing an out-of-bounds read that corrupts or crashes the CIPster process and severs the device's EtherNet/IP connectivity. A public proof-of-concept is confirmed by the E:P exploitation metric and VulDB issue tracker reference, reducing attacker skill requirements. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 20, 2026
Out-of-bounds read in CIPster (liftoff-sr, commit 1802525be27d) allows remote unauthenticated attackers to crash the EtherNet/IP stack by sending a crafted ForwardOpen request with a manipulated product_code_ argument to the CipConnMgrClass::forward_open handler in cipconnectionmanager.cc. The underlying defect is a missing class-type validation in ConnectionData::ResolveInstances, which permits crafted connection paths to reference instances of unexpected CIP object classes, triggering memory access beyond valid bounds. A public proof-of-concept exploit exists per the CVSS 4.0 E:P supplemental metric and VulDB disclosure; the vulnerability is not listed in the CISA KEV catalog at the time of analysis.
RemediationAI
The upstream fix is available as commit ea870a274bf68dfaa3f511f20e2fff6778fb7b74 in the liftoff-sr/CIPster GitHub repository (https://github.com/liftoff-sr/CIPster/commit/ea870a274bf68dfaa3f511f20e2fff6778fb7b74); no tagged or versioned release incorporating this patch was identified from the available intelligence, so integrators should apply the commit directly to their source trees. Downstream device vendors should regenerate firmware and issue updates to deployed units. As a compensating control while awaiting patching, restrict network access to EtherNet/IP port 44818 (TCP and UDP) using industrial firewalls, managed switch ACLs, or OT network segmentation to limit reachability to authorized engineering workstations and peer controllers only - this directly eliminates the remote attack vector without disrupting legitimate operational traffic on properly segmented ICS networks.
Affected VersionsENISA
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
CIPster is an open-source C++ implementation of the CIP (Common Industrial Protocol) and EtherNet/IP stack targeting embedded and industrial automation devices. EtherNet/IP's ForwardOpen service (CIP service code 0x54) is used to establish I/O connections between CIP nodes and is accessible over TCP/UDP port 44818 without authentication in standard deployments. CWE-119 (Improper Restriction of Operations within the Bounds of a Memory Buffer) describes the root cause class: the fix commit ea870a274bf68dfaa3f511f20e2fff6778fb7b74 reveals that ConnectionData::ResolveInstances in cipconnection.cc lacked validation that consuming, producing, and configuration path instances were of the required CIP Assembly class (kCipAssemblyClass) before accessing them. Without these guards, a crafted ForwardOpen request can direct the resolver to treat a non-Assembly instance as an Assembly object, causing an out-of-bounds read when the code accesses fields at offsets that do not exist in the actual object layout. The commit also corrects a longstanding typo in the kConnMgrStatusInvalidConsumingApplicationPath enum value, indicating the validation logic was newly introduced rather than previously present but bypassed.
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:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/E:P
Network-accessible unauthenticated ForwardOpen (PR:N, AV:N); OOB read can expose adjacent memory (C:L); process crash causes availability loss (A:L).
Primary rating from Vendor (vuldb).
CVSS VectorVendor: vuldb
DescriptionCVE.org
A weakness has been identified in liftoff-sr CIPster 1802525be27d33e19a9a83c163e331a1d13b1892. This affects the function CipConnMgrClass::forward_open of the file cipconnectionmanager.cc of the component ForwardOpen Handler. Executing a manipulation of the argument product_code_ can lead to out-of-bounds read. It is possible to launch the attack remotely. The exploit has been made available to the public and could be used for attacks. This patch is called ea870a274bf68dfaa3f511f20e2fff6778fb7b74. A patch should be applied to remediate this issue.
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.
EUVD-2026-63346
GHSA-cgqh-cr58-mqgh
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB