CVE-2019-10952
📋 TL;DR
A stack-based buffer overflow vulnerability in Rockwell Automation CompactLogix and Compact GuardLogix controllers allows attackers to send crafted HTTP/HTTPS requests to cause denial of service or potentially execute arbitrary code. This affects industrial control systems using these programmable logic controllers, requiring a cold restart to recover from attacks. Organizations using these controllers in manufacturing, energy, or critical infrastructure are at risk.
💻 Affected Systems
- CompactLogix 5370 L1 Controllers
- CompactLogix 5370 L2 Controllers
- CompactLogix 5370 L3 Controllers
- Compact GuardLogix 5370 controllers
- Armor Compact GuardLogix 5370 Controllers
📦 What is this software?
Armor Compact Guardlogix 5370 Firmware by Rockwellautomation
View all CVEs affecting Armor Compact Guardlogix 5370 Firmware →
Compactlogix 5370 L1 Firmware by Rockwellautomation
Compactlogix 5370 L2 Firmware by Rockwellautomation
Compactlogix 5370 L3 Firmware by Rockwellautomation
⚠️ Risk & Real-World Impact
Worst Case
Remote code execution leading to complete system compromise, manipulation of industrial processes, physical damage, or safety incidents in critical infrastructure.
Likely Case
Denial of service rendering the controller unavailable, disrupting industrial operations until cold restart is performed.
If Mitigated
Limited impact if controllers are isolated behind firewalls with strict network segmentation and access controls.
🎯 Exploit Status
Exploitation requires sending crafted HTTP/HTTPS packets to the controller's web interface. No authentication is required if network access is available.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Version 30.014 and later
Vendor Advisory: https://rockwellautomation.custhelp.com/app/answers/detail/a_id/1075979
Restart Required: Yes
Instructions:
1. Download firmware update from Rockwell Automation Product Compatibility & Download Center. 2. Backup controller configuration. 3. Apply firmware update using Studio 5000 Logix Designer. 4. Perform cold restart of controller. 5. Restore configuration if needed.
🔧 Temporary Workarounds
Network Segmentation
allIsolate controllers in dedicated network segments with strict firewall rules
Disable Web Server
allDisable HTTP/HTTPS web server functionality if not required for operations
In Studio 5000: Controller Properties > Port Configuration > Disable HTTP/HTTPS
🧯 If You Can't Patch
- Implement strict network access controls allowing only trusted IP addresses to communicate with controllers
- Deploy intrusion detection systems monitoring for anomalous HTTP/HTTPS traffic patterns to affected controllers
🔍 How to Verify
Check if Vulnerable:
Check controller firmware version via Studio 5000 Logix Designer or web interface. Versions 20-30 are vulnerable unless patched to 30.014+.
Check Version:
In Studio 5000: Controller Organizer > Right-click controller > Properties > Controller > General tab shows firmware version
Verify Fix Applied:
Verify firmware version shows 30.014 or later in Studio 5000 or controller properties.
📡 Detection & Monitoring
Log Indicators:
- Multiple malformed HTTP/HTTPS requests to controller IP
- Controller restart events following network traffic
- Web server crash logs
Network Indicators:
- Unusual HTTP packet sizes or patterns to controller ports (80/443)
- Traffic from unexpected sources to controller web interface
- Buffer overflow patterns in HTTP headers
SIEM Query:
source_ip=* AND dest_ip=controller_ip AND (port=80 OR port=443) AND (http_request_size>threshold OR http_header_anomaly=true)
🔗 References
- http://www.securityfocus.com/bid/108118
- https://ics-cert.us-cert.gov/advisories/ICSA-19-120-01
- https://rockwellautomation.custhelp.com/app/answers/detail/a_id/1075979
- http://www.securityfocus.com/bid/108118
- https://ics-cert.us-cert.gov/advisories/ICSA-19-120-01
- https://rockwellautomation.custhelp.com/app/answers/detail/a_id/1075979