CVE-2026-6405: Anomify AI (WordPress plugin) · Cross-Site Request Forgery (CSRF)
Affects Anomify AI (WordPress plugin)Source CVE Database V5
Not known to be exploited · CVSS 4.3 Medium.
Data as of 30 Oct 2026, 11:52 UTC
- EPSS
- 0.1% chance of exploitation in 30 days – higher than 6% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:NExploitation evidence
Disclosed: evidence found.
CVE published 20 May 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponized: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 30 Oct 2026.
What to do
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| simonhollidayAnomify AI – Anomaly Detection and Alerting | Affected
| Fixed in– |
AI-suggested
Until a fix is available, administrators should avoid visiting untrusted sites while logged into WordPress and consider disabling or removing the affected plugin version. Monitoring vendor channels for an official fix is recommended.
Description
The Anomify AI – Anomaly Detection and Alerting plugin for WordPress is vulnerable to Cross-Site Request Forgery (CSRF) leading to Stored Cross-Site Scripting (XSS) in versions up to and including 0.3.6. This is due to missing nonce verification on the settings page handler and insufficient output escaping in the admin_options.php template. The settings form includes no wp_nonce_field() and the handler performs no check_admin_referer() check, meaning any cross-origin POST can modify plugin settings. The API key field is sanitized only with sanitize_text_field(), which strips HTML tags but does not encode double-quote characters; the value is then rendered into an HTML attribute via bare echo without esc_attr(), allowing a double-quote attribute-escape payload to survive both sanitization and storage. This makes it possible for unauthenticated attackers to inject arbitrary web scripts by tricking a logged-in administrator into visiting a malicious page that submits a forged request, storing the payload in the database and causing it to execute in the administrator's browser whenever the plugin settings page is visited.
References
- wordfence.com/threat-intel/vulnerabilities/id/a1e02c2d-a38a-495c-9c37-098049297be2?source=cve (opens in a new tab)
- plugins.trac.wordpress.org/browser/anomify/trunk/Anomify/Wp/includes/admin_options.php (opens in a new tab)
- plugins.trac.wordpress.org/browser/anomify/tags/0.3.6/Anomify/Wp/includes/admin_options.php (opens in a new tab)
- plugins.trac.wordpress.org/browser/anomify/trunk/Anomify/Wp/Admin.php (opens in a new tab)
- plugins.trac.wordpress.org/browser/anomify/tags/0.3.6/Anomify/Wp/Admin.php (opens in a new tab)
- plugins.trac.wordpress.org/browser/anomify/trunk/Anomify/Config.php (opens in a new tab)
- plugins.trac.wordpress.org/browser/anomify/tags/0.3.6/Anomify/Config.php (opens in a new tab)