CVE-2025-2094

6.3 MEDIUM

📋 TL;DR

This critical vulnerability in TOTOLINK EX1800T routers allows remote attackers to execute arbitrary operating system commands via command injection in the setWiFiExtenderConfig function. Attackers can exploit this to gain full control of affected devices. Only TOTOLINK EX1800T routers running firmware version 9.1.0cu.2112_B20220316 are affected.

💻 Affected Systems

Products:
  • TOTOLINK EX1800T
Versions: 9.1.0cu.2112_B20220316
Operating Systems: Embedded Linux
Default Config Vulnerable: ⚠️ Yes
Notes: All devices running this specific firmware version are vulnerable by default. The vulnerability is in the web management interface accessible via HTTP/HTTPS.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete device compromise allowing attackers to install persistent backdoors, pivot to internal networks, intercept all network traffic, or use the device for botnet activities.

🟠

Likely Case

Attackers gain shell access to the router, enabling them to modify configurations, steal credentials, or launch attacks against internal network devices.

🟢

If Mitigated

If network segmentation and strict firewall rules are in place, impact may be limited to the router itself without lateral movement.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Public exploit code is available on GitHub. The vulnerability requires no authentication and can be exploited with simple HTTP requests containing malicious payloads.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Unknown

Vendor Advisory: https://www.totolink.net/

Restart Required: Yes

Instructions:

1. Check TOTOLINK website for firmware updates. 2. Download latest firmware for EX1800T. 3. Access router admin interface. 4. Navigate to firmware upgrade section. 5. Upload and apply new firmware. 6. Reboot router after update completes.

🔧 Temporary Workarounds

Disable Remote Management

all

Prevent external access to the vulnerable web interface

Access router admin panel -> System -> Management -> Disable 'Remote Management' or 'WAN Access'

Network Segmentation

linux

Isolate router management interface from untrusted networks

iptables -A INPUT -p tcp --dport 80 -j DROP
iptables -A INPUT -p tcp --dport 443 -j DROP

🧯 If You Can't Patch

  • Replace affected devices with non-vulnerable models
  • Implement strict network ACLs to block all external access to router management interfaces

🔍 How to Verify

Check if Vulnerable:

Check firmware version in router admin interface under System -> Firmware. If version is exactly 9.1.0cu.2112_B20220316, device is vulnerable.

Check Version:

curl -s http://router-ip/cgi-bin/cstecgi.cgi | grep -i version || ssh admin@router-ip 'cat /proc/version'

Verify Fix Applied:

After firmware update, verify version has changed from 9.1.0cu.2112_B20220316. Test the vulnerable endpoint with safe payloads to confirm command injection is no longer possible.

📡 Detection & Monitoring

Log Indicators:

  • Unusual HTTP POST requests to /cgi-bin/cstecgi.cgi with 'setWiFiExtenderConfig' parameter
  • Suspicious command strings like ';', '|', '`', '$()' in web logs
  • Unexpected process execution from web server context

Network Indicators:

  • HTTP requests containing shell metacharacters in apcliKey or key parameters
  • Outbound connections from router to suspicious IPs following web interface access

SIEM Query:

source="web_logs" AND uri="/cgi-bin/cstecgi.cgi" AND (param="apcliKey" OR param="key") AND (value="*;*" OR value="*|*" OR value="*`*" OR value="*$(*)")

🔗 References

📤 Share & Export