CVE-2026-5465
Received Received - Intake
IDOR in Amelia WordPress Plugin Allows Admin Account Takeover

Publication date: 2026-04-07

Last updated on: 2026-04-07

Assigner: Wordfence

Description
The Booking for Appointments and Events Calendar – Amelia plugin for WordPress is vulnerable to Insecure Direct Object Reference in all versions up to, and including, 2.1.3. This is due to the `UpdateProviderCommandHandler` failing to validate changes to the `externalId` field when a Provider (Employee) user updates their own profile. The `externalId` maps directly to a WordPress user ID and is passed to `wp_set_password()` and `wp_update_user()` without authorization checks. This makes it possible for authenticated attackers, with Provider-level (Employee) access and above, to take over any WordPress account β€” including Administrator β€” by injecting an arbitrary `externalId` value when updating their own provider profile.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2026-04-07
Last Modified
2026-04-07
Generated
2026-06-16
AI Q&A
2026-04-07
EPSS Evaluated
2026-06-14
NVD
EUVD
Affected Vendors & Products
Showing 1 associated CPE
Vendor Product Version / Range
wpamelia amelia to 2.1.3 (inc)
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-639 The system's authorization functionality does not prevent one user from gaining access to another user's data or record by modifying the key value identifying the data.
Attack-Flow Graph
AI Quick Actions
Instant insights powered by AI
Executive Summary

The Booking for Appointments and Events Calendar – Amelia plugin for WordPress has a vulnerability called Insecure Direct Object Reference (IDOR) in all versions up to and including 2.1.3.

This happens because the UpdateProviderCommandHandler does not properly validate changes to the externalId field when a Provider (Employee) user updates their own profile.

The externalId corresponds directly to a WordPress user ID and is used in functions like wp_set_password() and wp_update_user() without checking if the user is authorized to make those changes.

As a result, an authenticated attacker with Provider-level access or higher can inject an arbitrary externalId value when updating their profile, allowing them to take over any WordPress account, including Administrator accounts.

Detection Guidance

This vulnerability involves the manipulation of the `externalId` field during updates to a Provider profile in the Amelia plugin for WordPress. Detection would focus on monitoring or inspecting requests that attempt to update provider profiles, specifically looking for unauthorized changes to the `externalId` parameter.

To detect exploitation attempts on your system, you can monitor HTTP requests to the endpoint handling provider profile updates for suspicious or unexpected `externalId` values.

Example commands to detect such activity might include:

  • Using web server logs, search for POST requests containing the `externalId` parameter: `grep -i 'externalId' /var/log/apache2/access.log`
  • If using a tool like `tcpdump` or `Wireshark`, filter HTTP POST requests to the Amelia plugin update endpoint and inspect payloads for `externalId` changes.
  • On the WordPress server, review recent changes to provider profiles by querying the database for updates to the `externalId` field or related user metadata.

Note that specific endpoint URLs or database schema details are not provided in the available context, so exact commands may need adjustment based on your environment.

Impact Analysis

This vulnerability can have severe impacts because it allows an attacker with Provider-level access to take over any WordPress account on the site.

By injecting an arbitrary externalId, the attacker can change passwords and user details of other accounts, including administrators.

This can lead to full site compromise, unauthorized access to sensitive data, and potential disruption of website operations.

Compliance Impact

The vulnerability allows authenticated attackers with Provider-level access to take over any WordPress account, including Administrator accounts, by exploiting insecure direct object references. This unauthorized access and potential account takeover can lead to unauthorized disclosure, modification, or destruction of sensitive data.

Such unauthorized access and control over user accounts can negatively impact compliance with common standards and regulations like GDPR and HIPAA, which require strict controls over access to personal and sensitive information to ensure confidentiality, integrity, and availability.

Mitigation Strategies

To mitigate this vulnerability, you should immediately update the Booking for Appointments and Events Calendar – Amelia plugin for WordPress to a version later than 2.1.3 where the issue is fixed.

Additionally, restrict Provider-level (Employee) user permissions to prevent unauthorized changes to the externalId field, and monitor for suspicious account takeover attempts.

Chat Assistant
Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-5465. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70
EPSS Chart