What the vulnerability does
01Description
The Login No Captcha reCAPTCHA plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the `$_SERVER['PHP_SELF']` superglobal in all versions up to, and including, 1.8.0. This is due to the `authenticate()` function storing the unsanitized output of `basename($_SERVER['PHP_SELF'])` in the `login_nocaptcha_error` WordPress option when a login attempt is made from a non-standard login page (e.g., xmlrpc.php). The `admin_notices()` function then echoes this stored value directly into the admin dashboard HTML without escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts that execute when an administrator with a whitelisted IP address visits the WordPress dashboard within 30 seconds of the attack.
Explanation of Vulnerability in Simple Terms
02Summary
Login No Captcha reCAPTCHA versions 1.8.0 and earlier contain a cross-site scripting (XSS) vulnerability that allows attackers to inject malicious scripts into the site without authentication. The vulnerability affects the scope beyond the vulnerable component itself. Site administrators should update to a version newer than 1.8.0 to remediate the issue.
What an attacker can do
03Attacker Capabilities
Inject malicious JavaScript that executes in visitors' browsers and affects other parts of the site.
Potential impact on your site
04Site Impact
Visitors' browsers can be compromised to steal credentials, redirect traffic, or deface content across your site.
Conditions required to exploit
05Prerequisites
Network access only; no authentication or user interaction required.
Key dates
06Disclosure timeline
May 28, 2026
CVE published
May 28, 2026
Record updated