CVE-2023-50201

8.8 HIGH

📋 TL;DR

This vulnerability allows network-adjacent attackers to execute arbitrary code as root on D-Link G416 routers without authentication. Attackers can exploit improper input validation in the HTTP service to inject commands through the cfgsave upusb functionality. Only D-Link G416 router users are affected.

💻 Affected Systems

Products:
  • D-Link G416 Wireless Router
Versions: All versions prior to patched firmware
Operating Systems: Embedded Linux firmware
Default Config Vulnerable: ⚠️ Yes
Notes: HTTP service on port 80 is enabled by default. No authentication required for exploitation.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete router compromise allowing attackers to intercept all network traffic, install persistent malware, pivot to internal networks, and brick the device.

🟠

Likely Case

Router takeover leading to DNS hijacking, credential theft from network traffic, and creation of botnet nodes.

🟢

If Mitigated

No impact if router is patched or isolated from untrusted networks.

🌐 Internet-Facing: HIGH
🏢 Internal Only: HIGH

🎯 Exploit Status

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

Exploit requires network adjacency but no authentication. ZDI has published technical details.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Check D-Link support for latest firmware

Vendor Advisory: https://supportannouncement.us.dlink.com/announcement/publication.aspx?name=SAP10367

Restart Required: Yes

Instructions:

1. Log into router admin interface. 2. Navigate to firmware update section. 3. Download latest firmware from D-Link support site. 4. Upload and apply firmware update. 5. Reboot router.

🔧 Temporary Workarounds

Disable HTTP admin interface

all

Disable the vulnerable HTTP service on port 80 and use HTTPS only

Router-specific: Disable HTTP in admin interface under Remote Management or Administration settings

Network segmentation

linux

Isolate router from untrusted networks using firewall rules

iptables -A INPUT -p tcp --dport 80 -j DROP
ufw deny 80/tcp

🧯 If You Can't Patch

  • Replace router with a different model that doesn't have this vulnerability
  • Place router behind a dedicated firewall that blocks all inbound traffic to port 80

🔍 How to Verify

Check if Vulnerable:

Check firmware version in router admin interface and compare with D-Link's patched version list

Check Version:

Router-specific: Check via admin interface or curl -s http://router-ip/version

Verify Fix Applied:

Verify firmware version matches latest patched version from D-Link advisory

📡 Detection & Monitoring

Log Indicators:

  • Unusual HTTP POST requests to cfgsave endpoints
  • Multiple failed login attempts followed by successful cfgsave requests
  • System log entries showing unexpected command execution

Network Indicators:

  • HTTP traffic to router port 80 containing command injection patterns
  • Outbound connections from router to suspicious IPs

SIEM Query:

source="router.log" AND ("cfgsave" OR "upusb") AND (cmd.exe OR /bin/sh OR wget OR curl)

🔗 References

📤 Share & Export