Executive brief
Fission, an open-source serverless framework for Kubernetes, was found to automatically share sensitive security credentials with user-provided code during the build process. An attacker with the ability to create or update environments could use these credentials to access all secrets and configuration data within the builder's workspace. This could lead to the exposure of sensitive information such as API keys, passwords, and internal configuration details.
Technical details
Fission builder pods were created using the 'fission-builder' ServiceAccount without explicitly disabling the 'AutomountServiceAccountToken' setting. Because users can control the builder container image and podspec via Environment CRDs, any code executed within the builder container inherits the 'fission-builder' identity. This ServiceAccount possesses namespace-wide 'get' permissions for secrets and configmaps. An attacker with 'create' or 'update' permissions on Environment CRDs can exploit this to read all sensitive data in the builder namespace. The issue was addressed in version 1.24.0 by disabling token automounting and using projected volumes for the fetcher sidecar only.
Affected products
- fission fission <= 1.23.0
Timeline
- 2026-05-26: disclosed: Initial report to Fission
- 2026-06-10: advisory: NVD publication date
- 2026-06-30: patched: GitHub Advisory published and fix confirmed in v1.24.0