Get a Demo

Let's Patch It!

Book a short call with one our specialists, we'll walk you through how Endor Patches work, and ask you a few questions about your environment (like your primary programming languages and repository management). We'll also send you an email right after you fill out the form, feel free to reply with any questions you have in advance!

CVE

CVE-2026-50545

Fission Environment CRD PodSpec Injection Leading to Node Escape and Cluster Takeover
Back to all
CVE

CVE-2026-50545

Fission Environment CRD PodSpec Injection Leading to Node Escape and Cluster Takeover

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 HostPIDHostIPCHostNetworkVolumes (including hostPath), SecurityContext, and ServiceAccountName into the Deployments

generated by poolmgr / newdeploy / buildermgr.

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 (with the companion buildermgr SA-token fix in #3390) and released in

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.

Package Versions Affected

Package Version
patch Availability
No items found.

Automatically patch vulnerabilities without upgrading

Fix Without Upgrading
Detect compatible fix
Apply safe remediation
Fix with a single pull request

CVSS Version

Severity
Base Score
CVSS Version
Score Vector
C
H
U
9.9
-
3.1
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
C
H
U
0
-
3.1
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
C
H
U
-

Related Resources

No items found.

References

https://github.com/fission/fission/security/advisories/GHSA-wmgg-3p4h-48x7, https://nvd.nist.gov/vuln/detail/CVE-2026-50545, https://github.com/fission/fission/pull/3390, https://github.com/fission/fission/pull/3391, https://github.com/fission/fission/commit/8fa799417c77ce8a0189d9858bfe11ece29b84a6, https://github.com/fission/fission/commit/e484df8460bb4e8026e24210120602aa7f181f64, https://github.com/fission/fission, https://github.com/fission/fission/releases/tag/v1.24.0

Severity

9.9

CVSS Score
0
10

Basic Information

Base CVSS
9.9
EPSS Probability
0.003%
EPSS Percentile
0.21763%
Introduced Version
0
Fix Available
1.24.0

Fix Critical Vulnerabilities Instantly

Secure your app without upgrading.
Fix Without Upgrading