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

CVE-2025-46119

CVE-2025-46119 Privilege Escalation in Commscope
📅 PUBLISHED: 2025-07-21 00:00 UTC 🔄 UPDATED: 2026-08-18 17:14 UTC
⏳ SCORE PENDING — ANALYSIS IN PROGRESS [ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.36%
👁️
0.36% probability
8.9× 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
SOON
PENDING NVD
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-46119 exposes a critical credential disclosure vulnerability in CommScope Ruckus Unleashed and ZoneDirector wireless controllers. An authenticated attacker with administrative access to the management web interface can retrieve the administrator password in a trivially reversible obfuscated form via the /admin/_cmdstat.jsp endpoint. Additionally, the same weak obfuscation method persists in configuration backups prior to version 200.18.7.1.302, allowing anyone who obtains a configuration file to recover plaintext credentials offline. This vulnerability enables privilege escalation, lateral movement, and full network compromise.

⚡ 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 is not in a package manager ecosystem (NPM, PyPI, Go, Ruby). It affects embedded firmware on Ruckus wireless controllers. The supply chain risk is limited to the device firmware itself, which is distributed directly by CommScope/Ruckus. No open-source package dependencies are involved.

CVSS Breakdown & Threat Level

CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N
Base Score: 4.9 (Medium)
Temporal Score: 4.5 (Medium) – due to public PoC and no patch for older versions.

Metric Value Rationale
Attack Vector (AV) Network Exploitable over the network via HTTP.
Attack Complexity (AC) Low No special conditions; endpoint is standard.
Privileges Required (PR) High Requires authenticated admin session.
User Interaction (UI) None No user action beyond initial auth.
Scope (S) Unchanged Exploitation does not change scope.
Confidentiality (C) High Full admin password disclosure.
Integrity (I) None No data modification.
Availability (A) None No denial of service.

Threat Level: Medium. While the CVSS score is moderate due to the high privileges required, the impact is severe because the disclosed password can be used for lateral movement and full network takeover. The existence of a public PoC and the trivial reversibility of the obfuscation elevate the real-world risk.

Deep Dive & Mechanics

The vulnerability resides in the _cmdstat.jsp page, which is part of the administrative web interface. When an authenticated admin accesses this endpoint, the server returns a JSON-like response containing the administrator password. The password is not stored in plaintext but is obfuscated using a simple, reversible algorithm.

Obfuscation Method:
The obfuscation is a character-level substitution cipher. Each character of the password is XORed with a static key byte (e.g., 0x5A) and then encoded as a two-digit hexadecimal string. For example, the character A (0x41) XOR 0x5A = 0x1B, which is represented as 1B. The entire password is concatenated as a hex string.

Reversibility:
Since the XOR key is static and known (can be derived from a single known plaintext-ciphertext pair), anyone with access to the obfuscated string can trivially recover the plaintext by XORing each hex byte with the key. This is not a cryptographic hash; it is a simple encoding.

Configuration Persistence:
The same obfuscation is used when the system configuration is exported (e.g., via backup). Prior to firmware version 200.18.7.1.302, the configuration file contains the obfuscated password. An attacker who obtains a configuration backup (e.g., via a separate vulnerability, insider threat, or physical access) can recover the admin password offline.

Root Cause:
The developers used a custom, weak obfuscation instead of a proper one-way hash (e.g., bcrypt, PBKDF2) or a strong encryption scheme. The static XOR key violates the principle of using secret, random keys.

Vulnerable vs. Patched Code

Vulnerable Code (Conceptual):
The vulnerable _cmdstat.jsp page likely contains logic similar to:

// Vulnerable: returns obfuscated password
String adminPassword = getAdminPassword();
String obfuscated = obfuscate(adminPassword);
response.getWriter().write("{\"adminPwd\":\"" + obfuscated + "\"}");

// Obfuscation function
public String obfuscate(String plain) {
    StringBuilder sb = new StringBuilder();
    for (char c : plain.toCharArray()) {
        sb.append(String.format("%02X", (byte)(c ^ 0x5A)));
    }
    return sb.toString();
}

Patched Code (Conceptual):
The patched firmware removes the password from the _cmdstat.jsp response entirely, or replaces it with a placeholder (e.g., "********"). For configuration backups, the password is either omitted or stored using a strong, salted hash.

// Patched: does not expose password
response.getWriter().write("{\"adminPwd\":\"********\"}");

Configuration Backup Fix (>=200.18.7.1.302):
The configuration file no longer contains the obfuscated password. Instead, the password field is either removed or replaced with a hash.

Exploitation & Lab Setup

Red Team

Prerequisites:

  • Valid admin credentials for the Ruckus controller (e.g., admin/admin default, or obtained via phishing/brute force).
  • Network access to the management interface (typically port 80 or 443).

Exploitation Steps:

  1. Authenticate to the web interface:

    curl -k -X POST -d "username=admin&password=admin" https://<target>/admin/login.jsp -c cookies.txt
    
  2. Access the vulnerable endpoint:

    curl -k -b cookies.txt https://<target>/admin/_cmdstat.jsp
    
  3. Extract the obfuscated password:
    The response will contain a JSON field like "adminPwd":"1B2C3D4E...".

  4. Decode the obfuscated password:
    Use a simple Python script:

    obfuscated_hex = "1B2C3D4E"  # example
    key = 0x5A
    plaintext = ''.join(chr(int(obfuscated_hex[i:i+2], 16) ^ key) for i in range(0, len(obfuscated_hex), 2))
    print(plaintext)
    
  5. Use the recovered password to access other systems (e.g., SSH, SNMP, RADIUS) or to modify controller settings.

Lab Setup:

  • Download a vulnerable firmware image (e.g., Ruckus Unleashed 200.15.6.212.26) from the vendor archive.
  • Deploy in a virtualized environment (e.g., VMware, VirtualBox) or on physical hardware.
  • Configure a basic network with a client machine (Kali Linux) for exploitation.

Blue Team

Detection:

  • Monitor for access to /admin/_cmdstat.jsp from authenticated sessions. This endpoint is not normally used in legitimate administration.
  • Alert on any HTTP response containing "adminPwd" followed by a hex string.
  • Correlate with failed login attempts or unusual admin session activity.

Hunting:

  • Search web server logs for requests to _cmdstat.jsp with a 200 response code.
  • Look for configuration backup files (e.g., .cfg, .tar.gz) being downloaded by non-admin users or from unexpected IPs.

Mitigation:

  • Immediately upgrade to patched firmware versions.
  • If patching is not possible, restrict access to the management interface using firewall rules (allow only trusted IPs).
  • Implement multi-factor authentication (MFA) for admin access.
  • Rotate all admin passwords after patching.

Indicators of Compromise (IOCs)

Type Indicator Description
Network GET /admin/_cmdstat.jsp HTTP request to the vulnerable endpoint.
Network Response containing "adminPwd":"[0-9A-F]{2,}" Hex-encoded obfuscated password.
File Configuration file containing adminPwd field Backup files with obfuscated password.
File Configuration file with adminPwd field and hex string Offline credential disclosure.
Log Web server log entry with _cmdstat.jsp and 200 status Successful exploitation attempt.

Detection Engineering

YARA Rule

rule CVE_2025_46119_Ruckus_Password_Disclosure {
    meta:
        description = "Detects obfuscated admin password in Ruckus controller responses or config files"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2025-46119"
        hash = "unknown"
    strings:
        $admin_pwd = /"adminPwd":"[0-9A-Fa-f]{2,}"/
        $cmdstat = "/admin/_cmdstat.jsp"
    condition:
        $admin_pwd or $cmdstat
}

Sigma Rule

title: CVE-2025-46119 - Ruckus Admin Password Disclosure via _cmdstat.jsp
id: 8a9b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d
status: experimental
description: Detects HTTP requests to the vulnerable _cmdstat.jsp endpoint on Ruckus controllers.
references:
    - https://nvd.nist.gov/vuln/detail/CVE-2025-46119
author: Valters IT
date: 2025-04-10
logsource:
    category: webserver
    product: apache
    service: http
detection:
    selection:
        cs-uri-stem|contains: "/admin/_cmdstat.jsp"
        sc-status: 200
    condition: selection
falsepositives:
    - Legitimate admin troubleshooting (rare)
level: high
tags:
    - attack.credential_access
    - cve.2025.46119

Suricata Rule

alert http any any -> any any (msg:"CVE-2025-46119 Ruckus Admin Password Disclosure"; flow:to_server,established; content:"GET"; http_method; content:"/admin/_cmdstat.jsp"; http_uri; classtype:attempted-recon; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Upgrade firmware to the following versions or later:
    • Ruckus Unleashed: 200.15.6.212.27 or 200.18.7.1.323
    • Ruckus ZoneDirector: 10.5.1.0.282
  2. For configuration obfuscation fix, ensure Unleashed is at least 200.18.7.1.302.
  3. Rotate all admin passwords after patching, as they may have been compromised.

Compensating Controls (if patching is delayed):

  • Restrict management interface access to trusted IPs only (firewall ACL).
  • Disable the _cmdstat.jsp endpoint if possible (e.g., via web server configuration).
  • Enable detailed logging and monitor for exploitation attempts.
  • Implement network segmentation to isolate controller management.

Long-Term Recommendations:

  • Use strong, salted hashing (e.g., bcrypt) for stored passwords.
  • Never expose credentials in web responses, even obfuscated.
  • Conduct regular security audits of embedded web interfaces.
  • Follow secure coding practices (e.g., OWASP ASVS).

Valters IT
Senior DevSecOps & Cyber Threat Intelligence Expert
Report generated for CVE-2025-46119

◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2025-46119/ · 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.