☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
Cisco logo [ WEBSITE ] [ VENDOR STATS ]
CVSS: 8.6 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:H/A:N 🐛 CWE-918
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2026-20230

CVE-2026-20230 Server-Side Request Forgery in Cisco
📅 PUBLISHED: 2026-06-03 18:16 UTC 🔄 UPDATED: 2026-10-08 19:48 UTC
[ ZERO-DAY / UNPATCHED ] [ DEFENSE PATCH ↓ ]
🚨 ACTIVELY EXPLOITED (KEV) 💣 PoC: Public
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 88.20%
👁️
88.20% probability
1000×+ above the median CVE
Tier: CRITICAL
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1090
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
Country: USA License: Commercial
VULNERABLE: Unified Communications Manager
CVSS VECTOR BREAKDOWN 8.6
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: N Privileges Required None
UI: N User Interaction None
S: C Scope Changed
C: N Confidentiality None
I: H Integrity High
A: N Availability None
8.6
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2026-20230 is a critical, unauthenticated Server-Side Request Forgery (SSRF) vulnerability in Cisco Unified Communications Manager (Unified CM) and Cisco Unified Communications Manager Session Management Edition (Unified CM SME). The vulnerability arises from improper input validation for specific HTTP requests, allowing an attacker to craft a malicious HTTP request that forces the affected device to make internal requests. A successful exploit can lead to arbitrary file writes to the underlying operating system, which can then be leveraged to escalate privileges to root. The CVSS score is 8.6, but Cisco has assigned a Security Impact Rating (SIR) of Critical due to the potential for full system compromise. The WebDialer service must be enabled for exploitation, and it is disabled by default. No public proof-of-concept (PoC) or exploit code is currently available, and no patch has been released.

⚡ 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 related to NPM, PyPI, Go, or Ruby packages. It is a network-based vulnerability in a Cisco appliance.

CVSS Breakdown & Threat Level

  • CVSS Score: 8.6 (High)
  • Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • Attack Vector (AV): Network (N) - Exploitable remotely.
  • Attack Complexity (AC): Low (L) - No special conditions required.
  • Privileges Required (PR): None (N) - No authentication needed.
  • User Interaction (UI): None (N) - No user action required.
  • Scope (S): Unchanged (U) - The vulnerable component and the impacted component are the same.
  • Confidentiality (C): High (H) - Full read access to system files.
  • Integrity (I): High (H) - Ability to write arbitrary files.
  • Availability (A): High (H) - Potential for denial of service or system takeover.
  • Threat Level: Critical (per Cisco SIR). The ability to escalate to root makes this a severe threat, despite the default-disabled precondition.

Deep Dive & Mechanics

The vulnerability resides in the HTTP request handling logic of Cisco Unified CM and Unified CM SME. The WebDialer service, which provides click-to-call functionality, is the attack vector. When enabled, it processes HTTP requests without proper validation of user-supplied URLs or parameters.

Mechanism:

  1. An unauthenticated attacker sends a crafted HTTP request to the WebDialer endpoint (e.g., /webdialer/).
  2. The request contains a malicious URL or parameter that the server uses to make an internal HTTP request (SSRF).
  3. Due to improper input validation, the server does not restrict the target of this internal request. The attacker can target internal services, such as the local file system (using file:// protocol) or internal management interfaces.
  4. By exploiting the SSRF, the attacker can write arbitrary files to the operating system. For example, they could write a malicious cron job, SSH key, or web shell.
  5. The attacker then uses the written file to escalate privileges to root, achieving full system compromise.

Root Cause: Lack of input validation and sanitization on the URL or parameters used in the internal HTTP request. The server trusts the attacker-supplied input without checking for dangerous schemes (e.g., file://, gopher://) or internal IP addresses.

Vulnerable vs. Patched Code

Since no patch is available, a direct code comparison is not possible. However, the vulnerable code pattern is typical of SSRF flaws:

Vulnerable Code (Conceptual):

# Vulnerable: No validation of the URL
def handle_webdialer_request(request):
    target_url = request.GET.get('url')
    # Directly fetches the URL without validation
    response = requests.get(target_url)
    return response.content

Patched Code (Conceptual):

# Patched: Validate and sanitize the URL
def handle_webdialer_request(request):
    target_url = request.GET.get('url')
    # Validate the URL scheme and host
    parsed = urlparse(target_url)
    if parsed.scheme not in ['http', 'https']:
        raise InvalidRequest("Invalid scheme")
    if parsed.hostname in ['localhost', '127.0.0.1', '0.0.0.0']:
        raise InvalidRequest("Internal host not allowed")
    # Use a whitelist of allowed external hosts
    if not is_allowed_host(parsed.hostname):
        raise InvalidRequest("Host not allowed")
    response = requests.get(target_url)
    return response.content

Exploitation & Lab Setup

Red Team

Prerequisites:

  • A lab environment with Cisco Unified CM (version with WebDialer enabled).
  • Network access to the WebDialer service (default port 80/443).
  • WebDialer service must be enabled.

Exploitation Steps:

  1. Reconnaissance: Identify the WebDialer endpoint. Common paths include /webdialer/ or /WebDialer/.
  2. Craft SSRF Payload: Create a request that forces the server to write a file. For example, using the file:// scheme to write to a cron job directory:
    POST /webdialer/ HTTP/1.1
    Host: target.cisco.com
    Content-Type: application/x-www-form-urlencoded
    
    url=file:///etc/cron.d/malicious&data=* * * * * root /tmp/exploit.sh
    
    Note: The exact parameter names are unknown; this is a conceptual example.
  3. Execute Payload: Send the crafted request using curl or a custom script.
    curl -X POST "http://target.cisco.com/webdialer/" -d "url=file:///etc/cron.d/malicious&data=* * * * * root /tmp/exploit.sh"
    
  4. Escalate Privileges: The written cron job executes a script that adds an SSH key or creates a new root user.
  5. Gain Root Access: SSH into the device with the new key or credentials.

No public exploit code is available.

Blue Team

Detection & Response:

  1. Monitor WebDialer Logs: Look for unusual HTTP requests to /webdialer/ with parameters containing file://, gopher://, or internal IP addresses.
  2. Network Monitoring: Detect outbound connections from the Unified CM server to unexpected internal hosts or ports.
  3. File Integrity Monitoring (FIM): Monitor for new files created in sensitive directories like /etc/cron.d/, /tmp/, or /root/.ssh/.
  4. Disable WebDialer: If not required, disable the WebDialer service immediately.
  5. Apply Access Controls: Restrict access to the WebDialer endpoint to trusted IP addresses only.

Indicators of Compromise (IOCs)

  • Network IOCs:

    • HTTP requests to /webdialer/ with parameters containing file://, gopher://, or dict:// schemes.
    • Outbound connections from the Unified CM server to internal IP addresses (e.g., 127.0.0.1, 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) on unusual ports.
    • Anomalous POST requests to the WebDialer endpoint with large or suspicious payloads.
  • Host IOCs:

    • New files in /etc/cron.d/, /etc/cron.hourly/, or similar cron directories.
    • New SSH keys in /root/.ssh/authorized_keys or /home/*/.ssh/authorized_keys.
    • Unexpected processes running as root.
    • Modified system binaries or configuration files.
  • Log IOCs:

    • Web server logs showing requests to /webdialer/ with url parameter containing file://.
    • System logs showing cron jobs being executed from unexpected sources.

Detection Engineering

YARA Rule

rule CVE_2026_20230_SSRF_WebDialer {
    meta:
        description = "Detects SSRF attempts against Cisco Unified CM WebDialer"
        author = "Valters IT"
        date = "2026-01-01"
        reference = "CVE-2026-20230"
    strings:
        $s1 = "file://" ascii wide nocase
        $s2 = "gopher://" ascii wide nocase
        $s3 = "dict://" ascii wide nocase
        $s4 = "/webdialer/" ascii wide nocase
        $s5 = "url=" ascii wide nocase
    condition:
        all of ($s4, $s5) and 1 of ($s1, $s2, $s3)
}

Sigma Rule

title: Cisco Unified CM WebDialer SSRF Attempt
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects SSRF attempts against Cisco Unified CM WebDialer (CVE-2026-20230)
author: Valters IT
date: 2026-01-01
logsource:
    category: webserver
    product: cisco
detection:
    selection:
        cs-uri-query|contains:
            - '/webdialer/'
            - 'url=file://'
            - 'url=gopher://'
            - 'url=dict://'
    condition: selection
falsepositives:
    - Legitimate use of file:// scheme (unlikely)
level: critical

Suricata Rule

alert http any any -> $HOME_NET any (
    msg:"CVE-2026-20230 - Cisco Unified CM WebDialer SSRF Attempt";
    flow:to_server,established;
    content:"/webdialer/"; http_uri;
    content:"url="; http_client_body;
    pcre:"/(file|gopher|dict):\/\//Ri";
    classtype:attempted-admin;
    sid:1000001;
    rev:1;
    reference:cve,2026-20230;
)

Remediation & Mitigation

Immediate Actions:

  1. Disable WebDialer: If the WebDialer service is not required, disable it immediately. This is the most effective mitigation.
    admin: utils service disable Cisco WebDialer
    
  2. Access Control: Restrict access to the WebDialer endpoint using firewall rules or ACLs. Only allow trusted IP addresses.
  3. Monitor: Implement the detection rules above to identify any exploitation attempts.

Long-Term Remediation:

  1. Patch: Apply the official patch from Cisco as soon as it becomes available. Monitor Cisco's security advisories.
  2. Upgrade: Upgrade to a patched version of Cisco Unified CM.
  3. Network Segmentation: Place the Unified CM server in a segmented network with strict egress filtering to prevent SSRF from reaching internal systems.
  4. Input Validation: If custom development is involved, implement strict input validation and allowlisting for all user-supplied URLs.

Valters IT

💣 PoC CODE AVAILABLE

Exploit code for this CVE is tracked in our database. Access poc_code via API Pro.

[ API_PRO ] →
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2026-20230/ · 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.