Loading...
Skip to main content

CVE-2026-50564 — Vulnerability in github.com/fission/fission — CVE...

CRITICAL

Fission Environment CRD podspec passthrough enables hostPID/hostNetwork/privileged pods, node escape

Published June 30, 2026Updated July 7, 2026Source: osv

Summary

### Summary Fission's `Environment` CRD exposes `spec.runtime.podSpec` and `spec.builder.podSpec`, which are merged into the Kubernetes pod specs for runtime and builder pods. The merge logic propagated `hostNetwork`, `hostPID`, `hostIPC`, container `privileged`, and `serviceAccountName` from the user-supplied podspec with no filtering, and `Environment.Validate` performed no security-relevant checks on these fields. ### Details A namespace user with `create`/`update` on `environments.fission.io` could produce privileged, host-network, hostPID pods in the Fission function or builder namespace. Because the Helm chart created the `fission-function` and `fission-builder` namespaces with no `pod-security.kubernetes.io/enforce` labels, Kubernetes Pod Security Admission did not catch the escape either. From a host-network privileged pod with hostPID, the attacker could `nsenter` into the host, read cloud-metadata credentials, access the container-runtime socket, pivot to other namespaces, and fully compromise the node. ### Impact `environments.fission.io` create/update RBAC is escalated to node compromise — host filesystem and network access on the scheduling node, and from there potential cluster-wide takeover. ### Fix Fixed in [#3391](https://github.com/fission/fission/pull/3391) and released in [v1.24.0](https://github.com/fission/fission/releases/tag/v1.24.0). Denylist at admission (the primary defence) plus belt-and-braces at the merge layer. **Admission denylist** (`pkg/apis/core/v1/podspec_safety.go::ValidatePodSpecSafety`), called from `Environment.Validate` for both `Runtime.PodSpec` and `Builder.PodSpec`: - pod-level: `HostNetwork`, `HostPID`, `HostIPC`, `ServiceAccountName` / `DeprecatedServiceAccount` override, hostPath volumes; - per-container: `SecurityContext.Privileged=true`, `SecurityContext.AllowPrivilegeEscalation=true`, dangerous capabilities (`SYS_ADMIN`, `NET_ADMIN`, `SYS_PTRACE`, `SYS_MODULE`, `DAC_READ_SEARCH`, `DAC_OVERRIDE`). **Update-bypass closed:** the `Environment` validating-webhook marker is extended from `verbs=create` to `verbs=create;update` (chart and envtest manifests aligned). **Merge-layer belt-and-braces** (`pkg/executor/util/merge.go`): even if admission is bypassed (`failurePolicy=Ignore` or stale pre-webhook objects), the denylisted pod-level fields are stripped and per-container dangerous settings are sanitized before the merge (with `SecurityContext` deep-copied first so cached informer objects are not mutated). Legitimate operator hardening via the chart's pod-level `securityContext` (fsGroup, runAsNonRoot, runAsUser) still flows through. ### Behavioural change Environments that explicitly set any denylisted field are now rejected at admission. There is no legitimate Fission use case — these primitives exist for cluster operators, not Environment authors. This is the same root cause and fix as GHSA-wmgg-3p4h-48x7.

Advisory Timeline

  • First published June 30, 2026 (104 days ago).
  • Last revised July 7, 2026 — 7 days after initial publication.

Remediation

Upgrade to the fixed version using your package manager.

Go
Update github.com/fission/fission to 1.24.0 or later
go get github.com/fission/fission@v1.24.0

After upgrading, run your dependency scanner again to confirm the vulnerability is resolved.

Affected Packages (1)

Affects 1 ecosystem: go (1).

PackageEcosystemAffectedFixed In
github.com/fission/fission
go
All versions1.24.0

Vulnerability Classification

Common Weakness Enumeration (CWE) identifiers for this vulnerability type.

CVSS Score Breakdown

What the CVSS (Common Vulnerability Scoring System) 9.9 score means for each attack dimension.

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Changed
Confidentiality
High
Integrity
High
Availability
High

CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H

Frequently Asked Questions

What is CVE-2026-50564?
Fission Environment CRD podspec passthrough enables hostPID/hostNetwork/privileged pods, node escape This vulnerability has been assigned a severity rating of CRITICAL (CVSS score: 9.9/10).
How do I check if my project is affected by CVE-2026-50564?
CVE-2026-50564 affects github.com/fission/fission. Use GeekWala's free vulnerability scanner to check your dependencies against CVE-2026-50564 and 200,000+ other known vulnerabilities.

Severity & Exploitability

CVSS Score
9.9

Exploitation is straightforward and causes maximum impact. Patch immediately.

Also Known As

GHSA-gx55-f84r-v3r7
GO-2026-5855

Related CVEs

  • CVE-2026-46614
    CRITICAL

    Fission router exposes /fission-function/<ns>/<name> on its public listener, allowing invocation of any function without an HTTPTrigger

  • CVE-2026-50566
    CRITICAL

    Fission: Environment Runtime.Container and Builder.Container SecurityContext bypass allows privileged pod creation

  • CVE-2026-107806
    CRITICAL

    Nginx UI: Authenticated Remote Code Execution via Backup Restore App Config Overwrite

  • CVE-2026-50563
    CRITICAL

    Fission Container Executor Function PodSpec Injection Leading to Node Escape

  • CVE-2026-50545
    CRITICAL

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

  • CVE-2026-46612
    HIGH

    Fission StorageSvc /v1/archive endpoint exposes unauthenticated CRUD over all function archives

  • CVE-2026-49824
    HIGH

    Fission: Cross-namespace Environment reference via unvalidated EnvironmentRef in Function admission webhook

  • CVE-2026-50570
    HIGH

    Fission: Incomplete capability denylist in Environment/Function PodSpec validation allows tenant-added CAP_SYS_TIME and cross-tenant node wall-clock corruption

Check if you're affected

Scan your dependencies to see if this vulnerability affects your projects.

Scan Your Dependencies