DOM-based XSS in Craft CMS login 2FA verification via returnUrl
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Active
- Attack complexity
- Low
- Attack requirements
- Present
- Impact type
- Cross-site scripting
- Confidentiality · integrity · availability
- None · None · None
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA. Impact type from CWE-79.
Summary
Craft CMS from 5.0.0 before 5.10.14 contains a DOM-based cross-site scripting flaw (CWE-79) in the control panel login and 2FA verification flow. A user-controlled returnUrl that accepts javascript: URLs is used in client-side navigation. An attacker can lure a 2FA-enabled user into opening a crafted /admin/login?verify=1 URL between password submission and TOTP verification, running JavaScript in the control panel with the victim's permissions.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
Description from the CNA
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.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
Remediation
Upgrade Craft CMS to version 5.10.14.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
- Fix · CNA cms (craftcms) Fixed in 5.10.14
Fixed in the same release
Records fixed by the same vendor advisory or release, as the CNA lists them.
- Release ·
craftcms cms 5.10.14
5 records Highest priority Priority MEDIUM 2 MEDIUM, 3 LOW
Other records, highest priority first
- TI-2026-71124 Craft CMS behavior injection enables remote code executionPriority MEDIUM 40
- TI-2026-71121 Twig sandbox bypass in Craft CMS allows code execution via has somePriority MEDIUM 40
- TI-2026-71120 Arbitrary file read in Craft CMS through Twig create() DOMDocumentPriority LOW 30
Timeline
- 2026-10-12 Threatist record created from CVE-2026-109307
- 2026-10-12 Alias added: GHSA-c72m-w87q-gvqm
- 2026-10-15 CISA SSVC decision points changed
References
More Craft CMS vulnerabilities
- TI-2025-23503 Craft CMS Allows Remote Code Execution KEVCVSS 3.1CRITICAL 10.0
- TI-2024-37138 RCE when PHP `register_argc_argv` config setting is enabled in craftcms/cms KEVCVSS 4.0CRITICAL 9.3
- TI-2025-16994 Potential RCE with a compromised security key in craft/cms KEVCVSS 3.1HIGH 8.1
- TI-2025-24595 Craft CMS stores user-provided content in session files KEVCVSS 4.0MEDIUM 6.9
- TI-2023-22284 Craft CMS Remote Code Execution vulnerability CVSS 3.1CRITICAL 10.0
- TI-2024-25171 Craft CMS up to v3.7.31 was discovered to contain a SQL injection vulnerability via the GraphQL API endpoint. CVSS 3.1CRITICAL 9.8
Sources
- CVE-2026-109307 · CVE Program
- CVE-2026-109307 · NVD
- FIRST EPSS
- GHSA-c72m-w87q-gvqm · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences