CVEReports
CVEReports

Automated vulnerability intelligence platform. Comprehensive reports for high-severity CVEs generated by AI.

Product

  • Home
  • Sitemap
  • RSS Feed

Company

  • About
  • Contact
  • Privacy Policy
  • Terms of Service

© 2026 CVEReports. All rights reserved.

Made with love by Amit Schendel & Alon Barad



CVE-2026-20230

CVE-2026-20230: Server-Side Request Forgery in Cisco Unified Communications Manager WebDialer Service

Alon Barad
Alon Barad
Software Engineer

Jun 4, 2026·6 min read·268 visits

Executive Summary (TL;DR)

Improper input validation in the WebDialer service of Cisco Unified CM enables unauthenticated remote attackers to execute a Server-Side Request Forgery (SSRF). This vulnerability allows attackers to query internal loopback APIs, write malicious files to the filesystem, and escalate privileges to root.

CVE-2026-20230 is a critical Server-Side Request Forgery (SSRF) vulnerability in the WebDialer service of Cisco Unified Communications Manager (Unified CM) and Cisco Unified Communications Manager Session Management Edition (Unified CM SME). The flaw arises from improper validation of input parameters within WebDialer HTTP requests. Unauthenticated remote attackers can exploit this vulnerability to force the application to make HTTP requests to internal administrative services bound to the loopback interface. In the Cisco Voice Operating System (VOS) environment, these local services trust loopback traffic inherently, permitting unauthorized file writes. By writing malicious files to specific system directories, the attacker can execute arbitrary commands with root privileges.

Vulnerability Overview

Cisco Unified Communications Manager (Unified CM) and Session Management Edition (Unified CM SME) are enterprise-class call control and session management platforms. Within these platforms, the Cisco WebDialer service enables users to initiate phone calls directly from web-based applications and directories. WebDialer is hosted as a Java-based application within the Apache Tomcat servlet container on the underlying Cisco Voice Operating System (VOS) platform.

To fulfill request redirection and integration with directory nodes, WebDialer must communicate across clusters. This functionality exposes web-facing servlet endpoints designed to process redirect URLs and target hosts. The vulnerability lies within these public-facing endpoints, which do not correctly validate or sanitize user-supplied server addresses.

An unauthenticated, network-based attacker can submit a crafted HTTP request containing malicious host destinations. Because the WebDialer service acts as a proxy for these requests, the vulnerability allows the attacker to route traffic to restricted network locations. This mechanism shifts the execution context from the public network space to the internal system architecture.

Root Cause Analysis

The fundamental flaw in CVE-2026-20230 is input validation failure (CWE-20) within the request-handling methods of the WebDialer servlet. Specifically, parameter values intended to specify redirect targets or directory servers are consumed by the backend application logic and utilized directly to establish outbound HTTP connections. The application fails to restrict these parameters to an authorized allowlist of external hosts or domains.

Furthermore, the input validation routine does not block loopback IP addresses (such as 127.0.0.1 and localhost) or private IP ranges. This allows an attacker to construct a request targeting internal administrative services running on the loopback interface of the Cisco server. These local microservices handle tasks such as diagnostic logging, configuration synchronization, and file management.

Within the Cisco Unified Communications platform, services binding strictly to 127.0.0.1 are designed with the assumption that only local, authenticated system components can access them. Consequently, these internal APIs do not enforce secondary authentication tokens or session validation. When the WebDialer service receives an SSRF payload pointing to 127.0.0.1, it connects to these local services under its own service account privileges, which inherently trusted.

Code Flow and Remediation Analysis

The vulnerability is located in the Java servlet responsible for processing user-initiated dialing and redirection requests. When a request is parsed, the application retrieves a destination parameter and constructs a java.net.URL object without validation.

Below is a conceptual representation of the vulnerable code path compared to the mitigated code structure implementing strict validation:

// VULNERABLE CODE PATH
public void doGet(HttpServletRequest request, HttpServletResponse response) {
    String targetUrl = request.getParameter("destination");
    // Vulnerability: The user-provided URL is used directly without validation
    HttpURLConnection conn = (HttpURLConnection) new URL(targetUrl).openConnection();
    conn.setRequestMethod("GET");
    InputStream responseStream = conn.getInputStream();
}

To fix this vulnerability, the system software updates implement an input filtering check. This check sanitizes target destination strings, resolves domains, and blocks requests routing to reserved or loopback IP spaces.

// PATCHED CODE PATH
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
    String targetUrl = request.getParameter("destination");
    URL url = new URL(targetUrl);
    String host = url.getHost();
    
    // Resolve and validate IP address
    InetAddress address = InetAddress.getByName(host);
    if (address.isLoopbackAddress() || address.isSiteLocalAddress() || address.isAnyLocalAddress()) {
        response.sendError(HttpServletResponse.SC_FORBIDDEN, "Invalid destination");
        return;
    }
    
    // Verify against domain allowlist
    if (!isDomainAllowed(host)) {
        response.sendError(HttpServletResponse.SC_FORBIDDEN, "Destination host not authorized");
        return;
    }
    
    HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    // Continue processing secure connection...
}

Exploitation and Privilege Escalation

To exploit this vulnerability, the attacker must have network access to the WebDialer service port, which is typically standard HTTPS (443). Additionally, the WebDialer service must be active. Although WebDialer is disabled by default, many enterprise environments enable it to support call control integrations with third-party software.

The attack begins by identifying vulnerable endpoints in the /webdialer/ application directory. The attacker transmits a crafted HTTP GET or POST request containing a URL pointing to a localized service port on the loopback adapter. This endpoint acts as a pivot to interact with administrative APIs.

Once connected to the local administrative API via SSRF, the attacker can leverage functions designed for system file writing. By passing payload parameters to these internal endpoints, the attacker writes configurations to the underlying system directory, such as /etc/cron.d/. Once written, the system's cron daemon executes the newly registered task automatically under root permissions, establishing a persistent root command execution channel.

Impact Assessment

Although the standard CVSS calculation results in a score of 8.6, Cisco raised the Security Impact Rating (SIR) to Critical. The mathematical score is limited by standard vector assumptions, which evaluate the initial impact in isolation. In reality, the file-write capability facilitated by this SSRF leads to complete system compromise.

A successful exploit enables the execution of commands as the administrative root user of the appliance. This allows attackers to bypass all application security controls, read or modify underlying SQL databases, and access sensitive customer call logs and directory configuration profiles.

Furthermore, compromise of the Unified CM server compromises the integrity of the telephony infrastructure. Attackers can leverage root access on the primary communications host to conduct active wiretapping, alter call routing configurations, or pivot to other network segments.

Detection and Remediation

Organizations should verify whether the WebDialer service is active within their environment. The status can be verified by navigating to the Cisco Unified Serviceability interface, choosing Service Activation under Tools, and confirming the operational state of Cisco WebDialer.

When immediate patching is not possible, the only effective workaround is to disable the WebDialer service entirely. Administrators can accomplish this in the Service Activation screen by unchecking the service and saving the configuration changes. Additionally, network administrators should restrict access to TCP ports 80 and 443 on affected nodes to authorized administrative hosts.

To identify potential exploitation attempts, security operations teams should analyze Tomcat access logs. Search for HTTP parameters within /webdialer/ paths containing instances of the loopback IP (127.0.0.1), hostnames resolving to localhost, or arbitrary non-standard port numbers. System log exports should also be checked for unauthorized modifications inside configuration directories.

Technical Appendix

CVSS Score
8.6/ 10
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:H/A:N

Affected Systems

Cisco Unified Communications Manager (Unified CM)Cisco Unified Communications Manager Session Management Edition (Unified CM SME)

Affected Versions Detail

Product
Affected Versions
Fixed Version
Cisco Unified Communications Manager
Cisco Systems, Inc.
All versions where WebDialer is active and unpatchedRefer to cisco-sa-cucm-ssrf-cXPnHcW
Cisco Unified Communications Manager SME
Cisco Systems, Inc.
All versions where WebDialer is active and unpatchedRefer to cisco-sa-cucm-ssrf-cXPnHcW
AttributeDetail
Vulnerability IDCVE-2026-20230
CWE IDCWE-918
Attack VectorNetwork (AV:N)
CVSS v3.1 Score8.6 (Critical Severity Impact Rating)
Exploit StatusNone (No public exploit code or active exploitation detected)
CISA KEV StatusNo

MITRE ATT&CK Mapping

T1190Exploit Public-Facing Application
Initial Access
T1005Data from Local System
Collection
T1068Exploitation for Privilege Escalation
Privilege Escalation
CWE-918
Server-Side Request Forgery (SSRF)

The web application receives a user-supplied destination address and makes a backend request to it without proper validation, facilitating access to internal-only endpoints.

References & Sources

  • [1]Cisco Unified Communications Manager SSRF Security Advisory
  • [2]CVE-2026-20230 on CVE.org

Attack Flow Diagram

Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.
Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.

More Reports

•2 days ago•CVE-2026-54068
5.9

CVE-2026-54068: Unauthenticated Server-Side Template Injection and SQLite Exfiltration in SiYuan PKM

An authentication bypass in the SiYuan personal knowledge management system before version 3.7.0 exposes a dynamic icon rendering endpoint. This endpoint processes client-supplied Go template directives. By submitting a crafted request, an unauthenticated remote attacker can leverage registered database template functions to execute arbitrary read-only SQL queries and exfiltrate workspace contents.

Amit Schendel
Amit Schendel
14 views•5 min read
•2 days ago•CVE-2026-54069
9.1

CVE-2026-54069: Authentication Bypass in SiYuan Note via Origin Header Spoofing

CVE-2026-54069 is a critical authentication bypass vulnerability in the SiYuan Note personal knowledge management system. The flaw is located in the HTTP server's middleware handling API authorization, which unconditionally trusts requests carrying a 'chrome-extension://' scheme in the Origin HTTP header, granting administrative access without validating API tokens.

Alon Barad
Alon Barad
13 views•5 min read
•2 days ago•CVE-2026-54089
9.1

CVE-2026-54089: Authentication Bypass by Spoofing in File Browser

CVE-2026-54089 is a critical authentication bypass vulnerability in File Browser affecting instances configured with proxy-based authentication. An unauthenticated remote attacker with direct network access can impersonate arbitrary users or register new accounts by spoofing configured HTTP headers.

Amit Schendel
Amit Schendel
13 views•7 min read
•2 days ago•GHSA-99J7-FHR2-XFJ4
10.0

GHSA-99J7-FHR2-XFJ4: Malicious Remote Code Execution Payload in 'exploration' Cargo Crate

The malicious Cargo package 'exploration' was uploaded to the crates.io registry. During compilation or package import, the crate executes code designed to establish an outbound TCP/HTTP connection, download an external second-stage binary, and execute the binary locally on the host machine. This creates an unauthenticated remote code execution vector impacting developer environments and continuous integration pipelines.

Amit Schendel
Amit Schendel
15 views•6 min read
•2 days ago•CVE-2026-54088
9.3

CVE-2026-54088: Pre-Authentication Remote Code Execution in File Browser Hook Authentication

CVE-2026-54088 is a critical command injection vulnerability in File Browser prior to version 2.63.6. When Hook Authentication is enabled, the application interpolates unsanitized credentials into a shell command, allowing unauthenticated remote code execution.

Alon Barad
Alon Barad
14 views•6 min read
•3 days ago•GHSA-QV4M-M73M-8HJ7
8.8

GHSA-qv4m-m73m-8hj7: Authenticated Arbitrary File Upload leading to Remote Code Execution in NotrinosERP

An authenticated remote code execution vulnerability exists in NotrinosERP (versions up to and including 1.0.0) within the Human Resource Management (HRM) module. Users with employee management permissions can upload arbitrary file types, including PHP scripts, which are written directly to a web-accessible directory. This allows for arbitrary code execution in the context of the web-server user.

Alon Barad
Alon Barad
9 views•6 min read