CVE-2022-29958

9.8 CRITICAL

📋 TL;DR

CVE-2022-29958 allows unauthenticated attackers to execute arbitrary machine code on JTEKT TOYOPUC PLCs by exploiting the unauthenticated CMPLink/TCP protocol used for engineering functions. This gives attackers full control over the PLC's CPU module since these devices lack memory protection mechanisms. Organizations using TOYOPUC PLCs in industrial control systems are affected.

💻 Affected Systems

Products:
  • JTEKT TOYOPUC PLCs
Versions: All versions through 2022-04-29
Operating Systems: PLC firmware
Default Config Vulnerable: ⚠️ Yes
Notes: PC10G-CPU and likely other TOYOPUC CPU modules are affected. These use processors without MPU/MMU, providing no memory protection.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete compromise of industrial processes, allowing attackers to manipulate physical equipment, cause equipment damage, disrupt operations, or create safety hazards.

🟠

Likely Case

Unauthorized modification of control logic leading to process disruption, data manipulation, or industrial espionage.

🟢

If Mitigated

Limited impact if network segmentation and access controls prevent attackers from reaching PLCs.

🌐 Internet-Facing: HIGH - Direct internet exposure would allow remote attackers to fully compromise PLCs.
🏢 Internal Only: HIGH - Even internally, any network access to PLCs allows full compromise due to unauthenticated protocol.

🎯 Exploit Status

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

Exploitation requires network access to PLC but no authentication. The protocol is documented for engineering use.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Not available

Vendor Advisory: https://www.cisa.gov/uscert/ics/advisories/icsa-22-172-02

Restart Required: No

Instructions:

No official patch available. Follow CISA ICS advisory recommendations for mitigation.

🔧 Temporary Workarounds

Network Segmentation

all

Isolate TOYOPUC PLCs in dedicated network segments with strict access controls.

Firewall Rules

all

Block CMPLink/TCP protocol (default port 102) from all unauthorized networks and hosts.

🧯 If You Can't Patch

  • Implement strict network segmentation with industrial DMZs
  • Deploy intrusion detection systems monitoring for CMPLink/TCP traffic anomalies

🔍 How to Verify

Check if Vulnerable:

Check if TOYOPUC PLCs are accessible on network and if CMPLink/TCP port 102 is open and accessible.

Check Version:

Consult PLC configuration or vendor documentation for firmware version.

Verify Fix Applied:

Verify network segmentation prevents unauthorized access to PLCs and CMPLink/TCP traffic is blocked.

📡 Detection & Monitoring

Log Indicators:

  • Unauthorized CMPLink/TCP connection attempts
  • Unexpected engineering workstation connections

Network Indicators:

  • CMPLink/TCP traffic from unauthorized IPs
  • Port 102 scans or connections

SIEM Query:

source_port:102 OR dest_port:102 AND (NOT authorized_source_ip)

🔗 References

📤 Share & Export