Severity by source
AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Primary rating from NVD · only source for this CVE.
CVSS VectorNVD
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Lifecycle Timeline
1DescriptionCVE.org
The Correct Prices plugin for WordPress is vulnerable to Reflected Cross-Site Scripting via the $_SERVER['PHP_SELF'] variable in versions up to and including 1.0. This is due to the correct_prices_page() function echoing $_SERVER['PHP_SELF'] into a form's action attribute without any input sanitization or output escaping (such as esc_url() or esc_attr()). Because PHP_SELF reflects attacker-controlled path-info appended to the script URL, an attacker can break out of the attribute and inject arbitrary markup. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that execute if they can successfully trick a user into performing an action such as clicking on a specially crafted link.
AnalysisAI
Reflected Cross-Site Scripting in the Correct Prices WordPress plugin (versions up to and including 1.0) exposes any site running this plugin to script injection via crafted URLs. The correct_prices_page() function writes the raw value of $_SERVER['PHP_SELF'] into a form's action attribute without calling esc_url() or esc_attr(), allowing an attacker to break out of the HTML attribute context and inject arbitrary markup. CVSS vector PR:N confirms no authentication is required from the attacker, though exploitation is limited by a required user interaction (UI:R) - a victim must be tricked into following a specially crafted link. No active exploitation has been confirmed (not in CISA KEV) and no public exploit code was identified at time of analysis.
Technical ContextAI
The vulnerability is rooted in CWE-79 (Improper Neutralization of Input During Web Page Generation - Reflected XSS). In PHP, $_SERVER['PHP_SELF'] returns the filename of the currently executing script including any path-info appended to the URL. Because the affected correct_prices_page() function (visible in the trac browser at trunk/correct_prices.php line 134) injects this value directly into an HTML form action attribute without escaping, an attacker can append a path segment such as /wp-admin/admin.php/correct-prices%22><script>payload</script> to break out of the attribute and execute arbitrary JavaScript in the victim's browser session. The WordPress plugin is authored by lykich and tracked under CPE cpe:2.3:a:lykich:correct_prices:*:*:*:*:*:*:*:*. The correct fix pattern in WordPress is to wrap PHP_SELF output with esc_url() for URL contexts or esc_attr() for attribute values, as mandated by WordPress coding standards.
RemediationAI
No vendor-released patch identified at time of analysis - the references point to the Wordfence advisory and the vulnerable source code in the WordPress trac browser, but no patched plugin version is confirmed. Site administrators should immediately deactivate and remove the Correct Prices plugin until a patched release is available. If the plugin is business-critical and cannot be removed, a compensating control is to implement a Web Application Firewall rule (such as Wordfence's built-in firewall or a network-level WAF) to block requests containing angle brackets or JavaScript event handlers in the URL path-info segment; note this is a partial mitigation and can be bypassed. Additionally, disabling PHP's ability to expose path-info (via cgi.fix_pathinfo=0 in php.ini on applicable server configurations) may reduce the attack surface but is environment-dependent. Plugin developers should apply esc_url() around $_SERVER['PHP_SELF'] when output into a URL attribute context per WordPress coding standards. Monitor the Wordfence advisory URL for patch availability.
The isMail transport in PHPMailer before 5.2.20 might allow remote attackers to pass extra parameters to the mail comman
The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
The Hash Form - Drag & Drop Form Builder plugin for WordPress is vulnerable to arbitrary file uploads due to missing fil
The GiveWP - Donation Plugin and Fundraising Platform plugin for WordPress is vulnerable to PHP Object Injection in all
The Simple File List plugin for WordPress through version 4.2.2 contains an unauthenticated remote code execution vulner
The AI Engine WordPress plugin through version 3.1.3 exposes Bearer Token values through the /mcp/v1/ REST API endpoint
The Ninja Forms plugin before 2.9.42.1 for WordPress allows remote attackers to conduct PHP object injection attacks via
The Business Directory Plugin - Easy Listing Directories for WordPress plugin for WordPress is vulnerable to time-based
SQL injection in the NotificationX WordPress plugin (versions up to and including 2.8.2) allows unauthenticated remote a
The POST SMTP Mailer - Email log, Delivery Failure Notifications and Best Mail SMTP for WordPress plugin for WordPress i
The MasterStudy LMS WordPress Plugin - for Online Courses and Education plugin for WordPress is vulnerable to union base
The Country State City Dropdown CF7 plugin for WordPress is vulnerable to SQL Injection via the ‘cnt’ and 'sid' paramete
Same weakness CWE-79 – Cross-site Scripting (XSS)
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-31023
GHSA-m24w-6mjv-3gj2