CVE-2024-21916 Overview
A denial-of-service vulnerability exists in specific Rockwell Automation ControlLogix and GuardLogix controllers. If exploited, the product could potentially experience a major nonrecoverable fault (MNRF). The device will restart itself to recover from the MNRF, causing disruption to industrial control system operations.
Critical Impact
Exploitation of this vulnerability can cause industrial controllers to experience a major nonrecoverable fault (MNRF), forcing an automatic restart and potentially disrupting critical manufacturing and industrial processes.
Affected Products
- Rockwell Automation ControlLogix 5570 Controller Firmware (version 20.011)
- Rockwell Automation GuardLogix 5570 Controller Firmware (version 20.011)
- Rockwell Automation ControlLogix 5570 Redundant Controller Firmware (version 20.054_kit1)
Discovery Timeline
- 2024-01-31 - CVE CVE-2024-21916 published to NVD
- 2024-11-21 - Last updated in NVD database
Technical Details for CVE-2024-21916
Vulnerability Analysis
This denial-of-service vulnerability affects Rockwell Automation's ControlLogix and GuardLogix 5570 series controllers, which are programmable automation controllers (PACs) widely deployed in industrial control system (ICS) environments. The vulnerability is classified under CWE-119 (Improper Restriction of Operations within the Bounds of a Memory Buffer), indicating a memory corruption issue that can be triggered remotely over the network.
When exploited, the vulnerability causes the affected controller to enter a major nonrecoverable fault (MNRF) state. In this condition, the controller cannot continue normal operation and must perform an automatic restart to recover. This behavior poses significant risk in industrial environments where controller availability is critical for process continuity and safety.
The attack can be executed remotely without requiring authentication or user interaction, making it particularly dangerous for internet-exposed or inadequately segmented industrial networks. Given that these controllers are often deployed in critical infrastructure sectors including manufacturing, energy, and utilities, the potential impact extends beyond simple service disruption.
Root Cause
The root cause is classified as CWE-119: Improper Restriction of Operations within the Bounds of a Memory Buffer. This indicates that the controller firmware does not properly validate or restrict operations within memory buffer boundaries. When specially crafted network traffic is received by the controller, it can trigger memory corruption that results in the MNRF condition.
Attack Vector
The vulnerability is exploitable via network access without requiring any privileges or user interaction. An attacker with network access to the affected controller can send malicious traffic that triggers the memory buffer boundary violation, causing the controller to crash and restart.
The attack leverages improper bounds checking in the controller's network-facing services. When the controller processes certain malformed or unexpected data, it fails to properly restrict memory operations, leading to an unstable state that triggers the MNRF protection mechanism. This results in forced device restarts, which in an industrial setting can have cascading effects on dependent processes and equipment.
Detection Methods for CVE-2024-21916
Indicators of Compromise
- Unexpected controller restarts or MNRF events logged in controller diagnostics
- Abnormal network traffic patterns targeting ControlLogix or GuardLogix controllers
- Controller fault indicators showing major nonrecoverable faults without apparent operational cause
- Repeated controller recovery cycles within short time periods
Detection Strategies
- Monitor controller event logs for MNRF fault codes and unexpected restart events
- Implement network intrusion detection systems (IDS) with rules for anomalous traffic to Rockwell Automation EtherNet/IP ports
- Deploy industrial-specific security monitoring to baseline normal controller behavior and alert on deviations
- Correlate network traffic analysis with controller fault events to identify potential attack patterns
Monitoring Recommendations
- Enable detailed logging on ControlLogix and GuardLogix controllers to capture fault conditions
- Implement network segmentation monitoring to detect unauthorized access attempts to industrial control networks
- Configure SIEM integration to aggregate controller health data and network security events
- Establish baseline metrics for controller restart frequency to enable anomaly detection
How to Mitigate CVE-2024-21916
Immediate Actions Required
- Review and apply firmware updates from Rockwell Automation as outlined in Security Advisory SD1661
- Implement network segmentation to isolate affected controllers from untrusted networks
- Restrict network access to controllers using firewalls and access control lists
- Audit current firmware versions across all ControlLogix and GuardLogix 5570 deployments
Patch Information
Rockwell Automation has released security guidance and firmware updates to address this vulnerability. Organizations should consult the Rockwell Automation Security Advisory SD1661 for specific patch versions and upgrade instructions applicable to their deployed firmware versions.
Affected firmware versions include ControlLogix 5570 Controller Firmware 20.011, GuardLogix 5570 Controller Firmware 20.011, and ControlLogix 5570 Redundant Controller Firmware 20.054_kit1. Coordinate firmware updates with operational requirements to minimize production impact while addressing the security risk.
Workarounds
- Implement strict network segmentation to prevent unauthorized network access to controllers
- Deploy industrial firewalls to filter and inspect traffic destined for controller ports
- Disable or restrict unnecessary network services on affected controllers
- Utilize VPN or secure remote access solutions for any required remote connectivity to industrial control networks
# Example firewall rule to restrict access to EtherNet/IP port (44818)
# Adjust network ranges according to your environment
iptables -A INPUT -p tcp --dport 44818 -s 10.10.10.0/24 -j ACCEPT
iptables -A INPUT -p tcp --dport 44818 -j DROP
iptables -A INPUT -p udp --dport 44818 -s 10.10.10.0/24 -j ACCEPT
iptables -A INPUT -p udp --dport 44818 -j DROP
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.


