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

CVE-2025-1666

CVE-2025-1666 Missing Authorization in Usercentrics
📅 PUBLISHED: 2025-03-06 11:11 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.09%
👁️
0.09% probability
2.3× above the median CVE
Tier: LOW
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: TA0004
👁️
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 4.3
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: L Privileges Required Low
UI: N User Interaction None
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-1666 is a Missing Authorization vulnerability in the WordPress plugin "Cookiebot CMP by Usercentrics" (cookiebot). The flaw resides in the send_uninstall_survey() function, which lacks a proper capability check. This allows any authenticated attacker with Subscriber-level access or higher to submit the uninstall survey on behalf of the website. While the impact is limited to unauthorized data modification (low integrity), it undermines the trust model of the plugin's administrative functions. The vulnerability affects all versions up to and including 4.4.1. No public exploit code or proof-of-concept is currently available, and the patch status remains unknown.

⚡ 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

CVSS Breakdown & Threat Level

  • CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N
  • Base Score: 4.3 (Medium)
  • Attack Vector: Network
  • Attack Complexity: Low
  • Privileges Required: Low (Subscriber)
  • User Interaction: None
  • Scope: Unchanged
  • Confidentiality Impact: None
  • Integrity Impact: Low
  • Availability Impact: None

The threat level is considered Medium due to the low privileges required and the ability to perform unauthorized actions, though the direct impact is limited to survey submission.

Deep Dive & Mechanics

The vulnerability is a classic case of Missing Authorization (CWE-862). In WordPress plugin development, administrative actions (like sending an uninstall survey) should be protected by capability checks (e.g., current_user_can('manage_options')). The send_uninstall_survey() function in the Cookiebot CMP plugin fails to perform such a check, allowing any authenticated user, even with the lowest Subscriber role, to trigger the survey submission.

The function is typically hooked into an AJAX action or a direct admin POST request. Without the capability check, the server processes the request without verifying that the user has the necessary permissions to perform the action. This can lead to:

  • Unauthorized submission of survey data.
  • Potential data pollution or analytics manipulation.
  • In rare cases, if the survey submission triggers other side effects (e.g., logging, external API calls), it could be used for reconnaissance or resource exhaustion.

Vulnerable vs. Patched Code

Vulnerable Code (<= 4.4.1):

public function send_uninstall_survey() {
    // No capability check
    $survey_data = $_POST['survey_data'];
    // Process and send survey...
    wp_die();
}

Patched Code (Hypothetical):

public function send_uninstall_survey() {
    if ( ! current_user_can( 'manage_options' ) ) {
        wp_die( 'Unauthorized' );
    }
    $survey_data = $_POST['survey_data'];
    // Process and send survey...
    wp_die();
}

The patch adds a capability check using current_user_can('manage_options') to ensure only administrators can submit the survey.

Exploitation & Lab Setup

Red Team

Prerequisites:

  • A WordPress site running Cookiebot CMP <= 4.4.1.
  • An authenticated user account with Subscriber role or higher.

Exploitation Steps:

  1. Log in as a Subscriber.
  2. Identify the AJAX action or endpoint for the uninstall survey. This is typically wp_ajax_send_uninstall_survey or similar.
  3. Craft a POST request to the WordPress admin-ajax.php endpoint with the action parameter and any required survey data.

Example Request:

POST /wp-admin/admin-ajax.php HTTP/1.1
Host: target-site.com
Content-Type: application/x-www-form-urlencoded
Cookie: wordpress_logged_in_...

action=send_uninstall_survey&survey_data[reason]=test&survey_data[details]=exploit
  1. The server will process the request and submit the survey, confirming the vulnerability.

Blue Team

Detection:

  • Monitor for AJAX requests to admin-ajax.php with the action send_uninstall_survey from non-admin users.
  • Look for unusual patterns in survey submission logs (e.g., multiple submissions from the same low-privilege user).
  • Use the Sigma rule provided in the Detection Engineering section.

Hunting:

  • Query web server logs for POST requests to /wp-admin/admin-ajax.php containing action=send_uninstall_survey.
  • Correlate with user role data to identify unauthorized submissions.

Indicators of Compromise (IOCs)

  • Network:
    • POST requests to /wp-admin/admin-ajax.php with action=send_uninstall_survey from non-admin IPs.
  • Logs:
    • WordPress debug logs showing survey submission from unexpected user roles.
  • File:
    • No file-based IOCs as this is a logic flaw.

Detection Engineering

YARA Rule

rule CVE_2025_1666_WordPress_Cookiebot_Missing_Auth {
    meta:
        description = "Detects vulnerable Cookiebot CMP plugin code with missing capability check in send_uninstall_survey"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2025-1666"
    strings:
        $func = "send_uninstall_survey" ascii wide nocase
        $no_check = "current_user_can" ascii wide nocase
    condition:
        $func and not $no_check
}

Sigma Rule

title: CVE-2025-1666 - Unauthorized Uninstall Survey Submission
id: 8a9b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d
status: experimental
description: Detects unauthorized submission of the uninstall survey via missing capability check in Cookiebot CMP plugin.
author: Valters IT
date: 2025-04-10
logsource:
    category: webserver
    product: apache
    service: access_combined
detection:
    selection:
        cs-method: 'POST'
        cs-uri-query|contains: 'action=send_uninstall_survey'
    condition: selection
falsepositives:
    - Legitimate admin submissions (should be rare)
level: medium
tags:
    - attack.initial_access
    - cve.2025.1666

Suricata Rule

alert http any any -> any any (msg:"CVE-2025-1666 - Unauthorized Uninstall Survey Submission"; flow:to_server,established; content:"POST"; http_method; content:"/wp-admin/admin-ajax.php"; http_uri; content:"action=send_uninstall_survey"; http_client_body; classtype:attempted-admin; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Update the plugin to the latest version if a patch becomes available. Check the WordPress plugin repository or vendor site for updates.
  2. Disable the plugin if no patch is available and the risk is unacceptable.
  3. Implement a Web Application Firewall (WAF) rule to block POST requests to admin-ajax.php with action=send_uninstall_survey from non-admin users.

Long-term Fix:

  • The vendor must add a capability check (current_user_can('manage_options')) to the send_uninstall_survey() function.
  • Conduct a security audit of all AJAX handlers in the plugin to ensure proper authorization.

Workaround:

  • Use a WordPress security plugin (e.g., Wordfence, Sucuri) to restrict access to AJAX actions based on user roles.

Valters IT

👁️ 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:"wp-content/plugins/cookiebot"
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2025-1666/ · 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.