CVE-2026-54256 in Winter CMSinfo

Summary

by MITRE • 08/26/2026

Winter CMS is a content management system built on the Laravel PHP framework. In versions up to and including 1.2.12, the backend FileUpload form widget trusted an attacker-controlled file_id POST parameter when resolving the attachment it operates on, allowing an authenticated backend user to read and modify attachment records belonging to other users or records. The widget's getFileRecord() lookup resolved the posted id against the global system_files table without verifying that the file belonged to the widget's own relation, parent record, or deferred-binding session. Because all attachments share a single File model and table and attachment ids are sequential integers that are easily enumerated, a user reaching any form with a fileupload field, including the built-in My Account avatar field that requires no specific permission, could target arbitrary attachments to modify their title and description via onSaveAttachmentConfig and change their sort order via onSortAttachments, which passed posted ids straight to an unscoped update. CSRF tokens remain enforced, so exploitation requires a valid authenticated backend session with any level of access. This issue is fixed in version 1.2.13.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

Analysis

by VulDB Data Team • 08/26/2026

Winter CMS versions up to and including 1.2.12 contain a critical Insecure Direct Object Reference vulnerability within the backend FileUpload form widget, which allows authenticated users to perform unauthorized actions on file attachments belonging to other system users. This flaw stems from the application's failure to enforce proper access controls when resolving attachment records based on user-supplied input. Specifically, the getFileRecord method relies exclusively on a POST parameter named file_id to locate and operate upon files within the global system_files table. The implementation lacks any verification logic to ensure that the targeted file ID is associated with the current widget's relation, its parent record, or the active deferred-binding session of the authenticated user. Consequently, the application treats all attachment identifiers as globally accessible resources rather than restricting access to objects owned by or explicitly linked to the requesting entity.

The operational impact of this vulnerability is significant due to the architectural design of Winter CMS attachments, which utilize a single File model and database table with sequential integer IDs that are easily enumerable. An attacker who has obtained valid authentication credentials for any backend user account can exploit this flaw regardless of their specific permission level or role within the system. Even users with minimal privileges, such as those accessing only the My Account avatar field, can leverage forms containing a fileupload widget to target arbitrary attachment records across the entire platform. By manipulating the file_id parameter in HTTP POST requests directed at endpoints like onSaveAttachmentConfig and onSortAttachments, an attacker can modify metadata fields including titles and descriptions for files they do not own. Furthermore, attackers can alter the sort order of attachments through unscoped database updates that bypass standard ownership checks, potentially disrupting content organization or causing denial of service conditions by misordering critical assets.

From a technical perspective, this vulnerability aligns with CWE-639, which describes authorization issues arising from direct object references where access control is not properly enforced on the underlying data model. The exploitation vector also corresponds to ATT&CK technique T1078, Valid Accounts, as it requires legitimate authentication but exploits weak post-authentication authorization controls rather than breaking into an account through credential theft or injection attacks. Although Winter CMS enforces Cross-Site Request Forgery tokens for these operations, preventing unauthenticated remote code execution or blind exploitation from external sites, the requirement remains that the attacker must possess a valid session cookie and be able to craft malicious requests while authenticated. This limitation does not mitigate the severity of the data integrity compromise but rather defines the scope of potential attackers as those with existing backend access rights.

To remediate this vulnerability, administrators should immediately upgrade Winter CMS to version 1.2.13 or later, where the FileUpload widget has been patched to enforce strict ownership verification before processing any file operations. Developers integrating custom widgets must ensure that all database queries involving user-generated identifiers include explicit scoping clauses that tie records to the current user's ID or related entity relationships. Implementing robust authorization checks at the model level using Laravel policies is recommended to prevent similar issues across other modules. Additionally, auditing existing code for any direct usage of POST parameters as primary keys without secondary validation against session data represents a best practice for maintaining secure application architecture in content management systems built on PHP frameworks.

Responsible

GitHub M

Reservation

06/12/2026

Disclosure

08/26/2026

Moderation

accepted

CPE

ready

EPSS

0.00000

KEV

no

Activities

very low

Sources

Want to stay up to date on a daily basis?

Enable the mail alert feature now!