☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
Wpdesk 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-30805

CVE-2025-30805 Cross-Site Request Forgery in Wpdesk
📅 PUBLISHED: 2025-03-27 11:15 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.24%
👁️
0.24% probability
6.1× above the median CVE
Tier: ELEVATED
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-30805 is a Cross-Site Request Forgery (CSRF) vulnerability affecting the Flexible Cookies WordPress plugin, developed by Wpdesk. This plugin is designed to manage cookie consent banners on WordPress sites. The vulnerability exists in all versions up to and including 1.1.8.

A CSRF vulnerability allows an attacker to trick an authenticated administrator into unknowingly executing unwanted actions on the WordPress site. In this context, an attacker could craft a malicious link or webpage that, when visited by an admin, performs state-changing operations within the plugin's settings, such as modifying cookie consent configurations, disabling cookie banners, or altering compliance settings. This could lead to a breach of user consent, legal non-compliance (e.g., GDPR, CCPA), and potential data privacy violations.

The vulnerability is classified as Medium Severity with a CVSS v3.1 base score of 4.3. The attack vector is network-based, requires low complexity, and necessitates user interaction (the admin must click a link or visit a malicious page). The impact is limited to integrity (low) with no impact on confidentiality or availability.

⚡ 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

WordPress Ecosystem Context

This vulnerability is specific to the WordPress plugin ecosystem. The flexible-cookies plugin is a standard WordPress plugin that likely uses WordPress's built-in nonce (number used once) mechanism for CSRF protection. The vulnerability indicates that one or more administrative actions within the plugin are not properly protected by nonces, allowing CSRF attacks. This is a common oversight in plugin development where developers forget to add nonce verification to all admin actions.

CVSS Breakdown & Threat Level

  • CVSS Vector String: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N
  • Base Score: 4.3 (Medium)
  • Attack Vector (AV): Network (N) - The attack can be launched remotely.
  • Attack Complexity (AC): Low (L) - No special conditions are required for the attack.
  • Privileges Required (PR): None (N) - The attacker does not need to be authenticated.
  • User Interaction (UI): Required (R) - The victim (admin) must perform an action (click a link).
  • Scope (S): Unchanged (U) - The vulnerable component and the impacted component are the same.
  • Confidentiality (C): None (N) - No data is exposed.
  • Integrity (I): Low (L) - The attacker can modify plugin settings.
  • Availability (A): None (N) - The site remains operational.

Threat Level: Medium. While the direct impact is limited to integrity, the downstream effects of altering cookie consent settings can be severe, including legal penalties for GDPR non-compliance and erosion of user trust.

Deep Dive & Mechanics

The vulnerability lies in the administrative interface of the Flexible Cookies plugin. WordPress provides a robust CSRF protection mechanism using nonces (a one-time token). For any admin action (saving settings, deleting data, etc.), the plugin should:

  1. Generate a nonce and include it in the form or URL.
  2. Verify the nonce upon submission before executing the action.

In CVE-2025-30805, one or more admin actions within the plugin fail to perform this nonce verification. This means that a request to change plugin settings does not require a valid nonce; it only requires the admin's session cookie.

Attack Flow:

  1. An attacker identifies a target WordPress site running a vulnerable version of Flexible Cookies.
  2. The attacker crafts a malicious HTML page or email containing a hidden form or an image tag that triggers a request to the vulnerable admin action (e.g., wp-admin/admin-post.php?action=flexible_cookies_save_settings&option=disable_banner).
  3. The attacker lures an authenticated WordPress administrator to visit this malicious page (e.g., via a phishing email or a link on a forum).
  4. The victim's browser, having an active admin session, sends the forged request to the WordPress site.
  5. The plugin processes the request without checking for a valid nonce, and the attacker's desired change is applied.

Vulnerable vs. Patched Code

Since no official patch is available, the following is a hypothetical comparison based on standard WordPress CSRF protection practices.

Vulnerable Code (Example - admin/class-flexible-cookies-admin.php):

// Vulnerable: No nonce verification
public function save_settings() {
    if ( isset( $_POST['option_name'] ) ) {
        update_option( 'flexible_cookies_' . $_POST['option_name'], $_POST['option_value'] );
    }
    wp_redirect( admin_url( 'admin.php?page=flexible-cookies' ) );
    exit;
}

Patched Code (Hypothetical):

// Patched: Nonce verification added
public function save_settings() {
    // Verify nonce
    if ( ! isset( $_POST['_wpnonce'] ) || ! wp_verify_nonce( $_POST['_wpnonce'], 'flexible_cookies_save_settings' ) ) {
        wp_die( 'Security check failed.' );
    }

    if ( isset( $_POST['option_name'] ) ) {
        update_option( 'flexible_cookies_' . $_POST['option_name'], $_POST['option_value'] );
    }
    wp_redirect( admin_url( 'admin.php?page=flexible-cookies' ) );
    exit;
}

The patched version adds a call to wp_verify_nonce() which checks the submitted nonce against the expected action. If the nonce is missing or invalid, the request is terminated.

Exploitation & Lab Setup

Red Team (Exploitation)

Prerequisites:

  • A target WordPress site with the Flexible Cookies plugin (version <= 1.1.8) installed and activated.
  • An authenticated administrator session on the target site.

Exploit Scenario: The attacker wants to disable the cookie consent banner to make the site non-compliant with privacy laws.

  1. Craft the Malicious Payload: Create an HTML file (csrf_exploit.html) that automatically submits a form to the vulnerable endpoint.

    <html>
    <body>
    <h1>Click this link to win a prize!</h1>
    <form id="csrf_form" action="http://target-site.com/wp-admin/admin-post.php" method="POST">
        <input type="hidden" name="action" value="flexible_cookies_save_settings" />
        <input type="hidden" name="option_name" value="banner_enabled" />
        <input type="hidden" name="option_value" value="0" />
        <input type="submit" value="Claim Prize" />
    </form>
    <script>
        // Auto-submit the form
        document.getElementById('csrf_form').submit();
    </script>
    </body>
    </html>
    
  2. Deliver the Payload: Host this HTML file on an attacker-controlled server or send it as an email attachment. Trick the admin into visiting the page.

  3. Execution: When the admin visits the page, the form auto-submits, sending the forged request with the admin's cookies. The plugin processes the request, disabling the cookie banner.

Blue Team (Detection & Prevention)

Detection:

  • Web Server Logs: Look for requests to wp-admin/admin-post.php with action=flexible_cookies_* parameters that originate from unexpected referrers (e.g., not from the site's own admin pages).
  • User Behavior Analytics: Monitor for rapid, bulk changes to plugin settings, especially if they occur outside of normal administrative hours.
  • Plugin Integrity: Regularly audit plugin settings for unauthorized changes.

Prevention:

  • Immediate: Disable or remove the Flexible Cookies plugin until a patched version is released.
  • Long-term: Implement a Web Application Firewall (WAF) with CSRF protection rules. Enforce the use of WordPress nonces in all custom plugin development.
  • User Training: Educate administrators about phishing attacks and the risks of clicking on untrusted links while logged into the admin panel.

Indicators of Compromise (IOCs)

  • Network:
    • HTTP POST requests to /wp-admin/admin-post.php with parameters containing action=flexible_cookies_* and an unexpected Referer header.
    • Anomalous traffic patterns to the WordPress admin area from IP addresses not associated with known administrators.
  • Host:
    • Modified entries in the wp_options table with the flexible_cookies_ prefix (e.g., flexible_cookies_banner_enabled set to 0).
    • Unexpected changes to the plugin's configuration file (if any) located in /wp-content/plugins/flexible-cookies/.
  • Logs:
    • WordPress debug log entries showing nonce verification failures (if logging is enabled).
    • Web server access logs showing repeated requests to admin-post.php with the flexible_cookies action from a single IP.

Detection Engineering

YARA Rule

rule detect_flexible_cookies_csrf_exploit {
    meta:
        description = "Detects CSRF exploit attempts against Flexible Cookies plugin"
        author = "Valters IT"
        date = "2025-04-10"
        cve = "CVE-2025-30805"
    strings:
        $action = "action=flexible_cookies_" nocase
        $admin_post = "admin-post.php" nocase
        $option_name = "option_name=" nocase
        $option_value = "option_value=" nocase
    condition:
        all of them
}

Sigma Rule

title: CSRF Exploit Against Flexible Cookies Plugin
id: 8a4b3c2d-1e5f-6a7b-8c9d-0e1f2a3b4c5d
status: experimental
description: Detects HTTP requests targeting the Flexible Cookies plugin without a valid referer, indicating a potential CSRF attack.
author: Valters IT
date: 2025-04-10
logsource:
    category: webserver
    product: apache
    service: access
detection:
    selection:
        cs-method: 'POST'
        c-uri|contains: '/wp-admin/admin-post.php'
        cs-uri-query|contains: 'action=flexible_cookies_'
    filter:
        cs-referer|contains: '/wp-admin/'
    condition: selection and not filter
falsepositives:
    - Legitimate admin actions from the admin panel (should have a valid referer)
level: high

Suricata Rule

alert http $EXTERNAL_NET any -> $HOME_NET any (msg:"CVE-2025-30805 - CSRF Exploit Against Flexible Cookies Plugin"; flow:to_server,established; content:"POST"; http_method; content:"/wp-admin/admin-post.php"; http_uri; content:"action=flexible_cookies_"; http_client_body; pcre:"/action=flexible_cookies_[a-z_]+/i"; reference:cve,2025-30805; classtype:attempted-admin; sid:10000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Disable the Plugin: Deactivate and delete the Flexible Cookies plugin from all WordPress installations until a patched version is released by Wpdesk.
  2. Audit Plugin Settings: Check the wp_options table for any unauthorized changes made to flexible_cookies_* options. Restore them to a known good state.
  3. Review Admin Logs: Examine WordPress and web server logs for any suspicious activity related to the plugin.

Long-Term Mitigations:

  1. Apply Patch: Monitor the Wpdesk website or the WordPress plugin repository for an updated version of Flexible Cookies that addresses this CSRF vulnerability.
  2. Implement WAF Rules: Deploy a Web Application Firewall (e.g., Cloudflare, Sucuri) with rules to block requests to admin-post.php that lack a valid referer.
  3. Security Hardening: Ensure all WordPress plugins and themes are kept up-to-date. Use a security plugin (e.g., Wordfence) that provides additional CSRF protection and monitoring.
  4. User Awareness: Conduct security awareness training for all administrators, emphasizing the dangers of CSRF and phishing attacks.

Valters IT Signature

Report generated by Valters IT Cyber Threat Intelligence Division. This analysis is based on publicly available information and is provided for educational and defensive purposes only.

👁️ 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:"flexible-cookies"
http.html:"wp-content/plugins/flexible-cookies"

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