Skip to main content

Craft CMS EUVDEUVD-2026-81291

| CVE-2026-92591 HIGH
Not Failing Securely ('Failing Open') (CWE-636)
2026-09-16 disclosure@vulncheck.com GHSA-fq6c-26cc-63cr
8.2
CVSS 4.0 · Vendor: vulncheck
View

Attack ChainAIDerived

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

  1. Access
    Pre-fetch guest session cookie + CSRF token
  2. Delivery
    Wait for independent MySQL outage
  3. Exploit
    Craft fails open, exposes installer action
  4. Execution
    Submit install/validate-site with ${CRAFT_SECURITY_KEY}
  5. Persist
    App::env() expands and returns secret
  6. Impact
    Exfiltrate DB creds / API keys / security key

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A10:2025 - Mishandling of Exceptional Conditions
ASVS 5.0
V16 - Security Logging and Error Handling Fail-secure design
Exploitation Conditions

Requires ALL of: (1) the target runs an affected Craft CMS 5.0.0-5.10.12 installation; (2) an independently-occurring database (MySQL) outage while PHP remains available - the vulnerability provides no way to induce this; (3) the attacker obtained a valid guest session cookie and matching CSRF token BEFORE the outage, and that session remains valid during it; (4) the attacker knows or guesses a predictable environment variable/constant name (e.g. Craft's conventional CRAFT_SECURITY_KEY). These stacked timing prerequisites - an outage the attacker cannot trigger plus a pre-positioned valid session - are the primary factors limiting real-world exploitation despite the network/unauthenticated vector.

Impact

This is a genuine but conditionally-gated confidentiality flaw, not a widespread-exploitation priority. The CVSS 4.0 vector (8.2, AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N) reflects the key tension: it is network-reachable and unauthenticated (PR:N), but carries AT:P (attack requirements) because exploitation depends on two conditions the attacker cannot create - an independently-occurring MySQL outage AND a still-valid guest session cookie plus matching CSRF token obtained BEFORE the outage. That AT:P is doing heavy lifting; in CVSS 3.1 terms this is better modeled as AC:H, giving a lower ~5.9 score. Impact is confidentiality-only (VC:H, VI:N/VA:N) - leaked secrets (security key, DB creds, API keys) could enable follow-on compromise, but this CVE itself grants only disclosure. No EPSS score, no CISA KEV listing, and no public POC were provided, so there is no signal of active or imminent exploitation. CWE-636 (fail-open / failure to fail securely) correctly captures the root cause: treating a DB connection error as 'not installed.' Net: a real bug worth patching, but the compound timing prerequisites make opportunistic mass exploitation unlikely - it favors a prepared, targeted attacker positioned before an outage.

Exploit ScenarioDerived

An attacker first visits the target Craft CMS site under normal operation to obtain a valid guest session cookie and CSRF token. When the site's MySQL backend later suffers an independent outage (while PHP stays up), Craft mistakenly believes it is uninstalled and re-exposes the anonymous install/validate-site action; the attacker replays their still-valid session to submit a predictable variable name such as CRAFT_SECURITY_KEY, which is expanded via App::env() and returned to them. No public exploit code has been identified at time of analysis.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Sep 16, 2026

Information disclosure in Craft CMS 5.0.0 through 5.10.12 can expose environment variables, secrets, database credentials, and other sensitive values when an independently occurring MySQL outage causes the application to treat the site as not installed. An unauthenticated attacker per the CVSS PR:N vector can reach anonymous installer actions such as install/validate-site if they previously obtained a valid guest session cookie and matching CSRF token and that session remains valid during the outage, then submit a predictable variable name and receive its expanded value. The flaw is gated by multiple stacked prerequisites, including an outage the attacker cannot induce and a pre-positioned valid session, and no public exploit identified at time of analysis; Craft CMS 5.10.13 contains the vendor fix.

RemediationAI

Vendor-released patch: 5.10.13; upgrade to Craft CMS 5.10.13 or later, per the vendor advisory GHSA-hfjh-gw6x-7pv5 (https://github.com/craftcms/cms/security/advisories/GHSA-hfjh-gw6x-7pv5) and the VulnCheck advisory (https://www.vulncheck.com/advisories/craft-cms-5.0.0-before-5.10.13-environment-secret-exposure-via-installer). If immediate patching is not possible, block or reject requests to Craft installer actions, especially install/validate-site, at the reverse proxy, WAF, or web server; this trades off legitimate installation or reconfiguration until the block is removed. Because the attack requires a pre-obtained guest session and matching CSRF token, shorten guest session lifetimes and rotate CSRF tokens frequently, accepting more frequent user re-authentication, and invalidate sessions during or after database outages. If exploitation is suspected, rotate the Craft security key (CRAFT_SECURITY_KEY), database credentials, and any API keys or environment secrets that could have been read; note that rotating the security key can invalidate existing sessions and may affect encrypted values.

Affected VersionsENISA

CMS 5.0.0 <5.10.13

Affected Packages

euvd cms fix: 5.10.13

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

Craft CMS is a PHP-based content management system that relies on a configured MySQL database. According to the advisory, a database connection failure is incorrectly treated as evidence that Craft is not installed, an instance of CWE-636 (Not Failing Securely, or failing open), which makes anonymous installer actions reachable even on a production site when PHP remains available but the configured MySQL endpoint does not. The affected action install/validate-site accepts a site name, serializes it through Site::getName(), and expands ${NAME} expressions using App::env(); this allows resolution of process environment variables, $_SERVER entries, PHP constants, and Craft secrets such as the conventional CRAFT_SECURITY_KEY, database credentials, or API keys. The provided CVSS 4.0 vector is AV:N/AC:L/AT:P/PR:N/UI:N with high confidentiality impact and no integrity or availability impact, while the independent assessment rates it as CVSS 3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N, reflecting that the attack complexity in practice is elevated by the required database outage and pre-existing guest session with CSRF token. The issue is tagged PHP and CSRF; no CPE strings were supplied, and no KEV or public exploit data is present.

Know when Craft 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

Vendor (vulncheck) PRIMARY 8.2 HIGH
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
vuln.today AI 5.9 MEDIUM

Network and unauthenticated (AV:N/PR:N), but AC:H because it needs an attacker-uninducible DB outage plus a pre-obtained valid session; confidentiality-only (C:H, I:N/A:N).

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

Primary rating from Vendor (vulncheck).

CVSS VectorVendor: vulncheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Sep 16, 2026 - 23:19 EUVD
CVE Published
Sep 16, 2026 - 22:18 cve.org
HIGH 8.2

DescriptionCVE.org

Craft CMS 5.0.0 through 5.10.12 treats a database connection failure as meaning that Craft is not installed, which makes anonymous installer actions - including install/validate-site - reachable on an installed production site whenever PHP remains available but the configured MySQL endpoint does not. The action accepts a site name, serializes it through Site::getName(), and expands ${NAME} expressions using App::env(). An unauthenticated attacker who obtained a guest session cookie and matching CSRF token before the outage and whose session remains valid during it can submit a predictable variable name (for example Craft's conventional CRAFT_SECURITY_KEY) and receive its value, disclosing Craft secrets, process environment variables, $_SERVER entries, or PHP constants such as the security key, database credentials, or API keys. The issue requires an independently occurring database outage; the vulnerability itself provides no way to induce it. Fixed in 5.10.13.

Technical POC Analysis

Bug class: CWE-636, Not Failing Securely ("Failing Open").

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

Craft CMS releases 5.0.0 through 5.10.12 can expose environment variables, secrets, and database credentials to unauthenticated users, so any organization running these versions on an internet-facing site carries credential-exposure risk that extends beyond the CMS itself. The attack is not trivially reachable - it requires the attacker to already hold a valid guest session and CSRF token and to be present during a MySQL outage they cannot cause - and no public exploit identified at time of analysis, so the near-term likelihood is limited even though the consequence of leaked secrets is significant. Leadership should treat this as a patch-and-rotate exercise: upgrade impacted instances and assume any exposed credentials need replacement.

Business Impact: Medium
Compensating Controls

Apply vendor patch (Craft CMS 5.10.13).

Threat Intelligence Overview

EPSS Score
0.2%
Top 85% exploitable
Prevalence
Medium
popular commercial PHP CMS, common but not ubiquitous deployment footprint
Data Quality
6 sources
Confidence: High

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 HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
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
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
Medium
Technical Impact
Partial

Priority Score

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

Attack Technique

Cross-Site Request Forgery exploits the automatic credential inclusion behavior of web browsers.

CVE-2025-32432 CRITICAL POC
10.0 Apr 25

Craft CMS versions 3.x through 5.x contain a critical remote code execution vulnerability (CVSS 10.0) that allows unauth

CVE-2025-35939 MEDIUM
6.9 May 07

Craft CMS stores arbitrary content provided by unauthenticated users in session files. Rated medium severity (CVSS 6.9),

CVE-2023-41892 CRITICAL POC
9.8 Sep 13

Craft CMS is a platform for creating digital experiences. Rated critical severity (CVSS 9.8), this vulnerability is remo

CVE-2024-56145 CRITICAL POC
9.3 Dec 18

Craft is a flexible, user-friendly CMS for creating custom digital experiences on the web and beyond. Rated critical sev

CVE-2024-37843 CRITICAL POC
9.8 Jun 25

Craft CMS up to v3.7.31 was discovered to contain a SQL injection vulnerability via the GraphQL API endpoint. Rated crit

CVE-2020-9757 CRITICAL POC
9.8 Mar 04

The SEOmatic component before 3.3.0 for Craft CMS allows Server-Side Template Injection that leads to RCE via malformed

CVE-2026-28697 CRITICAL POC
9.1 Mar 04

RCE in Craft CMS before 4.17.0-beta.1/5.9.0-beta.1 via template injection for authenticated admins. PoC and patch availa

CVE-2025-68455 HIGH POC
8.6 Jan 05

Authenticated remote code execution in Craft CMS versions 5.0.0-RC1 through 5.8.20 and 4.0.0-RC1 through 4.16.16 lets an

CVE-2026-25495 HIGH POC
8.8 Feb 09

SQL injection in Craft CMS 4.0.0-RC1 through 4.16.17 and 5.0.0-RC1 through 5.8.21 allows authenticated Control Panel use

CVE-2023-30130 HIGH POC
8.8 May 12

An issue found in CraftCMS v.3.8.1 allows a remote attacker to execute arbitrary code via a crafted script to the Sectio

CVE-2022-29933 HIGH POC
8.8 May 09

Craft CMS through 3.7.36 allows a remote unauthenticated attacker, who knows at least one valid username, to reset the a

CVE-2018-3814 HIGH POC
8.8 Jan 01

Craft CMS 2.6.3000 allows remote attackers to execute arbitrary PHP code by using the "Assets->Upload files" screen and

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