Concrete CMS 9.5.0 and below is vulnerable to IDOR in AddMessage/UpdateMessage via attachments[] parameter which can lead to file permission bypass. The `AddMessage` and `UpdateMessage` conversation controllers accept user-supplied file attachment IDs and load files directly via `$em->find(File::class, $attachmentID)` without checking per-file permissions (`canViewFile()`). A user who can post in any conversation can reference any file in the CMS file manager by its sequential ID, effectively bypassing the file permission system. The Concrete CMS security team gave this vulnerability a CVSS v.4.0 score of 2.3 with a vector CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N. Thanks Tristan Mandani for reporting. if a site truly has private files, the owner should set up a private storage location https://documentation.concretecms.org/user-guide/editors-reference/dashboard/system-and-maintenance/files/file-storage-locations outside of the webroot so that permissions can be checked on view as well. That way, even if a authorized user attaches a file, or otherwise links to it, unauthorized users won't be able to view the file.
References
| Link | Resource |
|---|---|
| https://documentation.concretecms.org/9-x/developers/introduction/version-history/951-release-notes | Release Notes |
Configurations
History
22 May 2026, 19:19
| Type | Values Removed | Values Added |
|---|---|---|
| CVSS |
v2 : v3 : |
v2 : unknown
v3 : 4.3 |
| CPE | cpe:2.3:a:concretecms:concrete_cms:*:*:*:*:*:*:*:* | |
| First Time |
Concretecms concrete Cms
Concretecms |
|
| References | () https://documentation.concretecms.org/9-x/developers/introduction/version-history/951-release-notes - Release Notes |
21 May 2026, 22:16
| Type | Values Removed | Values Added |
|---|---|---|
| New CVE |
Information
Published : 2026-05-21 22:16
Updated : 2026-05-22 19:19
NVD link : CVE-2026-7886
Mitre link : CVE-2026-7886
CVE.ORG link : CVE-2026-7886
JSON object : View
Products Affected
concretecms
- concrete_cms
CWE
CWE-639
Authorization Bypass Through User-Controlled Key
