CVE-2025-30164
Executive Summary
CVE-2025-30164 is a URL Redirection to Untrusted Site ('Open Redirect') vulnerability in Icinga Web 2, an open-source monitoring web interface. The flaw allows an authenticated attacker to craft a malicious URL that, when visited by another authenticated user, redirects them to an arbitrary external site. This can be leveraged for phishing attacks, credential harvesting, or bypassing URL-based access controls. The vulnerability is present in all versions prior to 2.11.5 and 2.12.3. The CVSS score is 4.1 (Medium), and no public proof-of-concept or exploit code is currently available. The patch is available via official Icinga Web 2 updates.
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.
No signup required
Supply Chain & Package Security
This vulnerability affects the Icinga Web 2 PHP application. While not a direct package dependency issue (NPM, PyPI, Go, Ruby), the risk is amplified if the application is deployed via container images or package managers (e.g., Composer, Docker). Organizations should verify that their deployment artifacts (Docker images, RPM/DEB packages) are rebuilt or updated to include the patched version.
CVSS Breakdown & Threat Level
- CVSS Score: 4.1 (Medium)
- Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
- Attack Vector (AV): Network - The vulnerability is exploitable remotely.
- Attack Complexity (AC): Low - No special conditions are required.
- Privileges Required (PR): Low - The attacker must be authenticated to Icinga Web 2.
- User Interaction (UI): Required - The victim must click the crafted link.
- Scope (S): Changed - The redirect can lead to a different security domain.
- Confidentiality (C): Low - Potential for information disclosure via phishing.
- Integrity (I): Low - The redirect can be used to manipulate the user's view.
- Availability (A): None - No impact on system availability.
Threat Level: Medium. The requirement for authentication and user interaction reduces the immediate risk, but the potential for targeted phishing campaigns against monitoring teams is significant.
Deep Dive & Mechanics
The vulnerability resides in the URL handling logic of Icinga Web 2. The application fails to properly validate or sanitize user-supplied input used in redirect operations. Specifically, when an authenticated user clicks a crafted link, the application's backend processes the redirect parameter (or similar) without verifying that the target URL is within the application's own domain.
Attack Flow:
- An attacker authenticates to Icinga Web 2 (e.g., with low-privilege credentials).
- The attacker crafts a URL like:
https://icinga.example.com/icingaweb2/authentication/login?redirect=https://malicious.com - The attacker sends this link to another authenticated user (e.g., via email or chat).
- The victim, already logged in, clicks the link.
- Icinga Web 2 processes the request and, due to the lack of validation, redirects the victim's browser to
https://malicious.com. - The attacker can then serve a fake login page or other malicious content.
The root cause is the absence of a whitelist-based URL validation for redirect parameters. The application should only allow redirects to relative paths or to a predefined list of trusted domains.
Vulnerable vs. Patched Code
Vulnerable Code (Conceptual):
// In a controller or helper function
$redirectUrl = $_GET['redirect'];
if (!empty($redirectUrl)) {
header('Location: ' . $redirectUrl);
exit;
}
Patched Code (Conceptual):
// In a controller or helper function
$redirectUrl = $_GET['redirect'];
if (!empty($redirectUrl)) {
// Validate that the URL is relative or within the allowed domain
$parsedUrl = parse_url($redirectUrl);
if (empty($parsedUrl['host']) || $parsedUrl['host'] === $_SERVER['HTTP_HOST']) {
header('Location: ' . $redirectUrl);
exit;
} else {
// Log the attempt and redirect to a safe default
error_log('Blocked open redirect attempt to: ' . $redirectUrl);
header('Location: /');
exit;
}
}
The patch introduces a check that ensures the redirect URL either has no host (relative path) or points to the same host as the application. This prevents redirection to arbitrary external domains.
Exploitation & Lab Setup
Red Team (Exploitation)
Prerequisites:
- Access to an Icinga Web 2 instance (version < 2.11.5 or < 2.12.3).
- Valid credentials for a low-privileged user.
- A target victim who is also authenticated.
Steps:
- Log in to Icinga Web 2.
- Identify a page that accepts a
redirectparameter (e.g., login page, logout page, or any form submission). - Craft the malicious URL:
https://<icinga-server>/icingaweb2/authentication/login?redirect=https://attacker-controlled.com - Send this URL to the victim via a phishing email or social engineering.
- When the victim clicks the link, they will be redirected to
https://attacker-controlled.com, where you can host a fake login page or other malicious content.
Note: No public exploit code is available. The above is a conceptual exploitation scenario.
Blue Team (Defense & Detection)
Detection:
- Monitor web server logs for unusual
redirectparameter values containing external domains. - Look for patterns like
redirect=http://orredirect=https://in HTTP requests. - Alert on multiple failed login attempts followed by a redirect to an external domain.
Prevention:
- Apply the patch immediately by upgrading to Icinga Web 2 2.11.5 or 2.12.3.
- Implement a Web Application Firewall (WAF) rule to block requests with
redirectparameters pointing to external domains. - Enforce strict URL validation on the server side.
Indicators of Compromise (IOCs)
- Network IOCs:
- HTTP requests containing
redirect=https?://[^/]in the query string. - Outbound connections from the Icinga server to unknown external domains shortly after a user clicks a link.
- HTTP requests containing
- Log IOCs:
- Web server logs showing
302responses withLocationheaders pointing to external domains. - Application logs containing
redirectparameter values with external URLs.
- Web server logs showing
- File IOCs:
- No specific file-based IOCs; the vulnerability is logic-based.
Detection Engineering
YARA Rule
rule CVE_2025_30164_Open_Redirect {
meta:
description = "Detects potential open redirect attempts in Icinga Web 2 logs"
author = "Valters IT"
date = "2025-04-10"
reference = "CVE-2025-30164"
strings:
$redirect_param = /redirect=https?:\/\// nocase
$icinga_path = /\/icingaweb2\// nocase
condition:
$redirect_param and $icinga_path
}
Sigma Rule
title: Icinga Web 2 Open Redirect Attempt
id: 8a9b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d
status: experimental
description: Detects HTTP requests with a redirect parameter pointing to an external domain in Icinga Web 2.
author: Valters IT
date: 2025-04-10
references:
- https://nvd.nist.gov/vuln/detail/CVE-2025-30164
logsource:
category: webserver
product: apache
service: access_combined
detection:
selection:
cs-uri-query|contains: "redirect=http"
condition: selection
falsepositives:
- Legitimate redirects to external services (if configured)
level: medium
Suricata Rule
alert http $HOME_NET any -> $EXTERNAL_NET any (
msg:"CVE-2025-30164 - Icinga Web 2 Open Redirect Attempt";
flow:to_server,established;
content:"/icingaweb2/"; http_uri;
content:"redirect="; http_uri;
pcre:"/redirect=https?:\/\//Ui";
classtype:attempted-recon;
sid:10000001;
rev:1;
reference:cve,2025-30164;
)
Remediation & Mitigation
Immediate Actions:
- Upgrade Icinga Web 2 to version 2.11.5 or 2.12.3 (or later).
- If immediate upgrade is not possible, implement a WAF rule to block requests with
redirectparameters containing external URLs. - Review and restrict user permissions to minimize the number of authenticated users who can craft such URLs.
Long-Term Measures:
- Conduct a code review to ensure all redirect logic uses a whitelist of allowed URLs.
- Implement Content Security Policy (CSP) headers to restrict the origins to which the application can redirect.
- Enable logging and monitoring for all redirect-related activities.
Valters IT Signature This report was generated by Valters IT DevSecOps AI. For questions, contact security@valters-it.com.