CVE-2020-5412 Overview
CVE-2020-5412 is a Server-Side Request Forgery (SSRF) vulnerability affecting Spring Cloud Netflix. The vulnerability exists in the Hystrix Dashboard proxy.stream endpoint, which allows applications to make requests to any server reachable by the server hosting the dashboard. A malicious user or attacker can exploit this endpoint to send requests to internal servers that should not be exposed publicly, potentially accessing sensitive internal resources and services.
Critical Impact
Attackers can leverage this SSRF vulnerability to probe internal network infrastructure, access internal services, and potentially exfiltrate sensitive data from systems that are not intended to be publicly accessible.
Affected Products
- VMware Spring Cloud Netflix versions 2.2.x prior to 2.2.4
- VMware Spring Cloud Netflix versions 2.1.x prior to 2.1.6
- VMware Spring Cloud Netflix older unsupported versions
Discovery Timeline
- 2020-08-07 - CVE-2020-5412 published to NVD
- 2024-11-21 - Last updated in NVD database
Technical Details for CVE-2020-5412
Vulnerability Analysis
This Server-Side Request Forgery (SSRF) vulnerability stems from inadequate validation in the Hystrix Dashboard's proxy.stream endpoint. The Hystrix Dashboard is a monitoring tool used in Spring Cloud Netflix applications to visualize circuit breaker metrics. The vulnerable endpoint was designed to proxy streaming data but lacks proper restrictions on the target URLs it can access.
When exploited, an attacker with low-level access to the application can manipulate the proxy.stream endpoint to make HTTP requests to arbitrary internal or external servers. This allows the attacker to effectively use the vulnerable server as a pivot point to access resources within the internal network that would otherwise be unreachable from the internet.
The vulnerability is classified under CWE-441 (Unintended Proxy or Intermediary) and CWE-610 (Externally Controlled Reference to a Resource in Another Sphere), both of which relate to improper control over resource access through proxy mechanisms.
Root Cause
The root cause of this vulnerability lies in the insufficient input validation and access control mechanisms implemented in the Hystrix Dashboard's proxy.stream endpoint. The endpoint accepts user-controlled input that specifies the target URL for proxying requests, but fails to properly validate or restrict the destinations to which it will forward requests. This design flaw allows the endpoint to act as an open proxy, forwarding requests to any network-accessible server.
Attack Vector
The attack vector is network-based, requiring an authenticated attacker with low privileges to exploit the vulnerability. The attacker crafts a malicious request to the proxy.stream endpoint, specifying an internal or sensitive target URL as the destination. The vulnerable server then forwards this request to the specified target, effectively bypassing network segmentation and firewall rules that would normally prevent direct access.
The exploitation process involves:
- The attacker identifies a Spring Cloud Netflix application with Hystrix Dashboard enabled
- The attacker sends a crafted request to the proxy.stream endpoint with an internal target URL
- The vulnerable server proxies the request to the internal target
- The response from the internal target is returned to the attacker, exposing potentially sensitive information
Since no verified code examples are available, readers should refer to the VMware Security Advisory CVE-2020-5412 for detailed technical information about the vulnerability mechanism.
Detection Methods for CVE-2020-5412
Indicators of Compromise
- Unusual outbound requests from the Hystrix Dashboard server to internal IP addresses or cloud metadata endpoints
- Access log entries showing requests to the proxy.stream endpoint with suspicious or internal URL parameters
- Network traffic from the dashboard server to internal services that should not be accessed externally
Detection Strategies
- Monitor application logs for requests to the proxy.stream endpoint, especially those targeting internal IP ranges (10.x.x.x, 172.16.x.x-172.31.x.x, 192.168.x.x)
- Implement network-level detection for unexpected connections originating from the Hystrix Dashboard server
- Configure web application firewall rules to alert on requests containing internal URLs in the proxy.stream parameters
Monitoring Recommendations
- Enable detailed access logging for the Hystrix Dashboard application
- Implement egress filtering and monitoring on servers running the Hystrix Dashboard
- Configure alerting for any requests from the dashboard server to cloud metadata services (e.g., 169.254.169.254)
How to Mitigate CVE-2020-5412
Immediate Actions Required
- Upgrade Spring Cloud Netflix to version 2.2.4 or later for the 2.2.x branch
- Upgrade Spring Cloud Netflix to version 2.1.6 or later for the 2.1.x branch
- If using older unsupported versions, plan an immediate migration to a supported version
- Restrict network access to the Hystrix Dashboard to trusted users and networks only
Patch Information
VMware has released security patches addressing this vulnerability. Users should upgrade to the following fixed versions:
- Spring Cloud Netflix 2.2.4 or later (for 2.2.x users)
- Spring Cloud Netflix 2.1.6 or later (for 2.1.x users)
For detailed patch information, refer to the VMware Security Advisory CVE-2020-5412.
Workarounds
- Disable the Hystrix Dashboard if it is not required for production operations
- Implement network segmentation to restrict the dashboard server's ability to reach sensitive internal resources
- Use a reverse proxy or web application firewall to filter and block suspicious requests to the proxy.stream endpoint
# Example: Restrict access to Hystrix Dashboard endpoint via nginx
location /hystrix.stream {
# Only allow access from trusted internal networks
allow 10.0.0.0/8;
allow 192.168.0.0/16;
deny all;
}
location /proxy.stream {
# Block direct access to the vulnerable proxy endpoint
deny all;
}
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

