Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain any backend user account
-
DeliveryIdentify Users controller myaccount action with null permission gate
-
ExploitCraft POST request with _handler set to target method
-
ExecutionPostback dispatcher invokes privileged method without validation
-
PersistManipulate arbitrary backend user records
-
ImpactEscalate to administrator by resetting admin password
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization verification
MITRE ATT&CK
1 technique across 1 tactic: Defense Evasion 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 active, authenticated Winter CMS backend session-any permission level suffices, but the attacker must hold a valid CSRF token (enforced on all POST requests, meaning purely unauthenticated exploitation is not possible). The specific escalation path through the Users controller requires that controller to be configured with the default conditional |
| Impact | The provided CVSS 4.0 score of 7.1 (AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:L/VA:N/SC:H/SI:L/SA:N) reflects network-reachable exploitation by a low-privilege authenticated user, with a notable attack requirement (AT:P) acknowledging that the controller's conditional permission nullification must be in place-which it is by default in the Users controller. The high confidentiality impact (VC:H, SC:H) and scope change to subsequent systems are consistent with an attacker being able to reset arbitrary user passwords and thereby escalate to full admin access. The vendor's own advisory rates integrity impact as lower (VI:L, SI:L), but the ability to delete or unsuspend user accounts warrants reconsideration of that rating. There is no CISA KEV listing and no reported POC, making opportunistic mass exploitation unlikely; however, the low attack complexity and minimal access requirement (any backend account) make insider-threat and post-compromise lateral-privilege scenarios credible. EPSS data was not provided. Real-world priority is moderate-to-high for any Winter CMS deployment that exposes its backend panel to untrusted authenticated users or relies on its roles-and-permissions system for separation of duty. |
| Exploit ScenarioDerived | An attacker with any Winter CMS backend account-such as a low-privilege editor-crafts a POST request to a backend URL that loads the Users controller under the |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv2 – Aug 26, 2026
Insufficient input validation on the _handler POST field in Winter CMS's form postback mechanism allows any authenticated backend user to invoke arbitrary controller methods-including protected and private ones-bypassing role-based permission checks. The Users controller compounded this by conditionally nullifying its $requiredPermissions for the myaccount action, enabling low-privilege backend users to call administrative methods such as update_onDelete, update_onUnsuspendUser, and update_onManualPasswordReset against any backend user record. No public exploit code or CISA KEV listing has been identified at time of analysis; exploitation is limited to users with active, authenticated backend sessions (CSRF tokens remain enforced).
Earlier versions of this analysis (1)
Privilege escalation in Winter CMS backend allows any authenticated backend user-regardless of their assigned role or permissions-to invoke privileged controller methods including user deletion, restoration, unsuspension, and forced password resets by exploiting an unvalidated _handler POST field in the form postback mechanism. Versions up to and including 1.2.12 are affected across all major branches (1.0, 1.1, 1.2). No public exploit code or CISA KEV listing is identified at time of analysis, but the low skill bar for any logged-in backend user and direct impact on user account integrity make this an immediate patch priority for any deployment relying on role-based access control.
RemediationAI
Upgrade Winter CMS to v1.2.13, which is the vendor-confirmed fixed version available at https://github.com/wintercms/winter/releases/tag/v1.2.13; patches have been backported to the 1.0 and 1.1 branches as well. For installations that cannot upgrade immediately, two manual changes mitigate the vulnerability: first, in modules/backend/classes/Controller.php, add validation of the _handler POST field against the on[A-Z][\w+]* pattern before passing it to runAjaxHandler()-this closes the postback bypass at the framework level; second, in modules/backend/controllers/Users.php, remove the conditional block that sets $requiredPermissions to null for the myaccount action-this prevents the permission-nullification chain. Note that the manual workaround for the Users controller may break the My Account page for users without the backend.manage_users permission until the architectural fix (dedicated controller) from v1.2.13 is applied. The vendor advisory at https://github.com/wintercms/winter/security/advisories/GHSA-j5jq-cr68-v2xx contains additional detail on both changes.
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
Winter CMS (composer package winter/wn-backend-module, CWE-285: Improper Authorization) exposes two handler invocation paths: AJAX requests via the X_WINTER_REQUEST_HANDLER header, which enforce a regex pattern (on[A-Z][\w+]*), and form postbacks via the _handler POST field, which forwarded the value directly to the handler dispatcher without equivalent validation. This asymmetry let an attacker name any method-including prefixed, protected, or private ones-as the handler. The Users controller introduced a secondary flaw: its constructor set $requiredPermissions to null when the myaccount action was detected, removing the backend.manage_users permission gate and allowing any authenticated user to reach that controller context. Together, these two weaknesses chain into an authorization bypass on user management operations. The fix in v1.2.13 applies the same regex gate to postback handlers, relocates My Account to a dedicated controller, and adds model-level guards as defense-in-depth.
Know when PHP 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:L/AT:P/PR:L/UI:N/VC:H/VI:L/VA:N/SC:H/SI:L/SA:N
Network-reachable by any authenticated backend user (PR:L); scope changes because low-privilege user gains admin-level user management control (S:C); full confidentiality and integrity impact from password reset and user deletion capabilities; no availability impact described.
Primary rating from Vendor (https://github.com/wintercms/winter).
CVSS VectorVendor: https://github.com/wintercms/winter
Lifecycle Timeline
2DescriptionCVE.org
Impact
Affected versions of Winter CMS did not validate the handler name submitted through the form postback mechanism (_handler POST field) in the same way as AJAX requests (X_WINTER_REQUEST_HANDLER header). The AJAX path validates that handler names match the on[A-Z][\w+]* pattern, but the postback path passed the handler name directly to the handler dispatcher with no validation.
This allowed an authenticated backend user to call any method on a controller - including action-prefixed, protected, and private methods - by submitting a crafted POST request with a _handler field, as long as the controller either:
- Contains a publicly available action via the
$publicActionsproperty, or - Degrades or removes the
$requiredPermissionscheck in its constructor based on a condition
The backend's own Users controller was affected by the second scenario: it set $requiredPermissions to null for the myaccount action, allowing any authenticated backend user to access the controller without the backend.manage_users permission. Combined with the postback bypass, this allowed calling controller methods such as update_onDelete, update_onRestore, update_onUnsuspendUser, and update_onManualPasswordReset with attacker-controlled parameters.
Note that CSRF tokens are still verified on all POST requests, so the attacker must be logged into the backend with a valid session.
To actively exploit this security issue, an attacker would need access to the Backend with a user account with any level of access.
The Winter CMS maintainers strongly recommend that all Winter CMS sites that have any reliance on the roles & permissions system to update immediately. Security fixes have been backported to all major versions of Winter (1.0, 1.1, and 1.2).
Patches
The postback handler path now validates handler names using the same rules as the AJAX path. The My Account functionality has been moved to a dedicated controller that does not expose user management methods. Defence in depth has been applied at the model level to prevent unauthorized user record modifications regardless of the entry point.
This security issue has been fixed as of v1.2.13.
Workarounds
If users cannot upgrade, they may apply the following changes to their Winter CMS installation manually to resolve this issue:
- In
modules/backend/classes/Controller.php, validate the_handlerPOST field against theon[A-Z][\w+]*pattern before passing it torunAjaxHandler(). - In
modules/backend/controllers/Users.php, remove the conditional that sets$requiredPermissionstonullfor themyaccountaction.
Executive ViewAI
Winter CMS contains a privilege escalation vulnerability affecting form postback processing that allows authenticated backend users with limited permissions to invoke administrative functions (such as user suspension and password reset) against any backend account, bypassing intended role-based access controls. Organizations running Winter CMS with multiple backend user accounts face unauthorized account management operations by lower-privileged staff, creating risk of account lockout, credential compromise, and administrative takeover without requiring separate attack infrastructure or external authentication.
Apply vendor patch.
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
Cross-Site Request Forgery exploits the automatic credential inclusion behavior of web browsers.
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
In PHP versions 7.1.x below 7.1.33, 7.2.x below 7.2.24 and 7.3.x below 7.3.11 in certain configurations of FPM setup it
sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not
(1) boardData102.php, (2) boardData103.php, (3) boardDataJP.php, (4) boardDataNA.php, and (5) boardDataWW.php in Netgear
The '/common/download_agent_installer.php' script in the Quest KACE System Management Appliance 8.0.318 is accessible by
ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. Rated critical severity (C
Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au
Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP c
Palo Alto Networks PAN-OS management web interface contains an authentication bypass allowing unauthenticated attackers
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
The get_referers function in /opt/ws/bin/sblistpack in Sophos Web Appliance before 3.7.9.1 and 3.8 before 3.8.1.1 allows
The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
EUVD-2026-66631
GHSA-j5jq-cr68-v2xx
NVD
CVE.org
EPSS
Exploit-DB