Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCraft javascript: returnUrl login link
-
DeliveryLure 2FA admin to open it mid-login
-
ExploitClient-side navigation follows returnUrl
-
ExecutionExecute JavaScript in control panel
-
ImpactAct with victim's CP permissions
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires the victim to be a Craft CMS control-panel user with two-factor authentication (TOTP) enabled, because the attack targets the verification step at /admin/login?verify=1. The attacker must deliver a crafted login URL whose returnUrl parameter contains a javascript: scheme, and the victim must actively open it during the narrow window between submitting their password and completing TOTP verification (reflected in AT:P and UI:A). Limiting factors: this is not possible against accounts without 2FA, requires precise timing plus social engineering, requires victim interaction, and executes only with the victim's existing control-panel permissions rather than granting elevation; there is no server-side impact (VC/VI/VA:N). |
| Impact | This is a genuinely low-priority issue, and the multiple signals agree rather than conflict. The vendor-assigned CVSS 4.0 score is 2.1 (Low), driven by the fact that the vulnerability produces no impact on the vulnerable system itself (VC:N/VI:N/VA:N) and only low subsequent-system confidentiality and integrity impact (SC:L/SI:L). Critically, the vector includes AT:P (a specific attack requirement - the narrow timing window between password submission and TOTP entry) and UI:A (active victim interaction required), both of which sharply constrain real-world exploitability. There is no EPSS score, no CISA KEV listing, and no public exploit code referenced in the provided data, so exploitation is entirely theoretical at this time: no public exploit identified at time of analysis. No SSVC decision data was supplied. Although PR:N technically means the attacker needs no privileges, successful exploitation depends on a highly specific social-engineering and timing sequence against a 2FA-enabled administrator, which makes mass or automated exploitation impractical. This is a legitimate DOM-XSS defect worth patching during normal maintenance, not an emergency; the low CVSS accurately reflects low real-world risk. |
| Exploit ScenarioDerived | An attacker crafts a malicious /admin/login?verify=1 URL whose returnUrl parameter carries a javascript: payload and socially engineers a Craft CMS administrator with 2FA enabled into opening it during login - specifically in the window after the password is submitted but before the TOTP code is verified. When the client-side code navigates to the attacker-controlled returnUrl, the JavaScript executes in the authenticated control panel context with the victim's permissions. No public proof-of-concept exploit is referenced in the available data. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 12, 2026
DOM-based cross-site scripting in the Craft CMS control panel login and two-factor verification flow (Craft CMS 5.0.0 before 5.10.14) lets an unauthenticated attacker run JavaScript in the browser of a control-panel user who has TOTP 2FA enabled, executing with the victim's own permissions. The attacker must lure the victim into opening a crafted /admin/login?verify=1 URL whose returnUrl parameter carries a javascript: scheme, and the victim must do so during the narrow window between password submission and TOTP entry, so exploitation requires precise timing, social engineering and active user interaction (CVSS 4.0 base 2.1, reflecting AT:P and UI:A with no server-side impact). No public exploit code has been identified at time of analysis and the flaw cannot be triggered against accounts without 2FA; overall this is a genuinely low-priority issue where the multiple signals agree rather than conflict.
RemediationAI
Upgrade to Craft CMS 5.10.14 or later; this is the vendor-released fix per advisory GHSA-w5rh-mhxj-wr8r, and the affected range is scoped in the description to 5.0.0 before 5.10.14. If an immediate upgrade is not possible, the most practical compensating controls are network-based: restrict /admin and other control-panel paths to trusted IP ranges, a VPN, or an identity-aware proxy (trade-off: legitimate remote administrators outside that perimeter lose access and must be given an alternative entry path), and add a WAF or reverse-proxy rule that rejects requests to /admin/login where the returnUrl parameter contains a javascript: scheme, including URL-encoded variants (trade-off: minimal, since such values are not legitimate, but the rule must be scoped so it does not interfere with the normal 2FA verification flow). A strict Content-Security-Policy on the control panel that blocks javascript: navigation is useful defence in depth, but Craft's control panel relies on inline scripts and dynamic assets, so an over-tight policy will break the admin UI and must be tested in a staging environment first. Disabling TOTP for control-panel users would remove the attack's pre-condition, which depends on the post-password, pre-TOTP verify step, but it weakens authentication globally and is not a recommended trade. Because there is no server-side impact, detection is limited to proxy or WAF logs showing /admin/login?verify=1 requests with a javascript: value in returnUrl.
Affected VersionsENISA
Affected Packages
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 flaw is classified as CWE-79 (improper neutralization of input during web page generation) and is specifically DOM-based XSS: the dangerous sink is client-side navigation rather than server-side template rendering. Craft CMS uses a returnUrl parameter to send users back to their intended destination after control-panel authentication, and during the two-factor step at /admin/login?verify=1 that value is consumed by client-side JavaScript that navigates to the supplied URL without validating its scheme. A javascript: URI is therefore accepted as a navigation target and executes in the control panel's origin, inheriting the authenticated victim's session and permissions. This is reflected in the CVSS 4.0 vector's subsequent-system metrics SC:L/SI:L alongside VC/VI/VA:N, meaning impact is confined to the victim's browser context with no server-side confidentiality, integrity or availability effect. The prerequisites are captured by AT:P (the target must be in the specific mid-2FA state) and UI:A (the victim must actively open the crafted link), while PR:N indicates the attacker needs no account on the target system. Affected builds are represented by the wildcard CPE cpe:2.3:a:craftcms:cms:*:*:*:*:*:*:*:*, i.e. the Craft CMS 5.x branch from 5.0.0 up to 5.10.13.
Know when Cms 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
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
Network-delivered DOM XSS needing a precise login-flow timing window (AC:H) and victim interaction (UI:R); unauthenticated attacker (PR:N), scope change into the CP session (S:C) with low C/I and no availability impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
1DescriptionCVE.org
Craft CMS 5.0.0 before 5.10.14 contains a DOM-based cross-site scripting vulnerability in the control panel login and 2FA verification flow, where a user-controlled returnUrl accepting javascript: URLs is used in client-side navigation. Attackers can lure a 2FA-enabled victim into opening a crafted /admin/login?verify=1 URL between password submission and TOTP verification, executing JavaScript in the authenticated control panel with the victim's permissions.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
Cayin CMS suffers from an authenticated OS semi-blind command injection vulnerability using default credentials. Rated c
Multiple integer underflows in the icmLut_allocate function in International Color Consortium (ICC) Format library (iccl
phpKF CMS 3.00 Beta allows unauthenticated PHP file upload by disguising it as a PNG, then renaming it for execution. Po
Deserialization of Untrusted Data in the Sitecore.Security.AntiCSRF (aka anti CSRF) module in Sitecore CMS 7.0 to 7.2 an
Deserialization of Untrusted Data in the anti CSRF module in Sitecore through 9.1 allows an authenticated attacker to ex
Unauthenticated file disclosure in LavaLite CMS through 10.1.2 allows remote attackers to download private stored files
Authenticated remote code execution in Craft CMS versions 5.5.0 through 5.9.13 allows admin users to execute arbitrary P
SQL injection vulnerability in hava_post.php in Havalite CMS 1.1.0 and earlier allows remote attackers to execute arbitr
Unrestricted file upload vulnerability in hava_upload.php in Havalite CMS 1.1.0 and earlier allows remote attackers to e
Cross-site request forgery (CSRF) vulnerability in Ilch CMS allows remote attackers to hijack the authentication of admi
Multiple cross-site scripting (XSS) vulnerabilities in Havalite 1.0.4 and earlier allow remote attackers to inject arbit
A security vulnerability in juzaweb CMS (CVSS 6.3). Risk factors: public PoC available.
EUVD-2026-97609
GHSA-c72m-w87q-gvqm
NVD
CVE.org
EPSS
Exploit-DB