CVE-2021-37204

7.5 HIGH

📋 TL;DR

An unauthenticated attacker can cause denial-of-service on Siemens SIMATIC industrial control systems by sending specially crafted packets to port 102/TCP. This affects multiple PLC and controller families including S7-1200, S7-1500, ET 200SP, and Drive Controllers. The device requires a restart to restore normal operations.

💻 Affected Systems

Products:
  • SIMATIC Drive Controller family
  • SIMATIC ET 200SP Open Controller CPU 1515SP PC
  • SIMATIC ET 200SP Open Controller CPU 1515SP PC2
  • SIMATIC ET 200SP Open Controller CPU 1515SP PC2 Ready4Linux
  • SIMATIC S7-1200 CPU family
  • SIMATIC S7-1500 CPU family
  • SIMATIC S7-1500 Software Controller
  • SIMATIC S7-PLCSIM Advanced
  • SIPLUS TIM 1531 IRC
  • TIM 1531 IRC
Versions: Multiple version ranges as specified in CVE description, generally versions before V2.9.4, V21.9.4, V4.5.2, or V4.0 SP1 depending on product
Operating Systems: Not applicable - embedded industrial controllers
Default Config Vulnerable: ⚠️ Yes
Notes: All affected devices with default configurations listening on port 102/TCP are vulnerable. SIPLUS variants (extended temperature/ruggedized) are also affected.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Critical industrial processes are disrupted, causing production downtime, safety hazards, or equipment damage requiring physical intervention to restart affected PLCs.

🟠

Likely Case

Temporary disruption of industrial automation processes until affected devices can be manually restarted, causing production delays.

🟢

If Mitigated

Limited impact if devices are behind firewalls with restricted network access and proper segmentation from untrusted networks.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires sending specially crafted packets to port 102/TCP, which is the standard Siemens S7 communication port. No authentication required.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: V2.9.4, V21.9.4, V4.5.2, V4.0 SP1, V2.3.6 or later depending on product family

Vendor Advisory: https://cert-portal.siemens.com/productcert/pdf/ssa-838121.pdf

Restart Required: Yes

Instructions:

1. Download appropriate firmware updates from Siemens Industry Online Support. 2. Backup current configuration. 3. Apply firmware update using TIA Portal or appropriate programming software. 4. Restart device. 5. Verify firmware version and restore configuration if needed.

🔧 Temporary Workarounds

Network Segmentation

all

Restrict access to port 102/TCP using firewalls to only trusted engineering stations and authorized networks

Disable Unnecessary Services

all

If not required, disable S7 communication services or restrict to specific interfaces

🧯 If You Can't Patch

  • Implement strict network segmentation with firewall rules blocking port 102/TCP from untrusted networks
  • Deploy intrusion detection systems monitoring for anomalous traffic patterns on port 102/TCP

🔍 How to Verify

Check if Vulnerable:

Check device firmware version against affected ranges in Siemens advisory SSA-838121

Check Version:

Use TIA Portal or device web interface to check firmware version. Command varies by product: For S7-1500: Use TIA Portal Project > Online & Diagnostics > Online access > Firmware

Verify Fix Applied:

Verify firmware version is updated to patched versions: V2.9.4+, V21.9.4+, V4.5.2+, V4.0 SP1+, or V2.3.6+ depending on product

📡 Detection & Monitoring

Log Indicators:

  • Device restart logs without normal shutdown
  • Communication errors on port 102/TCP
  • PLC going to STOP mode unexpectedly

Network Indicators:

  • Unusual traffic patterns to port 102/TCP from unauthorized sources
  • Malformed S7 packets
  • Multiple connection attempts to port 102

SIEM Query:

source_port:102 AND (packet_size:<100 OR packet_size:>1500) OR dest_port:102 AND protocol:TCP AND (bytes_sent:>1000 OR connection_duration:<1s)

🔗 References

📤 Share & Export