CVE-2021-30194

9.1 CRITICAL

📋 TL;DR

CVE-2021-30194 is an out-of-bounds read vulnerability in CODESYS V2 Web-Server that could allow attackers to read sensitive memory contents or cause denial of service. This affects industrial control systems using CODESYS V2 Web-Server versions before 1.1.9.20. The vulnerability is remotely exploitable with a CVSS score of 9.1, indicating critical severity.

💻 Affected Systems

Products:
  • CODESYS V2 Web-Server
Versions: All versions before 1.1.9.20
Operating Systems: All platforms running CODESYS V2 Web-Server
Default Config Vulnerable: ⚠️ Yes
Notes: Affects CODESYS V2 runtime systems with web server enabled. CODESYS V3 is not affected.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Remote code execution leading to complete system compromise, manipulation of industrial processes, or data exfiltration from memory

🟠

Likely Case

Denial of service causing PLC/controller disruption or information disclosure from memory reads

🟢

If Mitigated

Limited impact if proper network segmentation and access controls prevent external exploitation

🌐 Internet-Facing: HIGH - Web server component is directly accessible and vulnerable to unauthenticated attacks
🏢 Internal Only: HIGH - Even internally, the vulnerability can be exploited by attackers who gain network access

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Out-of-bounds read vulnerabilities typically require less sophistication to exploit than write vulnerabilities, but exploitation details are not publicly documented

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 1.1.9.20

Vendor Advisory: https://customers.codesys.com/index.php?eID=dumpFile&t=f&f=14726&token=553da5d11234bbe1ceed59969d419a71bb8c8747&download=

Restart Required: Yes

Instructions:

1. Download CODESYS V2 Web-Server version 1.1.9.20 or later from CODESYS customer portal. 2. Stop the CODESYS runtime. 3. Install the updated web server component. 4. Restart the CODESYS runtime. 5. Verify the version is 1.1.9.20 or higher.

🔧 Temporary Workarounds

Disable Web Server

all

Disable the CODESYS V2 Web-Server component if not required for operations

Configure CODESYS runtime to disable web server functionality through configuration settings

Network Segmentation

all

Restrict network access to CODESYS systems using firewalls or network segmentation

Add firewall rules to block external access to CODESYS web server ports (typically 80/443)

🧯 If You Can't Patch

  • Implement strict network segmentation to isolate CODESYS systems from untrusted networks
  • Deploy intrusion detection systems to monitor for exploitation attempts and anomalous traffic patterns

🔍 How to Verify

Check if Vulnerable:

Check CODESYS V2 Web-Server version via web interface or configuration files. If version is below 1.1.9.20, system is vulnerable.

Check Version:

Access CODESYS web interface or check runtime configuration for version information

Verify Fix Applied:

Verify CODESYS V2 Web-Server version is 1.1.9.20 or higher after applying patch

📡 Detection & Monitoring

Log Indicators:

  • Unusual web server access patterns
  • Memory access errors in system logs
  • Web server crash or restart events

Network Indicators:

  • Unusual HTTP requests to CODESYS web endpoints
  • Traffic patterns suggesting memory probing

SIEM Query:

source="CODESYS" AND (event="web_server_error" OR event="memory_access") OR destination_port IN (80, 443) AND source_ip NOT IN (trusted_networks)

🔗 References

📤 Share & Export