CVE-2026-84801: Craft CMS: auth bypass enables admin takeover

HIGHPoC AVAILABLE
Published September 2, 2026
CISO Take

Craft CMS versions before 5.10.11 contain a broken access control flaw where any user granted the administrateUsers permission — not just full administrators — can generate a valid password-reset link for any admin account and then set a new password for it, because the reset-code validation never checks who is calling. This is a control-panel takeover primitive rated CVSS 8.8, but it is a generic CMS authorization bug, not an AI-native attack — Craft CMS is not an AI/ML framework, and this platform's 'ml_ui' tagging on the CVE appears to be a misclassification worth flagging to the pipeline. There is no EPSS score, no CISA KEV listing, no public exploit code, and no Nuclei template yet, so opportunistic mass exploitation is unlikely today, though the low attack complexity and no-user-interaction requirement mean any tenant with a compromised or malicious 'administrateUsers' account can pull this off trivially. The practical relevance to AI teams is indirect: organizations using Craft CMS as a headless content source feeding RAG pipelines, marketing sites, or AI-generated content workflows should treat a CP admin takeover as a potential foothold for downstream content or data poisoning. Patch to Craft CMS 5.10.11 immediately, audit and minimize which accounts hold administrateUsers permission, and review CP logs for unexpected password-reset URL generation against admin accounts.

Sources:NVDGitHub AdvisoryCISA KEVEPSSvulncheck.com

What is the risk?

High severity (CVSS 8.8) broken access control (CWE-862) with low attack complexity and no user interaction, but exploitation requires the attacker to already control a low-privileged account with the specific 'administrateUsers' permission — this is not an unauthenticated, internet-wide attack surface. No EPSS score, no CISA KEV listing, no public PoC/exploit, and no Nuclei template exist, indicating exploitation has not been observed or automated. Real-world risk concentrates in multi-tenant or agency-managed Craft CMS installs where non-admin roles are routinely granted administrateUsers for delegated user management — in those environments this is a near-trivial privilege escalation to full admin. From an AI/ML risk lens specifically, exposure is indirect and depends entirely on whether the compromised CMS instance feeds an AI content pipeline; standalone Craft CMS sites used purely for marketing content carry no AI-specific risk.

How does the attack unfold?

Insider Access
Attacker holds or compromises a low-privileged Craft CMS control-panel account that has been granted only the administrateUsers permission.
Reset URL Generation
Attacker calls actionGetPasswordResetUrl targeting an admin account; the endpoint fails to verify the caller is actually an admin and returns a valid reset URL/code for the target.
Password Takeover
Attacker submits the harvested code to actionSetPassword, which validates only the code and not the caller's session, letting them set a new password for the admin account.
Full CP Compromise
Attacker logs in as the compromised administrator, gaining full control-panel access to content, plugins, users, and site configuration.

What systems are affected?

PackageEcosystemVulnerable RangePatched
cms——No patch

Do you use cms? You're affected.

How severe is it?

CVSS 3.1
8.8 / 10
EPSS
0.4%
chance of exploitation in 30 days
Higher than 38% of all CVEs
Exploitation Status
Exploit Available
Exploitation: MEDIUM
Sophistication
Trivial
Exploitation Confidence
medium
○Public PoC indexed (trickest/cve)
Composite signal derived from CISA KEV, VulnCheck KEV, CISA SSVC, EPSS, Metasploit, Exploit-DB, trickest/cve, Nuclei templates, and inthewild.io exploitation reports.

What is the attack surface?

AVACPRUISCIA
AVNetwork
ACLow
PRLow
UINone
SUnchanged
CHigh
IHigh
AHigh

What should I do?

1 step
  1. Upgrade all Craft CMS instances to 5.10.11 or later immediately — this closes both the actionGetPasswordResetUrl authorization gap and the actionSetPassword code-validation gap. Audit every user account for the administrateUsers permission and revoke it from any account that does not strictly require delegated user management; treat it as admin-equivalent going forward. Review control-panel audit logs for password-reset URLs generated for admin accounts by non-admin callers, and force a password reset plus session invalidation for all admin accounts as a precaution if the instance was unpatched and administrateUsers was broadly granted. For any Craft CMS instance feeding content into AI/RAG pipelines, verify content integrity (checksums/version history) for the period the instance was vulnerable.

What does CISA's SSVC say?

DecisionTrack
Exploitationnone
AutomatableNo
Technical Impacttotal

Source: CISA Vulnrichment (SSVC v2.0). Decision based on the CISA Coordinator decision tree.

How is it classified?

Auth BypassFramework

Which compliance frameworks are affected?

Compliance analysis pending. Sign in for full compliance mapping when available.

Frequently Asked Questions

What is CVE-2026-84801?

Craft CMS versions before 5.10.11 contain a broken access control flaw where any user granted the administrateUsers permission — not just full administrators — can generate a valid password-reset link for any admin account and then set a new password for it, because the reset-code validation never checks who is calling. This is a control-panel takeover primitive rated CVSS 8.8, but it is a generic CMS authorization bug, not an AI-native attack — Craft CMS is not an AI/ML framework, and this platform's 'ml_ui' tagging on the CVE appears to be a misclassification worth flagging to the pipeline. There is no EPSS score, no CISA KEV listing, no public exploit code, and no Nuclei template yet, so opportunistic mass exploitation is unlikely today, though the low attack complexity and no-user-interaction requirement mean any tenant with a compromised or malicious 'administrateUsers' account can pull this off trivially. The practical relevance to AI teams is indirect: organizations using Craft CMS as a headless content source feeding RAG pipelines, marketing sites, or AI-generated content workflows should treat a CP admin takeover as a potential foothold for downstream content or data poisoning. Patch to Craft CMS 5.10.11 immediately, audit and minimize which accounts hold administrateUsers permission, and review CP logs for unexpected password-reset URL generation against admin accounts.

Is CVE-2026-84801 actively exploited?

Proof-of-concept exploit code is publicly available for CVE-2026-84801, increasing the risk of exploitation.

How to fix CVE-2026-84801?

Upgrade all Craft CMS instances to 5.10.11 or later immediately — this closes both the actionGetPasswordResetUrl authorization gap and the actionSetPassword code-validation gap. Audit every user account for the administrateUsers permission and revoke it from any account that does not strictly require delegated user management; treat it as admin-equivalent going forward. Review control-panel audit logs for password-reset URLs generated for admin accounts by non-admin callers, and force a password reset plus session invalidation for all admin accounts as a precaution if the instance was unpatched and administrateUsers was broadly granted. For any Craft CMS instance feeding content into AI/RAG pipelines, verify content integrity (checksums/version history) for the period the instance was vulnerable.

What systems are affected by CVE-2026-84801?

This vulnerability affects the following AI/ML architecture patterns: RAG pipelines (if CMS content is used as a data source), AI-generated content workflows.

What is the CVSS score for CVE-2026-84801?

CVE-2026-84801 has a CVSS v3.1 base score of 8.8 (HIGH). The EPSS exploitation probability is 0.44%.

What is the AI security impact?

Affected AI Architectures

RAG pipelines (if CMS content is used as a data source)AI-generated content workflows

What are the technical details?

Original Advisory

Craft CMS versions before 5.10.11 fail to validate admin status in the actionGetPasswordResetUrl endpoint, allowing non-admin users with administrateUsers permission to mint password reset URLs for administrator accounts. Attackers can generate a valid reset URL for any admin user and set a new password via actionSetPassword, which validates only the verification code without checking the caller's session, enabling complete control-panel takeover.

Exploitation Scenario

An attacker who compromises, or already is, a low-privileged Craft CMS control-panel user granted only the administrateUsers permission targets a known administrator account. They call the actionGetPasswordResetUrl endpoint for that admin account; because the endpoint never verifies the caller's own admin status, it returns a valid password-reset URL and verification code for the target admin. The attacker then submits that code to actionSetPassword, which validates only the code itself and not the session or identity of whoever submits it, letting the attacker set a new password for the admin account. They log in as that administrator, gaining full control-panel access — and, if the CMS feeds a downstream AI content or RAG pipeline, a foothold to tamper with that content at its source.

Weaknesses (CWE)

CWE-862 — Missing Authorization: The product does not perform an authorization check when an actor attempts to access a resource or perform an action.

  • [Architecture and Design] Divide the product into anonymous, normal, privileged, and administrative areas. Reduce the attack surface by carefully mapping roles with data and functionality. Use role-based access control (RBAC) [REF-229] to enforce the roles at the appropriate boundaries. Note that this approach may not protect against horizontal authorization, i.e., it will not protect a user from attacking others with the same role.
  • [Architecture and Design] Ensure that access control checks are performed related to the business logic. These checks may be different than the access control checks that are applied to more generic resources such as files, connections, processes, memory, and database records. For example, a database may restrict access for medical records to a specific database user, but each record might only be intended to be accessible to the patient and the patient's doctor [REF-7].

Source: MITRE CWE corpus.

CVSS Vector

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

Timeline

Published
September 2, 2026
Last Modified
September 2, 2026
First Seen
September 2, 2026

Related Vulnerabilities