Monitor vulnerabilities like this one.
Sign up free to get alerted when software you use is affected.
9.9
CVE-2026-50545: Fission on Kubernetes allows malicious code to run
CVE-2026-50545
GHSA-wmgg-3p4h-48x7
Summary
Fission, a Kubernetes serverless framework, had a bug that allowed attackers to inject malicious code into functions and applications. This has been fixed in version 1.24.0. Users should update to this version to prevent potential security risks.
What to do
- Update github.com fission to version 1.24.0.
Affected software
| Ecosystem | Vendor | Product | Affected versions |
|---|---|---|---|
| go | github.com | fission |
<= 1.23.0 Fix: upgrade to 1.24.0
|
Original title
Fission Environment CRD PodSpec Injection Leading to Node Escape and Cluster Takeover
Original description
### Summary
A stronger framing of the same root cause as GHSA-gx55-f84r-v3r7: the `Environment.spec.runtime.podSpec` / `spec.builder.podSpec` passthrough lacked validation, and `MergePodSpec` propagated dangerous fields into the generated pods.
### Details
Three independent flaws compounded:
1. **Validate gap.** `pkg/apis/core/v1/validation.go::Environment.Validate` checked only container naming conventions, never `hostPID`/`hostIPC`/`hostNetwork`/`hostPath`/`privileged`.
2. **UPDATE bypass.** The `pkg/webhook/environment.go` kubebuilder marker registered `verbs=create` only. A tenant could `kubectl apply` a clean Environment and then `kubectl patch` in the dangerous fields — the webhook was never called.
3. **Merge propagation.** `pkg/executor/util/merge.go::MergePodSpec` unconditionally forwarded `HostPID`, `HostIPC`, `HostNetwork`, `Volumes` (including hostPath), `SecurityContext`, and `ServiceAccountName` into the Deployments
generated by poolmgr / newdeploy / buildermgr.
A `kubectl apply` plus a follow-up `kubectl patch` caused poolmgr to schedule a privileged pod with a host-root mount within roughly 20 seconds. From that pod the cluster CA private key was readable, allowing the attacker to sign
arbitrary kubelet certificates and achieve full cluster takeover.
### Impact
`environments.fission.io` create/update RBAC is escalated to node escape and, via the readable cluster CA key, full cluster takeover.
### Fix
Fixed in [#3391](https://github.com/fission/fission/pull/3391) (with the companion buildermgr SA-token fix in [#3390](https://github.com/fission/fission/pull/3390)) and released in
[v1.24.0](https://github.com/fission/fission/releases/tag/v1.24.0). Each enumerated flaw is addressed:
1. **Validate** — `ValidatePodSpecSafety` is called from `Environment.Validate` for both `Runtime.PodSpec` and `Builder.PodSpec`.
2. **UPDATE bypass** — the webhook marker is extended to `verbs=create;update`; chart and envtest manifests are aligned.
3. **Merge propagation** — host namespaces, `ServiceAccountName`, and hostPath volumes are stripped at the merge layer; per-container `privileged`/`allowPrivilegeEscalation` and dangerous capabilities are sanitized.
See GHSA-gx55-f84r-v3r7 for the detailed fix — both advisories close to the same commit.
### Duplicate handling
This advisory and GHSA-gx55-f84r-v3r7 were reported separately but close to the same code fix. Both are published to acknowledge each reporter's contribution and to keep the public CVE record clear about the multi-layer nature of the
issue.
A stronger framing of the same root cause as GHSA-gx55-f84r-v3r7: the `Environment.spec.runtime.podSpec` / `spec.builder.podSpec` passthrough lacked validation, and `MergePodSpec` propagated dangerous fields into the generated pods.
### Details
Three independent flaws compounded:
1. **Validate gap.** `pkg/apis/core/v1/validation.go::Environment.Validate` checked only container naming conventions, never `hostPID`/`hostIPC`/`hostNetwork`/`hostPath`/`privileged`.
2. **UPDATE bypass.** The `pkg/webhook/environment.go` kubebuilder marker registered `verbs=create` only. A tenant could `kubectl apply` a clean Environment and then `kubectl patch` in the dangerous fields — the webhook was never called.
3. **Merge propagation.** `pkg/executor/util/merge.go::MergePodSpec` unconditionally forwarded `HostPID`, `HostIPC`, `HostNetwork`, `Volumes` (including hostPath), `SecurityContext`, and `ServiceAccountName` into the Deployments
generated by poolmgr / newdeploy / buildermgr.
A `kubectl apply` plus a follow-up `kubectl patch` caused poolmgr to schedule a privileged pod with a host-root mount within roughly 20 seconds. From that pod the cluster CA private key was readable, allowing the attacker to sign
arbitrary kubelet certificates and achieve full cluster takeover.
### Impact
`environments.fission.io` create/update RBAC is escalated to node escape and, via the readable cluster CA key, full cluster takeover.
### Fix
Fixed in [#3391](https://github.com/fission/fission/pull/3391) (with the companion buildermgr SA-token fix in [#3390](https://github.com/fission/fission/pull/3390)) and released in
[v1.24.0](https://github.com/fission/fission/releases/tag/v1.24.0). Each enumerated flaw is addressed:
1. **Validate** — `ValidatePodSpecSafety` is called from `Environment.Validate` for both `Runtime.PodSpec` and `Builder.PodSpec`.
2. **UPDATE bypass** — the webhook marker is extended to `verbs=create;update`; chart and envtest manifests are aligned.
3. **Merge propagation** — host namespaces, `ServiceAccountName`, and hostPath volumes are stripped at the merge layer; per-container `privileged`/`allowPrivilegeEscalation` and dangerous capabilities are sanitized.
See GHSA-gx55-f84r-v3r7 for the detailed fix — both advisories close to the same commit.
### Duplicate handling
This advisory and GHSA-gx55-f84r-v3r7 were reported separately but close to the same code fix. Both are published to acknowledge each reporter's contribution and to keep the public CVE record clear about the multi-layer nature of the
issue.
nvd CVSS3.1
9.9
Vulnerability type
CWE-269
Improper Privilege Management
CWE-284
Improper Access Control
CWE-693
Protection Mechanism Failure
- https://nvd.nist.gov/vuln/detail/CVE-2026-50545
- https://github.com/fission/fission/commit/8fa799417c77ce8a0189d9858bfe11ece29b84...
- https://github.com/fission/fission/commit/e484df8460bb4e8026e24210120602aa7f181f...
- https://github.com/advisories/GHSA-wmgg-3p4h-48x7
- https://github.com/fission/fission/pull/3390
- https://github.com/fission/fission/pull/3391
- https://github.com/fission/fission/releases/tag/v1.24.0
- https://github.com/fission/fission/security/advisories/GHSA-wmgg-3p4h-48x7
Published: 30 Jun 2026 · Updated: 23 Jul 2026 · First seen: 10 Jun 2026