CVE-2025-39599
Executive Summary
CVE-2025-39599 is an Open Redirect vulnerability (CWE-601) discovered in the Listdom WordPress plugin by Webilia Inc., affecting versions up to and including 4.0.0. This flaw allows an unauthenticated attacker to craft a URL that, when clicked by a logged-in administrator or site visitor, redirects them to an arbitrary external domain. The primary risk is phishing – an attacker can use a legitimate Listdom URL to trick users into visiting a malicious site, potentially stealing credentials or delivering malware.
Because this is a WordPress plugin vulnerability, the attack surface is limited to sites running the vulnerable plugin. No public exploit code or proof-of-concept (PoC) is currently available, but the vulnerability is trivial to exploit manually. The EPSS score is 0.0%, indicating low exploitation likelihood at this time, but the risk increases as the vulnerability becomes more widely known.
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 specific to the WordPress plugin ecosystem. The plugin is distributed via the official WordPress Plugin Directory and third-party marketplaces. Users should verify they are running a patched version (once released) and monitor the plugin’s changelog. No NPM, PyPI, Go, or Ruby packages are 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: 4.7 (Medium)
- Attack Vector: Network (AV:N) – the vulnerability is exploitable remotely.
- Attack Complexity: Low (AC:L) – no special conditions required.
- Privileges Required: None (PR:N) – no authentication needed.
- 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 credential theft via phishing.
- Integrity Impact: Low (I:L) – the redirect can modify user trust.
- Availability Impact: None (A:N) – no denial of service.
Threat Level: Medium. The vulnerability is easy to exploit but requires user interaction. The primary threat is phishing and social engineering.
Deep Dive & Mechanics
The Listdom plugin provides directory listing functionality for WordPress. The open redirect occurs because the plugin does not properly validate or sanitize the redirect_to parameter (or similar) in certain URL endpoints. When a user clicks a crafted link like:
https://victim-site.com/listdom-redirect?url=https://evil.com
The plugin’s code takes the url parameter and performs a wp_redirect() or header('Location: ...') call without checking if the destination is an internal or trusted domain. This allows an attacker to redirect users to any external site.
Root Cause: The plugin uses user-supplied input directly in a redirect function without validating the domain against a whitelist or using wp_safe_redirect() (which restricts redirects to internal URLs).
Vulnerable vs. Patched Code
Vulnerable Code (<= 4.0.0):
// In a handler function
$redirect_url = $_GET['url'];
wp_redirect( $redirect_url );
exit;
Patched Code (hypothetical fix):
// Use wp_safe_redirect() to restrict to internal URLs
$redirect_url = $_GET['url'];
if ( wp_validate_redirect( $redirect_url, home_url() ) ) {
wp_safe_redirect( $redirect_url );
exit;
} else {
// Redirect to a safe default
wp_safe_redirect( home_url() );
exit;
}
The patched version uses wp_safe_redirect() which only allows redirects to the same site or a whitelisted domain. Alternatively, the plugin could implement a strict domain whitelist.
Exploitation & Lab Setup
Red Team (Exploitation)
Prerequisites:
- A WordPress site with Listdom plugin version <= 4.0.0.
- A publicly accessible web server to host the phishing page.
Exploitation Steps:
- Identify the vulnerable endpoint (e.g.,
/listdom-redirector similar). Use a web proxy or source code review. - Craft a malicious URL:
https://victim-site.com/listdom-redirect?url=https://attacker.com/phishing-page - Send the link to a victim via email, social media, or other channels.
- When the victim clicks, they are redirected to the attacker’s phishing page, which may mimic the WordPress login or other sensitive forms.
No public exploit code is available. Manual exploitation is straightforward.
Blue Team (Detection & Defense)
Detection:
- Monitor web server logs for requests to
/listdom-redirector similar endpoints with suspiciousurlparameters pointing to external domains. - Use the Sigma rule below to detect anomalous redirect patterns.
Defense:
- Immediately update the plugin if a patched version is released.
- If no patch is available, disable the plugin or implement a web application firewall (WAF) rule to block requests with external redirect parameters.
- Use
wp_safe_redirect()in custom code as a best practice.
Indicators of Compromise (IOCs)
- URL Pattern:
*/listdom-redirect?url=*(or similar endpoint) - External Domains: Any domain not belonging to the victim organization appearing in the
urlparameter. - Referrer Headers: Requests to the vulnerable endpoint with no referrer or a referrer from a suspicious source.
- Log Entries: HTTP 302 responses from the vulnerable endpoint with a
Locationheader pointing to an external domain.
Detection Engineering
YARA Rule
rule CVE_2025_39599_Open_Redirect {
meta:
description = "Detects open redirect attempts targeting Listdom plugin"
author = "Valters IT"
date = "2025-04-10"
reference = "CVE-2025-39599"
strings:
$redirect_param = "url=" nocase
$listdom_endpoint = "listdom-redirect" nocase
condition:
$listdom_endpoint and $redirect_param
}
Sigma Rule
title: CVE-2025-39599 - Listdom Open Redirect Attempt
id: 8a3f7c2e-5d1b-4a9f-8c6d-2e3f1a0b9c8d
status: experimental
description: Detects HTTP requests to Listdom plugin endpoints with external redirect parameters
author: Valters IT
date: 2025-04-10
references:
- https://nvd.nist.gov/vuln/detail/CVE-2025-39599
logsource:
category: webserver
product: apache
service: access_combined
detection:
selection:
cs-uri-query|contains:
- "listdom-redirect"
- "url=http"
- "url=https"
condition: selection
falsepositives:
- Legitimate redirects to internal domains (if any)
level: medium
tags:
- attack.t1566
- cve.2025.39599
Suricata Rule
alert http any any -> any any (msg:"CVE-2025-39599 - Listdom Open Redirect Attempt"; flow:to_server; content:"listdom-redirect"; http_uri; content:"url="; http_uri; pcre:"/url=https?:\/\//Ui"; classtype:attempted-recon; sid:1000001; rev:1;)
Remediation & Mitigation
Immediate Actions:
- Disable the Listdom plugin until a patched version is released.
- Implement a WAF rule to block requests containing
listdom-redirectwith externalurlparameters. - Educate users about phishing risks and to verify URLs before clicking.
Long-Term Fix:
- The vendor (Webilia Inc.) must release a patched version that uses
wp_safe_redirect()or a domain whitelist. - Users should update to the latest version once available.
Workaround:
- Add the following code to the theme’s
functions.phpto override the vulnerable function (if the plugin uses a filterable hook):
add_filter( 'listdom_redirect_url', function( $url ) {
return wp_validate_redirect( $url, home_url() );
});
Valters IT
Securing digital ecosystems, one CVE at a time.
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.