What’s Vulnerable › Vulnerabilities
CVE-2026-85387: Concrete CMS before 9.5.4 allows a deactivated user to retain OAuth-authenticated REST API access
- Severity: high (CVSS 7.1 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.3% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-09-16 · updated 2026-09-21
- Weakness: CWE-613
Description
Concrete CMS before 9.5.4 re-authorized OAuth REST API requests from the bearer token alone and did not re-check the state of the account the token had been issued to. The resource server's authorization validator confirmed only that a token existed, had not expired, and had not been explicitly revoked, and deactivating a user did not revoke that user's outstanding tokens. As a result, a deactivated user retained full access to /ccm/api/1.0/* for the remaining lifetime of any token already issued to them. The same gap applied to accounts that had been deleted or locked pending a forced password reset. The Concrete CMS security team gave this vulnerability a CVSS v4.0 score of 2.0 with vector CVSS:4.0/AV:N/AC:H/AT:P/PR:L/UI:A/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N. Thanks Myq Larson for reporting.
Affected products
- Concrete CMS: before 9.5.4 — fixed in 9.5.4
How to fix
Upgrade to a fixed version: Concrete CMS 9.5.4. Check the vendor advisory for mitigations.
References
Get alerted when CVE-2026-85387 or the next vulnerability affects your stack