CVE-2023-49424

9.8 CRITICAL

📋 TL;DR

CVE-2023-49424 is a critical stack overflow vulnerability in Tenda AX12 routers that allows remote attackers to execute arbitrary code by sending specially crafted requests to the /goform/SetVirtualServerCfg endpoint. This affects all users running Tenda AX12 routers with firmware version V22.03.01.46. Successful exploitation could lead to complete device compromise.

💻 Affected Systems

Products:
  • Tenda AX12
Versions: V22.03.01.46
Operating Systems: Embedded Linux (router firmware)
Default Config Vulnerable: ⚠️ Yes
Notes: The vulnerability exists in the default configuration. No special settings are required to be vulnerable.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Remote unauthenticated attacker gains full control of the router, enabling traffic interception, network pivoting, persistent backdoor installation, and bricking of the device.

🟠

Likely Case

Remote code execution leading to router compromise, allowing attackers to modify network settings, intercept traffic, or use the device as part of a botnet.

🟢

If Mitigated

Limited impact if the router is behind a firewall with restricted WAN access and proper network segmentation is implemented.

🌐 Internet-Facing: HIGH - The vulnerable endpoint is typically accessible from WAN interfaces, making internet-exposed routers immediately vulnerable to remote exploitation.
🏢 Internal Only: MEDIUM - Internal attackers or malware on the local network could exploit this vulnerability to compromise the router and pivot to other network segments.

🎯 Exploit Status

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

Public proof-of-concept code is available in the GitHub references. The exploit requires sending a specially crafted HTTP POST request to the vulnerable endpoint.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Unknown

Vendor Advisory: Not available

Restart Required: Yes

Instructions:

1. Check Tenda's official website for firmware updates. 2. If an update is available, download the latest firmware. 3. Log into the router admin interface. 4. Navigate to System Tools > Firmware Upgrade. 5. Upload and install the new firmware. 6. Reboot the router after installation.

🔧 Temporary Workarounds

Disable Remote Management

all

Prevent external access to the router's web interface by disabling remote management features.

Log into router admin > Advanced > System Tools > Remote Management > Disable

Firewall Restriction

linux

Use network firewalls to block external access to port 80/443 on the router's WAN interface.

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

🧯 If You Can't Patch

  • Isolate the router on a dedicated network segment with strict firewall rules limiting traffic to/from the device.
  • Implement network monitoring to detect exploitation attempts and consider replacing the router with a patched or different model.

🔍 How to Verify

Check if Vulnerable:

Check the router firmware version via the web interface at System Status > Firmware Version. If it shows V22.03.01.46, the device is vulnerable.

Check Version:

curl -s http://router-ip/goform/getStatus | grep version or check web interface manually

Verify Fix Applied:

After updating firmware, verify the version no longer shows V22.03.01.46. Test by attempting to access /goform/SetVirtualServerCfg with monitoring for crash or unexpected behavior.

📡 Detection & Monitoring

Log Indicators:

  • HTTP POST requests to /goform/SetVirtualServerCfg with unusually long list parameter
  • Router crash/reboot logs
  • Memory corruption errors in system logs

Network Indicators:

  • HTTP traffic to router IP on port 80/443 with POST to /goform/SetVirtualServerCfg
  • Unusual outbound connections from router after exploitation

SIEM Query:

source="router_logs" AND (url="/goform/SetVirtualServerCfg" OR message="stack overflow" OR message="segmentation fault")

🔗 References

📤 Share & Export