Loading...
Skip to main content

CVE-2026-35445 — Vulnerability in winter/wn-backend-module — CVE...

HIGH

Winter: Authenticated backend users can bypass Users controller permission checks

Published August 12, 2026Updated August 12, 2026Source: osv

Summary

### 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 `$publicActions` property, or - Degrades or removes the `$requiredPermissions` check 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: 1. In `modules/backend/classes/Controller.php`, validate the `_handler` POST field against the `on[A-Z][\w+]*` pattern before passing it to `runAjaxHandler()`. 2. In `modules/backend/controllers/Users.php`, remove the conditional that sets `$requiredPermissions` to `null` for the `myaccount` action.

Advisory Timeline

  • First published August 12, 2026 (61 days ago).
  • Last revised August 12, 2026 — 0 days after initial publication.

Remediation

Upgrade to the fixed version using your package manager.

Composer
Update winter/wn-backend-module to 1.2.13 or later
composer require "winter/wn-backend-module:^1.2.13"

After upgrading, run your dependency scanner again to confirm the vulnerability is resolved.

Affected Packages (1)

Affects 1 ecosystem: packagist (1).

PackageEcosystemAffectedFixed In
winter/wn-backend-module
packagist
v1.0.473, v1.0.474, v1.0.475, v1.1.10 (+22 more)1.2.13

Vulnerability Classification

Common Weakness Enumeration (CWE) identifiers for this vulnerability type.

  • CWE-285
    Improper AuthorizationMITRE
  • CWE-639
    Insecure Direct Object Reference (IDOR)MITRE

CVSS Score Breakdown

What the CVSS (Common Vulnerability Scoring System) 8.1 score means for each attack dimension.

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
—
Confidentiality
—
Integrity
—
Availability
—

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

Frequently Asked Questions

What is CVE-2026-35445?
Winter: Authenticated backend users can bypass Users controller permission checks This vulnerability has been assigned a severity rating of HIGH (CVSS score: 8.1/10).
How do I check if my project is affected by CVE-2026-35445?
CVE-2026-35445 affects winter/wn-backend-module. Use GeekWala's free vulnerability scanner to check your dependencies against CVE-2026-35445 and 200,000+ other known vulnerabilities.

Severity & Exploitability

CVSS Score
8.1

High exploitability or significant impact. Prioritize remediation within days.

Also Known As

GHSA-j5jq-cr68-v2xx

Related CVEs

Check if you're affected

Scan your dependencies to see if this vulnerability affects your projects.

Scan Your Dependencies