Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconAuthenticate as block-editing admin
-
DeliverySend crafted REST API request with JSON `_fromCIF:true`
-
ExploitBypass strict deserialization guard
-
InstallStore serialized gadget in filterFields column
-
C2Victim admin views or edits block
-
Executeunserialize() instantiates gadget chain
-
ImpactArbitrary PHP execution and server takeover
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A08:2025 - Software or Data Integrity Failures
ASVS 5.0
V1 - Encoding and Sanitization Safe deserialization, type allowlists
MITRE ATT&CK
2 techniques across 2 tactics: Execution, Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires an authenticated Concrete CMS administrator account with permission to add or modify blocks in an area, reachability of the REST API endpoint that routes to the ExpressEntryList block controller, and a second administrator who subsequently views or edits the malicious block to trigger the |
| Impact | The CVSS v4.0 score of 8.9 reflects the severe technical impact (VC/VI/VA all High, plus subsequent-system High across the board) tempered by meaningful exploitation barriers: AC:H (high attack complexity), AT:P (present attack requirements such as a second admin triggering deserialization), and PR:H (the attacker must already hold administrator privileges with block-creation rights). There is no EPSS data, no CISA KEV listing, and no SSVC decision provided, and no public exploit identified at time of analysis - so this is not a mass-exploitation candidate. Real-world risk is concentrated in multi-tenant or delegated-admin deployments where a lower-trust admin role could pivot to host compromise; in single-admin installations the practical risk is lower because the attacker would already be at the highest application tier. The PR:H prerequisite and the requirement that another admin later view/edit the malicious block are concrete limiters that defenders should weight against the raw 8.9 score. |
| Exploit ScenarioDerived | A rogue or compromised low-trust administrator on a multi-admin Concrete CMS site issues a crafted REST API request to create or update an ExpressEntryList block, embedding |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – May 21, 2026
Remote code execution in Concrete CMS versions 5.0 through 9.5.0 allows a high-privileged administrator to bypass the platform's _fromCIF deserialization guard by submitting malicious payloads through the REST API instead of standard form POST requests. The flaw resides in the ExpressEntryList block controller (CWE-502) and stores a serialized PHP gadget in the filterFields database column, which is unmarshalled when another administrator subsequently views or edits the block, leading to full server takeover. No public exploit identified at time of analysis, and the issue is not present in CISA KEV.
RemediationAI
Upgrade to Concrete CMS 9.5.1 or later, which is the vendor-released patch referenced in the 9.5.1 release notes at https://documentation.concretecms.org/9-x/developers/introduction/version-history/951-release-notes. Until the upgrade can be applied, restrict the administrator role so that only fully trusted personnel hold block-management privileges on Express-related areas, audit existing ExpressEntryList blocks for unexpected serialized content in the filterFields column, and block external network access to the REST API endpoints used to add or modify blocks (this will break programmatic content automation that relies on the REST surface, so coordinate with integration owners). Where feasible, place the admin interface behind an IP allowlist or VPN to reduce exposure of the REST API to additional administrators on untrusted networks.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in composer, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Concrete CMS is an open-source PHP-based content management system. The vulnerability lives in the ExpressEntryList block controller, which historically distinguishes between trusted internal flows and untrusted form POST requests via a _fromCIF === true check before unserializing block configuration data. When the same controller is reached through the REST API, request bodies are parsed with json_decode() rather than PHP's form parser, so the JSON literal true is decoded as a strict PHP boolean and satisfies the strict identity comparison - effectively neutralizing the protection. The attacker-controlled payload is written to the filterFields column and later passed to PHP unserialize(), the canonical CWE-502 sink, allowing arbitrary object instantiation and gadget-chain-driven code execution. Affected CPE is cpe:2.3:a:concrete_cms:concrete_cms:* for all versions at or below 9.5.0.
Know when Concrete 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:H/AT:P/PR:H/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H
Primary rating from Vendor (ConcreteCMS) · only source for this CVE.
CVSS VectorVendor: ConcreteCMS
DescriptionCVE.org
Concrete CMS 9.5.0 and below is vulnerable to Remote Code Execution due to insecure deserialization occurring in the ExpressEntryList block controller. An rogue administrator with privileges to add blocks to an area can bypass the intended protection mechanism (_fromCIF === true), which normally restricts malicious inputs over form POST requests, by leveraging the REST API functionality. Because the REST API parses requests using json_decode(), the string "true" is evaluated as a strict PHP Boolean(true). This bypass allows the attacker to inject a malicious serialized payload into the block's filterFields database column. The payload will subsequently be executed when the block's data is viewed or edited by an administrator leading to complete server takeover (RCE).The Concrete CMS security team gave this vulnerability a CVSS v.4.0 score of 8.9 with a vector of CVSS:4.0/AV:N/AC:H/AT:P/PR:H/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H. Thanks Nguyễn Văn Thiện https://github.com/Thien225409 for reporting
Executive ViewAI
Concrete CMS versions 5.0 through 9.5.0 contain a remote code execution vulnerability (CVSS 8.9) that could lead to full server compromise when exploited through REST API submissions. The vulnerability requires administrative-level access to initiate but results in complete system control if successfully exploited. No vendor patch currently exists, creating immediate operational risk for affected deployments.
No vendor-released patch identified at time of analysis. Interim mitigations: (1) enforce strict administrative access controls with multi-factor authentication; (2) disable REST API endpoints if operationally feasible; (3) implement network segmentation isolating Concrete CMS from critical systems; (4) deploy Web Application Firewall rules to block deserialization payloads targeting ExpressEntryList block endpoints; (5) establish real-time monitoring and alerting on administrative account activity and suspicious API requests; (6) maintain recent backups isolated from production environment.
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
Insecure deserialization occurs when an application converts serialized data (a stream of bytes representing an object's state) back into a living object without proper validation.
Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.
More in Concrete Cms
View allUnauthenticated user enumeration in Concrete CMS 9.0.0 through 9.5.2 allows any anonymous visitor to dump the complete b
A bypass of adding remote files in Concrete CMS (previously concrete5) File Manager leads to remote code execution in Co
Concrete5 through 8.5.5 deserializes Untrusted Data. Rated high severity (CVSS 7.2), this vulnerability is remotely expl
Concrete5 up to and including 8.5.2 allows Unrestricted Upload of File with Dangerous Type such as a .php file via File
Concrete5 before 8.5.3 allows Unrestricted Upload of File with Dangerous Type such as a .phar file. Rated high severity
A Server Side Request Forgery (SSRF) vulnerability in tools/files/importers/remote.php in concrete5 8.2.0 can lead to at
Unauthenticated file usage disclosure in Concrete CMS 9.5.0 and below exposes internal page structure to any network-acc
concrete5 8.1.0 places incorrect trust in the HTTP Host header during caching, if the administrator did not define a "ca
Concrete CMS versions below 9.4.8 contain a cross-site request forgery vulnerability in the Anti-Spam Allowlist Group Co
concrete5 8.1.0 has CSRF in Thumbnail Editor in the File Manager, which allows remote attackers to disable the entire in
Unauthenticated information disclosure in Concrete CMS 9.5.0 and earlier allows remote attackers to enumerate all conver
Unauthenticated information disclosure in Concrete CMS 9.5.0 and below allows any network-accessible attacker to enumera
EUVD-2026-31336
GHSA-pv2v-6w2v-97x6
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB