Skip to main content

My Calendar EUVDEUVD-2026-102653

| CVE-2026-104798 CRITICAL
Improper Privilege Management (CWE-269)
2026-10-16 Wordfence GHSA-jcj4-jrhq-cjvh
9.8
CVSS 3.1 · Vendor: Wordfence
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Request default /my-calendar/ page
  2. Delivery
    Inject nested shortcode via mcs parameter
  3. Exploit
    do_shortcode dispatches call_user_func unchecked
  4. Execution
    Invoke edit_user against user ID 1
  5. Persist
    Overwrite administrator credentials
  6. Impact
    Full wp-admin takeover

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V8 - Authorization Least privilege enforcement
MITRE ATT&CK

1 technique across 1 tactic: Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

No special configuration is required: the My Calendar plugin auto-generates a /my-calendar/ page that is publicly accessible by default upon activation, giving an unauthenticated remote attacker a reflected entry point for the mcs GET parameter without any authentication, authorization, or user interaction. The only practical precondition is that the plugin (version ≤3.8.7) is installed and active, and that the targeted Administrator occupies user ID 1 - which is the standard default for the first/primary WordPress admin account, so this is rarely a limiting factor. The exploit depends on the unsanitized reflection running before WordPress core's do_shortcode filter and on mc_generate_calendar_nav() dispatching above elements through call_user_func() with no callable allowlist; there is no CAPTCHA, nonce, or capability check limiting exploitation.

Impact

This is a genuine top-priority vulnerability, not a high-CVSS-but-low-real-risk case. The CVSS 9.8 vector (AV:N/AC:L/PR:N/UI:N) is fully corroborated by the description: the attack is network-reachable, requires no authentication, no user interaction, and low complexity, because the vulnerable /my-calendar/ page is auto-generated and publicly accessible by default on plugin activation. The technical impact is total - arbitrary PHP function invocation via unchecked call_user_func() leading to overwrite of the user ID 1 Administrator credentials - which justifies C:H/I:H/A:H and maps to a SSVC 'total' technical impact with likely 'automatable=yes' given the single-request, default-config trigger. No EPSS score, KEV listing, or POC flag was supplied in the input, so exploitation probability cannot be quantified from the data; per precision rules, there is no public exploit identified at time of analysis and no confirmation of active exploitation. The absence of KEV/EPSS does not lower the intrinsic risk: the signals that ARE present (unauthenticated, default-reachable, full admin takeover, trivially scriptable) point to very high real-world exploitability, and WordPress plugin privilege-escalation flaws of this class are historically mass-exploited shortly after disclosure. Treat as emergency-patch priority.

Exploit ScenarioDerived

An unauthenticated attacker sends a single crafted GET request to the public /my-calendar/ page with a malicious mcs parameter that reflects a nested [my_calendar above=edit_user,...] shortcode into post content before do_shortcode runs. Because mc_generate_calendar_nav() splits the above attribute and dispatches each element through call_user_func() with no allowlist, the attacker coerces edit_user() to run against user ID 1, resetting the primary Administrator's credentials and seizing full wp-admin access. No public exploit was provided in the input data, but the attack is low-complexity and trivially scriptable given AV:N/AC:L/PR:N/UI:N.

Act Now Prioritize within 24-48h. Why: CRITICAL severity.
No patch listed yet 0.9% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 16, 2026

Unauthenticated privilege escalation in the My Calendar - Accessible Event Manager WordPress plugin (all versions up to and including 3.8.7) allows remote attackers to overwrite the credentials of the default Administrator account (user ID 1) and gain full wp-admin access. The flaw arises from unsanitized reflection of the mcs GET parameter into post content, enabling injection of a nested [my_calendar above=...] shortcode that is processed by mc_generate_calendar_nav(), which calls arbitrary PHP functions via call_user_func() without authorization or callable allowlisting. No public exploit code has been identified at time of analysis, but the plugin's auto-generated /my-calendar/ page is publicly accessible by default, making exploitation trivially reachable by an unauthenticated attacker.

RemediationAI

Upstream fix available (PR/commit); released patched version not independently confirmed. The primary remediation is to update the My Calendar - Accessible Event Manager plugin to the latest version once a patched release (likely 3.8.8 or later) is published by the vendor. Monitor the Wordfence advisory link and the plugin's WordPress.org page for the fix; the referenced changeset 3746389 (https://plugins.trac.wordpress.org/changeset?reponame=&old=3746389%40my-calendar&new=3746389%40my-calendar) appears to address the vulnerable code, but no patched release version has been confirmed. If an immediate update is not possible, deactivate the plugin until a patch is applied, as this removes the vulnerable code path entirely. As a temporary compensating control, restrict access to the auto-generated /my-calendar/ page using a web application firewall (WAF) rule to block requests containing nested shortcodes in the mcs parameter, or remove the page if it is not needed; however, these measures may break calendar functionality and are not a substitute for patching. Additionally, consider changing the Administrator account ID 1 to a non-default user (though WordPress does not easily support this without custom code) or limiting the ability to call edit_user() via other plugins, but these are not reliable mitigations.

Affected VersionsENISA

My Calendar – Accessible Event Manager 3.8 ≤3.8.7
My Calendar – Accessible Event Manager 3.6 ≤3.6.17
My Calendar – Accessible Event Manager 3.7 ≤3.7.17
My Calendar – Accessible Event Manager 0 ≤3.4.24
My Calendar – Accessible Event Manager 3.5 ≤3.5.21

Affected Packages

euvd my_calendar_accessible_event_manager no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The vulnerability lies in the My Calendar - Accessible Event Manager plugin for WordPress, specifically in versions 3.8.6 and earlier (CPE: cpe:2.3:a:joedolson:my_calendar_-_accessible_event_manager:*:*:*:*:*:*:*:*). The root cause is classified as CWE-269 (Improper Privilege Management): the plugin fails to enforce proper authorization and callable allowlisting when dispatching shortcode attributes. The public mcs GET parameter is reflected into post content before WordPress core's do_shortcode filter runs, allowing an attacker to inject a nested [my_calendar above=...] shortcode. The plugin's mc_generate_calendar_nav() function (see references to my-calendar-navigation.php lines 248 and 260) splits the above attribute on commas and passes each element to call_user_func() without validating that the callable is permitted or that the user has the necessary capabilities. This enables invocation of arbitrary loaded PHP functions. The exploit chain leverages PHP's type coercion: when the shortcode's $params array is passed to edit_user(), it is coerced to integer 1 as the $user_id, allowing the attacker to change the credentials of the initial Administrator account. The affected component is a WordPress plugin, and the attack surface is the plugin's auto-generated /my-calendar/ page, which is publicly accessible by default.

Know when PHP gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (Wordfence) PRIMARY 9.8 CRITICAL
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
vuln.today AI 9.8 CRITICAL

Unauthenticated, default-reachable public page (AV:N/AC:L/PR:N/UI:N); arbitrary function call and admin-account takeover yields full C:H/I:H/A:H with scope unchanged.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (Wordfence).

CVSS VectorVendor: Wordfence

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

DescriptionCVE.org

The My Calendar - Accessible Event Manager plugin for WordPress is vulnerable to Privilege Escalation in all versions up to, and including, 3.8.7. The public mcs GET parameter is reflected into post content unsanitized before WordPress core's do_shortcode filter runs, allowing an unauthenticated attacker to inject a nested [my_calendar above=...] shortcode; mc_generate_calendar_nav() then splits the above attribute on commas and dispatches each element via call_user_func() with no authentication, authorization, or callable allowlist check. This makes it possible for unauthenticated attackers to invoke arbitrary loaded PHP functions, enabling a call chain in which the shortcode $params array is passed to edit_user() - which PHP coerces to integer 1 as the $user_id argument - overwriting the credentials of the initial Administrator account (user ID 1) and granting the attacker full wp-admin access. Exploitation is trivially reachable via the plugin's auto-generated /my-calendar/ page, which is publicly accessible by default upon plugin activation.

Executive ViewAI

Why It Matters

A critical (CVSS 9.8) vulnerability in the My Calendar - Accessible Event Manager WordPress plugin affects every version through 3.8.7 and would allow an attacker to seize the site's default administrator account and obtain full wp-admin control of the website. Because the plugin's auto-generated /my-calendar/ page is publicly reachable by default and no vendor patch is currently available, any organization hosting this plugin on an internet-facing WordPress site is exposed to full site takeover, including content manipulation, theft of user and customer data, and use of the site to serve malicious content to visitors. Leadership should care because the blast radius extends beyond the website itself to brand trust, customer data protection, and regulatory obligations.

Business Impact: Severe
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: deactivate and remove the My Calendar - Accessible Event Manager plugin (all versions up to and including 3.8.7); if removal is not possible, block public access to the auto-generated /my-calendar/ page and reject requests containing the mcs GET parameter at the WAF/reverse proxy, and require authentication for that page; restrict wp-admin and the site login to trusted IP ranges or a VPN; and monitor database content and web logs for injected [my_calendar] shortcodes and mcs parameter requests to detect exploitation attempts.

Threat Intelligence Overview

EPSS Score
0.9%
Top 41% exploitable
Prevalence
Medium
Established WordPress calendar plugin, popular but not universally deployed
Social Media
4
Sightings
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity CRITICAL
CISA KEV No
Public POC No
EPSS 0.9%
Patch available No
Active threat No
Deciding rule
CRITICAL severity
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Out-of-Cycle
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact
Very High
Technical Impact
Total

Priority Score

50
Low Medium High Critical
KEV: 0
EPSS: +1
CVSS: +49
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Privilege escalation occurs when an attacker leverages flaws in access control mechanisms to gain permissions beyond what they were originally granted.

More in PHP

View all
CVE-2019-11043 CRITICAL POC
9.8 Oct 28

In PHP versions 7.1.x below 7.1.33, 7.2.x below 7.2.24 and 7.3.x below 7.3.11 in certain configurations of FPM setup it

CVE-2012-1823 CRITICAL POC
9.8 May 11

sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not

CVE-2016-1555 CRITICAL POC
9.8 Apr 21

(1) boardData102.php, (2) boardData103.php, (3) boardDataJP.php, (4) boardDataNA.php, and (5) boardDataWW.php in Netgear

CVE-2018-11138 CRITICAL POC
9.8 May 31

The '/common/download_agent_installer.php' script in the Quest KACE System Management Appliance 8.0.318 is accessible by

CVE-2024-11680 CRITICAL POC
9.8 Nov 26

ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. Rated critical severity (C

CVE-2025-49113 CRITICAL POC
9.9 Jun 02

Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au

CVE-2017-9841 CRITICAL POC
9.8 Jun 27

Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP c

CVE-2025-0108 HIGH POC
8.8 Feb 12

Palo Alto Networks PAN-OS management web interface contains an authentication bypass allowing unauthenticated attackers

CVE-2021-25298 HIGH POC
8.8 Feb 15

Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re

CVE-2021-25296 HIGH POC
8.8 Feb 15

Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re

CVE-2013-4983 CRITICAL POC
10.0 Sep 10

The get_referers function in /opt/ws/bin/sblistpack in Sophos Web Appliance before 3.7.9.1 and 3.8 before 3.8.1.1 allows

CVE-2023-6553 CRITICAL POC
9.8 Dec 15

The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy