CVE-2026-3696

7.3 HIGH

📋 TL;DR

This CVE describes a remote command injection vulnerability in Totolink N300RH routers. Attackers can execute arbitrary operating system commands by manipulating the setWiFiWpsConfig function in the CGI handler. All users of affected Totolink N300RH routers with vulnerable firmware versions are at risk.

💻 Affected Systems

Products:
  • Totolink N300RH
Versions: 6..1c.1353_B20190305 (specific vulnerable version), likely affects similar firmware versions
Operating Systems: Embedded Linux (router firmware)
Default Config Vulnerable: ⚠️ Yes
Notes: The vulnerability exists in the default CGI handler configuration. No special configuration is required for exploitation.

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete router compromise allowing attackers to install persistent backdoors, intercept network traffic, pivot to internal networks, or use the router as part of a botnet.

🟠

Likely Case

Router takeover enabling network traffic monitoring, DNS hijacking, credential theft, and lateral movement to connected devices.

🟢

If Mitigated

Limited impact if routers are behind firewalls with strict inbound filtering, though internal threats remain possible.

🌐 Internet-Facing: HIGH - The vulnerability is remotely exploitable and public exploits exist for internet-facing devices.
🏢 Internal Only: HIGH - Even internally, the vulnerability can be exploited by attackers who gain network access through other means.

🎯 Exploit Status

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

The exploit has been made public on GitHub and requires minimal technical skill to execute against vulnerable devices.

🛠️ 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 N300RH
3. Access router admin interface
4. Navigate to firmware update section
5. Upload and apply new firmware
6. Reboot router

🔧 Temporary Workarounds

Disable WPS functionality

all

Disable WiFi Protected Setup (WPS) feature to potentially block exploitation via the vulnerable setWiFiWpsConfig function

Restrict CGI access

linux

Block external access to /cgi-bin/cstecgi.cgi via firewall rules

iptables -A INPUT -p tcp --dport 80 -m string --string "/cgi-bin/cstecgi.cgi" --algo bm -j DROP
iptables -A INPUT -p tcp --dport 443 -m string --string "/cgi-bin/cstecgi.cgi" --algo bm -j DROP

🧯 If You Can't Patch

  • Isolate affected routers in separate network segments with strict firewall rules
  • Implement network monitoring for unusual CGI requests and command execution patterns

🔍 How to Verify

Check if Vulnerable:

Check router firmware version via admin interface or attempt safe test of CGI endpoint with controlled payload

Check Version:

curl -s http://router-ip/cgi-bin/cstecgi.cgi | grep -i version || check router admin interface

Verify Fix Applied:

Verify firmware version has been updated beyond vulnerable version and test that command injection no longer works

📡 Detection & Monitoring

Log Indicators:

  • Unusual CGI requests to /cgi-bin/cstecgi.cgi
  • Command execution patterns in system logs
  • Multiple failed authentication attempts followed by CGI access

Network Indicators:

  • HTTP POST requests to /cgi-bin/cstecgi.cgi with shell metacharacters
  • Outbound connections from router to suspicious IPs

SIEM Query:

source="router_logs" AND (uri="/cgi-bin/cstecgi.cgi" OR command="setWiFiWpsConfig") AND (payload CONTAINS ";" OR payload CONTAINS "|" OR payload CONTAINS "`")

🔗 References

📤 Share & Export