CVE-2026-12955: GDPR Cookie Consent Plugin WordPress Privilege Escalation Vulnerability
The GDPR Cookie Consent plugin for WordPress contains a privilege escalation vulnerability that allows lower-level users to modify critical plugin settings they shouldn't be able to access. An authenticated user with basic Subscriber permissions can change the plugin's cookie scan schedule configuration through an unprotected AJAX function. This bypasses WordPress's built-in permission checks and allows attackers to manipulate administrative settings without proper authorization.
Source data · NVD / CISA · public domain
- CVSS
- 3.1 · 4.3 MEDIUM · CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N
- Weaknesses (CWE)
- CWE-862
- Affected products
- 0 configuration(s)
- Published / Modified
- 2026-07-10 / 2026-07-10
NVD description (verbatim)
The GDPR Cookie Consent plugin for WordPress is vulnerable to unauthorized modification of data due to a missing capability check and missing nonce verification on the gdpr_cookie_consent_ajax_save_schedule_scan() function (the wp_ajax_gcc_save_schedule_scan AJAX action) in versions up to, and including, 4.3.6. This makes it possible for authenticated attackers, with Subscriber-level access and above, to modify the plugin's cookie scan schedule configuration stored in the gdpr_scan_schedule_data option, which is an administrative function intended to be limited to users with the manage_options capability.
5 reference(s) · View on NVD →
SEC.co analysis · AI-assisted, reviewed against source
Technical summary
CVE-2026-12955 affects the GDPR Cookie Consent plugin up to version 4.3.6. The vulnerability exists in the gdpr_cookie_consent_ajax_save_schedule_scan() AJAX handler (wp_ajax_gcc_save_schedule_scan action) which fails to perform two critical security checks: capability verification and nonce validation. This allows any authenticated user, including those with only Subscriber-level access, to call this administrative function and modify the gdpr_scan_schedule_data option. The affected function lacks the check_ajax_referer() call needed to verify request authenticity and does not validate that the requesting user possesses manage_options capability, which is required for administrative plugin configuration. CWE-862 (Missing Authorization) is the root cause.
Business impact
An attacker with low-privilege site access—such as a contributor, subscriber, or any authenticated user—can disrupt the plugin's core functionality by altering its scan schedule. This can prevent legitimate cookie compliance scanning from running, potentially leaving a website non-compliant with GDPR requirements and exposing the organization to regulatory scrutiny. The integrity of compliance records and configuration is compromised without requiring administrative intervention, introducing governance and audit trail concerns.
Affected systems
GDPR Cookie Consent plugin for WordPress versions 4.3.6 and earlier are vulnerable. Organizations using this plugin on WordPress sites should verify their installed version. Self-hosted WordPress deployments and managed WordPress hosting platforms where this plugin is active are within scope.
Exploitability
This vulnerability has low barriers to exploitation. It requires only network access and valid WordPress authentication credentials at the Subscriber level or above—accounts that are commonly provisioned for contributors, consultants, or other non-administrative users. No special tools, zero-day techniques, or elevated privileges are needed. An attacker with a compromised or created low-privilege account can immediately modify plugin settings via a simple AJAX request. The attack is not present in KEV catalogs, indicating it has not yet been reported as actively exploited in the wild, but the ease of exploitation means defensive measures should not be delayed.
Remediation
Update the GDPR Cookie Consent plugin to a patched version released after 4.3.6. Verify the patch version against the official plugin repository or vendor advisory to confirm the vulnerability has been addressed. Until patching is possible, restrict plugin usage or temporarily disable the cookie scan schedule feature if operationally feasible. Additionally, review and minimize the number of users with authenticated access to WordPress, particularly those with Subscriber or Contributor roles on production sites.
Patch guidance
Administrators should check the official GDPR Cookie Consent plugin page on wordpress.org for available updates and apply the latest version. Test patches in a staging environment before deploying to production to ensure no conflicts with site functionality or other plugins. Verify that the patched version explicitly addresses the missing capability check and nonce validation in the AJAX handler. After patching, audit the gdpr_scan_schedule_data option to confirm it has not been maliciously altered.
Detection guidance
Monitor WordPress audit logs and AJAX request logs for repeated calls to the wp_ajax_gcc_save_schedule_scan action, particularly from low-privilege user accounts or during unusual times. Check for unexpected modifications to the gdpr_scan_schedule_data option using site security plugins that track database changes. Review WordPress user activity logs for Subscriber or Contributor accounts performing administrative actions. If you have access to server logs, search for POST requests to /wp-admin/admin-ajax.php with the action parameter set to gcc_save_schedule_scan originating from non-administrative users.
Why prioritize this
Although this vulnerability carries a CVSS score of 4.3 (Medium severity) and is not yet exploited in the wild, it should be prioritized for patching because (1) exploitation is trivial—requiring only valid low-privilege credentials; (2) the affected plugin is common on privacy-conscious sites that depend on it for compliance; (3) the integrity of compliance settings is at stake, creating audit and legal risk; and (4) patch deployment is straightforward. Organizations should treat this as a moderate-priority but time-sensitive update.
Risk score, explained
The CVSS 3.1 score of 4.3 reflects a Medium-severity vulnerability with low attack complexity, requiring only low-privilege authentication (PR:L), and delivering integrity impact (I:L) without confidentiality or availability consequences. The Network vector (AV:N) and lack of user interaction (UI:N) keep the score from being lower. The score appropriately captures that this is a privilege escalation issue: while the direct impact is limited to a single option's modification, the unauthorized nature of that modification and the potential for compliance disruption warrant immediate attention.
Frequently asked questions
Can this vulnerability be exploited without a WordPress user account?
No. The vulnerability requires valid WordPress authentication credentials at the Subscriber level or above. An attacker must have a real user account on the site. However, such accounts are often created for contributors, clients, or other non-administrative users, making them a practical attack surface.
Does patching require taking the site offline?
No. Updating the plugin can typically be done through the WordPress admin dashboard without downtime. A staging environment test is recommended to catch any incompatibilities before applying to production.
What is the most critical setting that could be altered through this vulnerability?
The gdpr_scan_schedule_data option controls when the plugin's cookie compliance scan runs. Altering it could prevent scans from executing, causing the website to fall out of compliance monitoring and potentially violate GDPR requirements.
Should I disable the plugin entirely until I can patch it?
Disabling the plugin is a viable temporary mitigation if cookie scanning is not critical to your immediate operations. However, patching is the preferred solution and should be done as soon as possible. If the plugin is essential to your compliance posture, prioritize patching over disabling.
This analysis is provided for informational purposes and based on the vulnerability description and CVSS assessment as of the publication date. Organizations should verify patch availability and version numbers directly with the plugin vendor or WordPress plugin repository. The absence of KEV listing does not indicate the vulnerability is unimportant—it reflects current exploit status only. Security decisions should be made in the context of your own environment, risk profile, and compliance obligations. Test all patches in non-production environments before deployment. Source: NVD (public-domain), retrieved 2026-08-17. Analysis generated by SEC.co (claude-haiku-4-5).
Weaknesses (CWE)
Related vulnerabilities
- CVE-2022-42479MEDIUMMissing Authorization in TemplateHouse Soledad – MEDIUM Severity Access Control Bypass
- CVE-2022-45813MEDIUMBeRocket Advanced AJAX Product Filters Missing Authorization Flaw
- CVE-2023-25969MEDIUMMissing Authorization in ThemeHunk Contact Form Plugin
- CVE-2023-32959MEDIUMMetroStore Missing Authorization Vulnerability – Patch Guide
- CVE-2024-24709MEDIUMShareaholic Missing Authorization Vulnerability – Update Required
- CVE-2024-31435MEDIUMMissing Authorization in Inisev Social Media & Share Icons Plugin—Patch Guidance
- CVE-2024-33685MEDIUMMissing Authorization in Jegstudio Startupzy 1.1.1 – MEDIUM Severity Vulnerability
- CVE-2024-33909MEDIUMMissing Authorization in Avirtum iPages Flipbook – CVSS 5.3 Patch Guide