CVE-2025-2094
📋 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
- TOTOLINK EX1800T
📦 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.
🎯 Exploit Status
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
allPrevent external access to the vulnerable web interface
Access router admin panel -> System -> Management -> Disable 'Remote Management' or 'WAN Access'
Network Segmentation
linuxIsolate 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
- https://github.com/kn0sky/cve/blob/main/TOTOLINK%20EX1800T/OS%20Command%20Injection%2001%20setWiFiExtenderConfig-_apcliKey.md
- https://vuldb.com/?ctiid.298952
- https://vuldb.com/?id.298952
- https://vuldb.com/?submit.515319
- https://www.totolink.net/
- https://github.com/kn0sky/cve/blob/main/TOTOLINK%20EX1800T/OS%20Command%20Injection%2001%20setWiFiExtenderConfig-_apcliKey.md