WordPress security changelog
CRITICAL CVE-2026-78006 Received

The Events Calendar pending comments can trigger object injection

The Events Calendar through 6.17.4 can execute code without authentication when comments are enabled and visible on events. Its V2 single-event template runs do_blocks() over buffered comment HTML; a moderation-hash URL lets the commenter view a pending crafted block immediately. PHP magic methods bypass is_safe_widget_instance(), enable_rendering_widget_copied() forges a valid wp_hash attribute, and attacker data reaches unserialize().

CVE / CNA score 9.8 CVSS 3.1 · security@wordfence.com
NVD score Pending NVD has not published its own CVSS assessment.
Component
The Events Calendar
Plugin slug
the-events-calendar
Affected
<= 6.17.4
Safe version
See mitigation notes
Published
Sep 12, 2026
Weakness
CWE-502 — Deserialization of Untrusted Data

This CVE was published Sep 12, 2026 and is one of 28 known issues for this plugin.

Update, patch or deactivate.

No fixed release is confirmed in the authoritative export. Disable comments on event posts or deactivate the plugin pending a vendor-confirmed fix. The application-level fix must not deserialize commenter-controlled block data and must validate integrity before any PHP object parsing or magic-method execution.

No confirmed safe version is listed. Consider a vendor-supported patch or temporarily restricting the affected functionality while you assess the risk.

Deactivate only when warranted by your risk profile, or when advised by your hosting provider in the limited circumstances where the vulnerability cannot otherwise be mitigated. If you’re unsure which action is appropriate, contact Fused or your hosting provider for guidance.

Technical description

The The Events Calendar plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 6.17.4 via the is_safe_widget_instance function. This is due to insufficient protection in is_safe_widget_instance, which can be bypassed because PHP fires magic methods during its pre-parse, combined with enable_rendering_widget_copied() forging a valid wp_hash integrity attribute before unserialize() is reached. This makes it possible for unauthenticated attackers to execute code on the server. This is exploitable without authentication or approval because the plugin's V2 single-event template runs do_blocks() over buffered comment HTML, and WordPress returns a moderation-hash URL that allows an unauthenticated commenter to immediately view their own pending comment, delivering the injected block markup to the vulnerable code path before any moderation occurs. This does require comments to be enabled and visible on events.

CVE / CNA vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Primary and upstream sources