CVE-2021-42705
📋 TL;DR
CVE-2021-42705 is a stack-based buffer overflow vulnerability in PLC Editor versions 1.3.8 and earlier that allows attackers to execute arbitrary code by crafting malicious project files. This affects industrial control system operators and engineers who use this software for programming PLCs. Successful exploitation could compromise the engineering workstation and potentially spread to connected industrial systems.
💻 Affected Systems
- PLC Editor
📦 What is this software?
⚠️ Risk & Real-World Impact
Worst Case
Complete compromise of engineering workstation leading to lateral movement into industrial control systems, manipulation of PLC logic, disruption of industrial processes, or physical damage to equipment.
Likely Case
Compromise of engineering workstation leading to data theft, credential harvesting, or installation of persistent malware for future attacks on industrial networks.
If Mitigated
Isolated compromise of engineering workstation with no impact on operational systems due to proper network segmentation and air-gapping.
🎯 Exploit Status
Exploitation requires user to open malicious project file. Buffer overflow leads to arbitrary code execution with user privileges.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Version 1.3.9 or later
Vendor Advisory: https://us-cert.cisa.gov/ics/advisories/icsa-21-315-01
Restart Required: Yes
Instructions:
1. Download PLC Editor version 1.3.9 or later from official vendor source. 2. Uninstall previous version. 3. Install updated version. 4. Restart system.
🔧 Temporary Workarounds
Restrict project file execution
windowsConfigure Windows to open .prj files with a text editor instead of PLC Editor
Right-click .prj file > Open with > Choose another app > Select Notepad > Check 'Always use this app'
Application whitelisting
windowsUse AppLocker or similar to restrict execution of PLC Editor to trusted locations only
🧯 If You Can't Patch
- Implement strict file validation: Only open project files from trusted sources, verify file integrity before opening.
- Network segmentation: Isolate engineering workstations from operational networks and internet access.
🔍 How to Verify
Check if Vulnerable:
Check PLC Editor version via Help > About menu. If version is 1.3.8 or earlier, system is vulnerable.
Check Version:
Open PLC Editor, navigate to Help > About menu
Verify Fix Applied:
After update, verify version shows 1.3.9 or later in Help > About menu.
📡 Detection & Monitoring
Log Indicators:
- Application crashes of PLC Editor with stack overflow errors
- Unusual process creation from PLC Editor executable
- Multiple failed attempts to open corrupted project files
Network Indicators:
- Unusual outbound connections from engineering workstation
- File transfers of .prj files from untrusted sources
SIEM Query:
source="PLC Editor" AND (event_type="crash" OR process_name="cmd.exe" OR process_name="powershell.exe")