CVE-2021-21901

8.8 HIGH

📋 TL;DR

A stack-based buffer overflow vulnerability in Garrett Metal Detectors' iC Module CMA allows remote attackers to execute arbitrary code by sending specially-crafted UDP packets. This affects systems running CMA Version 5.0, potentially enabling complete system compromise. The vulnerability is particularly concerning for industrial security and physical access control systems.

💻 Affected Systems

Products:
  • Garrett Metal Detectors iC Module CMA
Versions: Version 5.0
Operating Systems: Embedded/Proprietary OS on Garrett iC Module hardware
Default Config Vulnerable: ⚠️ Yes
Notes: The vulnerability exists in the check_udp_crc function and requires UDP network access to the CMA service port (typically 5000).

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Remote code execution leading to complete system takeover, potential lateral movement within industrial networks, and physical security bypass at metal detector checkpoints.

🟠

Likely Case

Service disruption, denial of service, or limited code execution depending on exploit sophistication and system configuration.

🟢

If Mitigated

Contained impact with proper network segmentation and exploit mitigations, potentially limited to service crashes.

🌐 Internet-Facing: HIGH - The vulnerability is remotely exploitable via UDP packets without authentication, making internet-exposed systems extremely vulnerable.
🏢 Internal Only: HIGH - Even internally, any system with network access to the vulnerable service can exploit this without authentication.

🎯 Exploit Status

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

The vulnerability is well-documented with public proof-of-concept available. Exploitation requires sending a malicious UDP packet to trigger the buffer overflow during memcpy operation.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Version 5.1 or later

Vendor Advisory: https://www.garrett.com/security-advisory

Restart Required: Yes

Instructions:

1. Contact Garrett Metal Detectors support for updated firmware. 2. Download CMA Version 5.1 or later. 3. Follow Garrett's firmware update procedure for iC Module devices. 4. Verify successful update and restart affected systems.

🔧 Temporary Workarounds

Network Segmentation

all

Isolate iC Module CMA systems from untrusted networks using firewalls or VLANs.

iptables -A INPUT -p udp --dport 5000 -j DROP
netsh advfirewall firewall add rule name="Block CMA UDP" dir=in action=block protocol=UDP localport=5000

Service Port Restriction

linux

Restrict UDP port 5000 access to only trusted management systems.

iptables -A INPUT -p udp --dport 5000 -s trusted_ip -j ACCEPT
iptables -A INPUT -p udp --dport 5000 -j DROP

🧯 If You Can't Patch

  • Implement strict network segmentation to isolate vulnerable systems from all untrusted networks
  • Deploy intrusion detection/prevention systems to monitor for exploit attempts on UDP port 5000

🔍 How to Verify

Check if Vulnerable:

Check CMA version via device web interface or console. If version is exactly 5.0, the system is vulnerable.

Check Version:

Check via device web interface at http://[device_ip]/status or console command specific to Garrett iC Module

Verify Fix Applied:

Verify CMA version is 5.1 or later after applying update. Test UDP connectivity to port 5000 from untrusted networks should be blocked.

📡 Detection & Monitoring

Log Indicators:

  • Unexpected service crashes or restarts
  • Large UDP packets to port 5000
  • Memory access violation errors in system logs

Network Indicators:

  • Malformed UDP packets to port 5000 with unusual payload sizes
  • Exploit pattern matching from known PoC signatures

SIEM Query:

source_port=* AND dest_port=5000 AND protocol=UDP AND packet_size>normal_threshold

🔗 References

📤 Share & Export