Summary
CVE-2026-78265 is an unauthenticated PHP Object Injection (Deserialization of Untrusted Data, CWE-502) vulnerability in the "The Events Calendar" WordPress plugin, affecting versions up to and including 6.17.2. The flaw carries a CVSS v3.1 base score of 9.8 (Critical) and requires no authentication or user interaction to exploit over the network, making it a high-priority patching target for any internet-facing WordPress site running this plugin.
Technical details
- Root cause: The plugin deserializes untrusted, attacker-supplied input without adequate validation, allowing insertion of arbitrary PHP objects (PHP Object Injection).
- Trigger conditions: An unauthenticated attacker submits crafted serialized data to a vulnerable plugin entry point that is then passed to PHP’s deserialization functions.
- Attack vector: Network-based, low attack complexity, no privileges or user interaction required.
- Impact: Depending on other "gadget chains" available on the target (e.g., in the plugin’s legacy widget handling), successful exploitation can lead to arbitrary object instantiation, potentially escalating to remote code execution, data manipulation, or denial of service — reflected in the CVSS impact of high confidentiality, integrity, and availability loss.
Affected software
- The Events Calendar (WordPress plugin) — versions up to and including 6.17.2
- Fixed in version 6.17.3
Severity
- CVSS v3.1 Base Score: 9.8 (Critical)
- Vector:
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Mitigation and recommended actions
- Immediate: Update The Events Calendar plugin to version 6.17.3 or later, which hardens validation of copied legacy widget instances and addresses the deserialization issue.
- If immediate patching is not possible:
- Restrict or disable any public-facing endpoints/forms that accept widget or import-related input until patched.
- Deploy a web application firewall (WAF) rule to block requests containing serialized PHP object payloads (e.g., strings beginning with
O:,a:,s:in unexpected parameters). - Monitor logs for anomalous POST requests to plugin endpoints and for unexpected PHP errors referencing
unserialize(). - Take regular backups and verify site/database integrity given the potential for object injection to be chained into further compromise.

