CVE-2026-41053 is a high-severity (CVSS 8.8) CWE-303 vulnerability in github.com/rancher/rancher. A fix is available for github.com/rancher/rancher — see the affected versions and patch details below.
Over-inclusive team membership expansion in GitHub App authentication provider for Rancher
Exploitation Status
No confirmed exploitation observed yet
- A successful exploit gives an attacker total control of the affected component, not partial access.
- CISA’s own triage has not observed active exploitation or public proof-of-concept code for this CVE as of its last assessment.
Exploitation and automatability from CISA’s SSVC triage for CVE-2026-41053.
EPSS Exploitation Probability
Probability of exploitation in the next 30 days, from FIRST.org EPSS.
How urgent is this, really
CVE-2026-41053 by exploitation likelihood (EPSS) against impact (CVSS). Outside the shaded patch-first corner.
Where this sits among everything scored
Of 380,066 CVEs with a current EPSS score, this one falls in the < 10% band (highlighted). Counts from FIRST.org, log-scaled.
Real-World Exposure
github.com/rancher/rancher🐹github.com/rancher/rancher🐹github.com/rancher/rancherReal-time download stats are indexed for npm and PyPI packages. This vulnerability affects Go packages — download data is not available via public APIs for these ecosystems.
Description
Impact
A vulnerability has been identified within Rancher Manager in the GitHub App authentication provider. When evaluating permissions, the provider incorrectly expands user team memberships to include all teams within the associated GitHub organization, rather than restricting access to the specific teams to which the user actually belongs.
Specifically, when a user authenticates via the GitHub App provider, Rancher's team membership evaluation logic incorrectly handles cached data. Instead of checking the user-specific list, the evaluation logic iterates over all teams defined within the entire GitHub organization. The authentication provider should consult the correctly cached, per-user membership list to assign the user's specific group permissions. Consequently, any authenticated user who belongs to at least one team in a GitHub organization is mistakenly granted group principals for every team within that entire organization during authentication and authorization checks.
This issue allows a malicious user who is a member of a low-privilege team within a GitHub organization to gain unauthorized access to or permissions for any other team in that organization. If those other teams are bound to Rancher login allowlists or RBAC roles (cluster-level, project-level, or global), the attacker can pass access checks that should otherwise fail, inheriting permissions they were never granted.
Exploitation of this vulnerability requires the following conditions to be met:
- The GitHub App authentication provider must be enabled and configured for the target GitHub organization.
- The attacker must possess a valid GitHub account with membership in at least one team within that target organization.
- A separate team within the same GitHub organization must be explicitly mapped to Rancher RBAC roles or specified within Rancher's login allowlist (
allowedPrincipalIds).
Please consult the associated MITRE ATT&CK - Technique - Valid Accounts for further information about this category of attack.
Patches
This fix corrects the team listing logic to iterate only the teams stored in the per-user membership cache and includes a one-time startup migration that marks all affected User resources for refresh, forcing Rancher to rebuild group principals using the now-corrected logic.
Patched versions of Rancher include releases v2.14.2 and v2.13.6.
Workarounds
If upgrading to a patched version immediately is not feasible, users are encouraged to consider these temporary mitigations:
- Disable GitHub App authentication provider and switch to an alternative authentication provider (GitHub OAuth).
- Remove or restrict team-based
group principalsfrom allowed principalIds. - Audit and temporarily remove RBAC bindings (
GlobalRoleBindings,ClusterRoleTemplateBindings,ProjectRoleTemplateBindings) that reference GitHub App teamprincipalsuntil the patch is applied. - Disable provider refresh and clean up inflated group membership for users (manually or by writing a script).
These workarounds reduce the attack surface but do not eliminate the vulnerability. Existing user sessions and cached principals remain inflated until a provider refresh occurs. Upgrading to a patched version is strongly recommended.
References
If you have any questions or comments about this advisory:
- Reach out to the SUSE Rancher Security team for security related inquiries.
- Open an issue in the Rancher repository.
- Verify with our support matrix and product support lifecycle.
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| 🐹Go | github.com/rancher/rancher | ≥ 2.14.0&&< 2.14.2 | 2.14.2go get github.com/rancher/rancher@v2.14.2 |
| 🐹Go | github.com/rancher/rancher | ≥ 2.13.0&&< 2.13.6 | 2.13.6go get github.com/rancher/rancher@v2.13.6 |
| 🐹Go | github.com/rancher/rancher | all versions | 0.0.0-20260519172014-d0c047bbc6d2go get github.com/rancher/rancher@v0.0.0-20260519172014-d0c047bbc6d2 |
Affected Products
ranchersuseDetection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for github.com/rancher/rancher, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
Fix
Update github.com/rancher/rancher to 2.14.2 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms CVE-2026-41053 is resolved across your whole dependency graph.
Workarounds
If you can't upgrade right away: gate or disable the affected feature, validate untrusted input at the boundary, and avoid passing attacker-controlled data into the vulnerable path. O3's runtime protection blocks exploitation in production as an interim safeguard until the upgrade lands.
Frequently Asked Questions
Is CVE-2026-41053 in your dependencies?
Find it across Go, including transitive dependencies.