CVE-2026-109198: Anti-Spam by CleanTalk <= 6.89.1 - Unauthenticated Stored Cross-Site Scripting via 'user_email' Registration Parameter
The Anti-Spam by CleanTalk – Spam Protection Without CAPTCHA plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'useremail' parameter in all versions up to, and including, 6.89.1 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. Successful exploitation requires user registration to be open on the site, and script execution is triggered when an Administrator subsequently runs the plugin's user-spam scan and views the resulting Non-checkable users or Spam users tab — the plugin's own documented workflow.
Affected Software
Event History
Frequently Asked Questions
Which sites are exposed to exploitation?
Sites using Anti-Spam by CleanTalk versions through 6.89.1 are exposed if WordPress user registration is open. An unauthenticated attacker can submit a malicious value through the registration user_email parameter.
When does the injected script execute?
The script executes when an Administrator runs the plugin's user-spam scan and views the resulting Non-checkable users or Spam users tab. This occurs during the plugin's documented user-spam review workflow.
What can be done if updating is not immediately possible?
Disable or close public user registration to prevent unauthenticated attackers from submitting the malicious registration parameter. Administrators should also avoid viewing the affected scan-result tabs until the issue is remediated.