CVE-2025-12175

4.3 MEDIUM

📋 TL;DR

The Events Calendar WordPress plugin versions up to 6.15.9 have an authorization vulnerability where authenticated users with Subscriber-level permissions can access draft event names and generate/view QR codes for unpublished events. This affects all WordPress sites using vulnerable plugin versions, potentially exposing sensitive event information before publication.

💻 Affected Systems

Products:
  • The Events Calendar WordPress plugin
Versions: All versions up to and including 6.15.9
Operating Systems: All operating systems running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress installation with The Events Calendar plugin and at least one authenticated user with Subscriber role or higher.

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could discover and leak confidential event details before official announcements, potentially causing reputational damage or competitive harm to organizations.

🟠

Likely Case

Low-privilege users can view draft event names they shouldn't have access to, violating information confidentiality and potentially learning about unannounced events.

🟢

If Mitigated

With proper access controls and monitoring, impact is limited to information disclosure of draft event names only, not full event details or system compromise.

🌐 Internet-Facing: MEDIUM
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: MEDIUM

Exploitation requires authenticated access but only needs Subscriber-level permissions, which are commonly granted to many users.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 6.15.10

Vendor Advisory: https://plugins.trac.wordpress.org/changeset/3386042/the-events-calendar/tags/6.15.10/src/Events/QR/QR_Code.php

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find The Events Calendar plugin. 4. Click 'Update Now' if available, or manually update to version 6.15.10 or later.

🔧 Temporary Workarounds

Disable QR Code functionality

all

Temporarily disable QR code generation by modifying plugin code or using filters to prevent access to vulnerable endpoint.

Add to theme's functions.php: add_filter('tec_qr_code_enabled', '__return_false');

🧯 If You Can't Patch

  • Restrict user roles to prevent Subscriber-level users from accessing the site
  • Implement web application firewall rules to block requests to /wp-admin/admin-ajax.php with action=tec_qr_code_modal

🔍 How to Verify

Check if Vulnerable:

Check plugin version in WordPress admin under Plugins → Installed Plugins. If version is 6.15.9 or lower, system is vulnerable.

Check Version:

wp plugin list --name='the-events-calendar' --field=version

Verify Fix Applied:

Confirm plugin version is 6.15.10 or higher in WordPress admin panel.

📡 Detection & Monitoring

Log Indicators:

  • Multiple POST requests to /wp-admin/admin-ajax.php with action=tec_qr_code_modal from low-privilege user accounts
  • Unusual QR code generation activity from non-administrator accounts

Network Indicators:

  • HTTP POST requests to WordPress admin-ajax.php endpoint with tec_qr_code_modal parameter

SIEM Query:

source="wordpress_logs" AND uri_path="/wp-admin/admin-ajax.php" AND post_data="action=tec_qr_code_modal" AND user_role="subscriber"

🔗 References

📤 Share & Export