CVE-2026-41050: Fleet: Helm impersonation bypass of `RESTClientGetter` retains `cluster-admin` during template rendering
Fleet’s Helm deployer did not fully apply ServiceAccount impersonation in two code paths, allowing a tenant with git push access to a Fleet-monitored repository to read secrets from any namespace on every downstream cluster targeted by their GitRepo.
Helm lookup bypass: The Helm template engine ran Kubernetes API queries with the fleet-agent’s cluster-admin credentials instead of the impersonated ServiceAccount. A chart template could therefore access resources beyond the tenant’s RBAC scope.
valuesFrom bypass: Secret and ConfigMap references in fleet.yaml helm.valuesFrom were read using the fleet-agent’s cluster-admin client. A tenant could reference resources in namespaces the impersonated ServiceAccount has no access to.
Both issues break Fleet’s multi-tenant impersonation boundary. The leaked credentials may belong to external services, making the full impact non-deterministic.
Single-tenant deployments where all users are trusted are not affected.
Important:
- For the exposure of additional credentials, the final impact severity for confidentiality, integrity and availability is dependent on the permissions the leaked credentials have on their services.
- It is recommended to review for potentially leaked credentials in this scenario and to change them if deemed necessary.
Please consult the associated MITRE ATT&CK - Technique - Account Access Removal for further information about this category of attack.
References
Code Behaviors & Features
Detect and mitigate CVE-2026-41050 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →