CVE-2025-10401

6.3 MEDIUM

📋 TL;DR

This vulnerability allows remote attackers to execute arbitrary commands on D-Link DIR-823x routers by injecting malicious input into the target_addr parameter of the /goform/diag_ping endpoint. Attackers can potentially take full control of affected devices. All users of D-Link DIR-823x routers with firmware up to version 250416 are affected.

💻 Affected Systems

Products:
  • D-Link DIR-823x AX3000
Versions: All firmware versions up to 250416
Operating Systems: Embedded Linux-based router firmware
Default Config Vulnerable: ⚠️ Yes
Notes: The vulnerability exists in the web management interface which is typically enabled by default on both LAN and WAN interfaces.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

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

🟠

Likely Case

Attackers gain shell access to execute commands, potentially stealing credentials, modifying device settings, or launching attacks against other systems.

🟢

If Mitigated

If properly segmented and monitored, impact is limited to the router itself with no lateral movement to other systems.

🌐 Internet-Facing: HIGH - The vulnerable endpoint is accessible from the internet on default configurations, allowing remote exploitation without authentication.
🏢 Internal Only: MEDIUM - If internet-facing access is blocked, attackers would need internal network access to exploit the vulnerability.

🎯 Exploit Status

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

Public exploit details are available on GitHub, making this easily exploitable by attackers with basic skills.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Firmware version after 250416

Vendor Advisory: https://www.dlink.com/

Restart Required: Yes

Instructions:

1. Visit D-Link support website. 2. Download latest firmware for DIR-823x. 3. Log into router admin interface. 4. Navigate to System Tools > Firmware Upgrade. 5. Upload and install the new firmware. 6. Reboot the router.

🔧 Temporary Workarounds

Disable WAN access to web interface

all

Prevent external access to the vulnerable endpoint by disabling remote management

Log into router admin > Advanced > Remote Management > Disable

Block access to vulnerable endpoint

linux

Use firewall rules to block access to /goform/diag_ping

iptables -A INPUT -p tcp --dport 80 -m string --string "/goform/diag_ping" --algo bm -j DROP

🧯 If You Can't Patch

  • Segment the router on an isolated network segment with strict firewall rules
  • Implement network monitoring for suspicious traffic to/from the router

🔍 How to Verify

Check if Vulnerable:

Check current firmware version in router admin interface under Status > Device Info

Check Version:

curl -s http://router-ip/ | grep -i firmware

Verify Fix Applied:

Verify firmware version is greater than 250416 and test that command injection is no longer possible

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to /goform/diag_ping with shell metacharacters
  • Multiple failed login attempts followed by diag_ping access

Network Indicators:

  • HTTP requests containing shell commands in target_addr parameter
  • Outbound connections from router to suspicious IPs

SIEM Query:

source="router.log" AND (uri="/goform/diag_ping" AND (target_addr="*;*" OR target_addr="*|*" OR target_addr="*`*"))

🔗 References

📤 Share & Export