CVE-2026-8428 CSRF token is not validated in the core CMS update controller for Concrete CMS 9.5.0 and below
Attackers can force CMS updates to malicious versions via CSRF if update conditions are met, leading to code execution.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- A user has to click or open something
- Fix
- Available
What is CVE-2026-8428?
CVE-2026-8428 is a high-severity vulnerability in Concretecms Concrete Cms, published on 21 May 2026. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.
Official description
Concrete CMS 9.5.0 and below emits a CSRF token in the local_available_update.php view ($token->output('do_update')) but the corresponding do_update() method in concrete/controllers/single_page/dashboard/system/update/update.php never calls $this->token->validate('do_update'). The form is rendered as a POST form, meaning the token reaches the browser, but because the controller discards it without verification, an attacker can craft a cross-site POST that triggers a core CMS update to an attacker-specified version string. In order to be vulnerable, theictim must be passing canUpgrade()anda valid update version must be present under DIR_CORE_UPDATES. The Concrete CMS security team gave this vulnerability a CVSS v.4.0 score of 7.5 with vector CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N. Thanks https://github.com/maru1009 for reporting.
Which versions are affected by CVE-2026-8428?
2 open source packages ship an affected version, including concrete5/concrete5. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
concrete5/concrete5 Packagist | All versions | 9.5.1 |
concrete5/concrete5 Packagist | All versions | 9.5.1 |
Products include Concretecms Concrete Cms.
How do I fix CVE-2026-8428?
Upgrade concrete5/concrete5 to 9.5.1 or later.
Is CVE-2026-8428 being exploited?
There is no known exploitation of CVE-2026-8428 in the wild and no public exploit code.
Other vulnerabilities in Concretecms Concrete Cms
- CVE-2023-48648 Concrete CMS allows unauthorized access because directories can be created with insecure permissions
- CVE-2022-21829 Code injection in concrete CMS
- CVE-2021-22958 Server-Side Request Forgery vulnerability in concrete5
- CVE-2021-40098 Path traversal in n/a
- CVE-2026-8134 Concrete CMS Vulnerable to Relative Path Traversal
Sources
Also known as GHSA-prxr-vjgc-2cq9.