CVE-2025-12094
WordPress vulnerability analysis and mitigation

Overview

CVE-2025-12094 is an IP Header Spoofing vulnerability in the OOPSpam Anti-Spam: Spam Protection for WordPress Forms & Comments (No CAPTCHA) plugin for WordPress. It affects all versions up to and including 1.2.53, allowing unauthenticated attackers to bypass IP-based security controls by manipulating client-controlled HTTP headers. The vulnerability was disclosed on October 31, 2025, with Wordfence as the reporting CNA. It carries a CVSS v3.1 base score of 5.3 (Medium) (Wordfence, Red Hat CVE).

Technical details

The root cause is classified as CWE-693 (Protection Mechanism Failure): the plugin unconditionally trusts client-supplied HTTP headers — including CF-Connecting-IP, X-Forwarded-For, and similar forwarded headers — to determine the originating IP address of a request, without validating that these headers originate from a legitimate, trusted proxy. An attacker can craft arbitrary HTTP requests with spoofed values in these headers to present a different IP address to the plugin's security logic. The vulnerable code path is visible in include/helpers.php at line 268 of version 1.2.49, and the fix was applied in the changeset for the trunk branch (WordPress Trac (vuln), WordPress Trac (fix)).

Impact

Successful exploitation allows unauthenticated attackers to bypass IP-based spam and abuse protections enforced by the plugin, including blocked IP lists and rate limiting controls. This undermines the plugin's core anti-spam functionality, potentially enabling spam submissions, comment flooding, or form abuse at scale on affected WordPress sites. There is no direct confidentiality or availability impact; the primary consequence is an integrity impact through circumvention of protective controls (Wordfence).

Exploitability

No public exploit code or active in-the-wild exploitation has been reported for CVE-2025-12094. The vulnerability requires no authentication, no user interaction, and no special privileges, making it trivially exploitable by any network attacker who can send HTTP requests to a vulnerable WordPress site. The EPSS score is approximately 0.059%, indicating a low probability of exploitation in the near term. It is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog (Wordfence, Feedly).

Exploitation steps

  1. Reconnaissance: Identify WordPress sites running the OOPSpam Anti-Spam plugin version ≤ 1.2.53 by inspecting plugin directories, HTTP response headers, or using tools like WPScan.
  2. Craft spoofed request: Prepare an HTTP request targeting a protected form or comment endpoint on the WordPress site, adding a forged header such as X-Forwarded-For: <trusted_or_unblocked_IP> or CF-Connecting-IP: <trusted_or_unblocked_IP>.
  3. Bypass IP blocklist: Submit the crafted request; the plugin reads the attacker-controlled header value as the client's real IP, causing it to evaluate the spoofed IP instead of the actual source IP against its blocklist and rate limiter.
  4. Abuse protected functionality: With IP-based controls bypassed, the attacker can submit spam content, flood forms, or perform repeated actions that would otherwise be rate-limited or blocked (WordPress Trac (vuln), Wordfence).

Indicators of compromise

  • Network: Repeated HTTP POST requests to WordPress form or comment endpoints from a single source IP, accompanied by varying X-Forwarded-For, CF-Connecting-IP, or similar headers cycling through different IP values.
  • Logs: WordPress or web server access logs showing high-volume form/comment submissions with inconsistent or rotating forwarded IP header values; requests from IPs that should be blocked still successfully submitting content.
  • Application Behavior: Unusual volume of spam comments or form submissions appearing despite IP-based blocking rules being configured in the OOPSpam plugin; rate limiting appearing ineffective against a persistent source.

Mitigation and workarounds

Users should update the OOPSpam Anti-Spam plugin to version 1.2.54 or later, which includes the fix applied in the trunk changeset that corrects the IP header trust logic. The patch is available via the WordPress plugin repository. As a temporary workaround, site administrators can implement IP validation at the web server or CDN/proxy layer (e.g., only accepting CF-Connecting-IP from Cloudflare's known IP ranges) to prevent header spoofing before requests reach the plugin (WordPress Trac (fix), Wordfence).

Community reactions

Wordfence included CVE-2025-12094 in its weekly WordPress vulnerability report for the period of October 27 – November 2, 2025, noting the IP header spoofing issue as part of a broader roundup of plugin vulnerabilities. No significant independent researcher commentary or major media coverage has been identified for this vulnerability (Wordfence Blog).

Additional resources


SourceThis report was generated using AI

Related WordPress vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-19089NONEN/A
  • product-input-fields-for-woocommerce
NoYesAug 10, 2026
CVE-2026-19077NONEN/A
  • copy-delete-posts
NoYesAug 10, 2026
CVE-2026-19075NONEN/A
  • all-in-one-video-gallery
NoYesAug 10, 2026
CVE-2026-19074NONEN/A
  • advanced-classifieds-and-directory-pro
NoYesAug 10, 2026
CVE-2026-19053NONEN/A
  • prosolution-wp-client
NoYesAug 10, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management