CVE-2026-49823 Overview
CVE-2026-49823 affects Fission, an open-source Kubernetes-native serverless framework for deploying functions on Kubernetes. The vulnerability stems from missing namespace validation in the admission webhook for PackageRef.Namespace within Fission Function specifications. While SecretRef and ConfigMapRef references were namespace-validated, PackageRef was not, enabling cross-namespace reference abuse. The issue is classified as [CWE-284] Improper Access Control. Maintainers patched the flaw in Fission version 1.24.0.
Critical Impact
Authenticated users with permission to create Fission Functions can reference Package resources in arbitrary namespaces, bypassing Kubernetes namespace isolation boundaries.
Affected Products
- Fission (Kubernetes-native serverless framework)
- All Fission releases prior to version 1.24.0
- Deployments using the Fission admission webhook for Function specs
Discovery Timeline
- 2026-06-10 - CVE-2026-49823 published to NVD
- 2026-06-10 - Last updated in NVD database
Technical Details for CVE-2026-49823
Vulnerability Analysis
A Fission Function specification carries three reference types: SecretRef, ConfigMapRef, and PackageRef. Each reference contains a Name and Namespace field pointing to the referenced Kubernetes resource. The Fission admission webhook validates that SecretRef.Namespace and ConfigMapRef.Namespace match the namespace of the Function being created. This control prevents users from referencing sensitive resources outside their authorized namespace scope.
The PackageRef.Namespace field was excluded from this validation logic. An authenticated user with permission to create Fission Functions in one namespace can specify a PackageRef.Namespace pointing to any other namespace in the cluster. The Fission controller then resolves the Package reference and uses its contents, which include the function source code or container image specification, when executing the function.
Root Cause
The admission webhook implementation enforced namespace equivalence checks for two of three reference types but omitted the equivalent check for PackageRef. This inconsistent access control aligns with [CWE-284] Improper Access Control. The pull request merged into version 1.24.0 extends the namespace validator to cover Package references.
Attack Vector
Exploitation requires network access to the Kubernetes API server and low-privilege credentials with rights to create or update Fission Function resources. An attacker creates a Function in a namespace they control and sets PackageRef.Namespace to a target namespace. The Fission runtime loads the referenced Package, allowing the attacker to execute code derived from packages they should not be able to read. Because the scope changes from the attacker's namespace to the victim namespace, the vulnerability has cluster-wide impact in multi-tenant deployments.
No public proof-of-concept code is currently available. Refer to the GitHub Security Advisory GHSA-3r8v-2xmj-5c39 for technical details.
Detection Methods for CVE-2026-49823
Indicators of Compromise
- Fission Function resources where spec.package.packageref.namespace differs from the Function's own metadata.namespace.
- Kubernetes audit log entries showing create or update operations on functions.fission.io resources from low-privilege service accounts.
- Unexpected Package resolution activity in Fission controller logs referencing namespaces outside the requester's authorization scope.
Detection Strategies
- Query the Kubernetes API for all Fission Function objects and flag any whose PackageRef.Namespace value does not equal the Function's namespace.
- Enable Kubernetes audit logging at the RequestResponse level for fission.io API groups to capture full Function specifications for review.
- Deploy OPA Gatekeeper or Kyverno policies that reject Function manifests containing cross-namespace PackageRef values.
Monitoring Recommendations
- Alert on creation of Fission Function resources by service accounts that have not historically deployed functions.
- Monitor the Fission controller pod logs for Package fetch operations targeting privileged or system namespaces.
- Track installed Fission versions across clusters and alert on any instance below v1.24.0.
How to Mitigate CVE-2026-49823
Immediate Actions Required
- Upgrade Fission to version 1.24.0 or later in all clusters running the framework.
- Audit existing Fission Function objects for cross-namespace PackageRef references and remove or remediate any unauthorized entries.
- Review RBAC bindings to restrict create and update permissions on functions.fission.io to trusted principals only.
Patch Information
The maintainers fixed the issue in Fission release v1.24.0. The corresponding code change in GitHub Pull Request #3389 extends the admission webhook to validate PackageRef.Namespace in the same manner as SecretRef.Namespace and ConfigMapRef.Namespace.
Workarounds
- Deploy an admission policy with Kyverno or OPA Gatekeeper to reject Functions whose PackageRef.Namespace does not equal the Function's namespace until the upgrade is applied.
- Restrict Fission Function creation to dedicated namespaces with limited tenancy and remove Function CRD permissions from general-purpose service accounts.
- Apply Kubernetes NetworkPolicies to limit lateral movement from compromised Fission function pods.
# Kyverno policy enforcing PackageRef namespace equality
apiVersion: kyverno.io/v1
kind: ClusterPolicy
metadata:
name: fission-packageref-namespace-match
spec:
validationFailureAction: Enforce
rules:
- name: deny-cross-namespace-packageref
match:
any:
- resources:
kinds:
- fission.io/v1/Function
validate:
message: "PackageRef.Namespace must equal the Function namespace."
deny:
conditions:
any:
- key: "{{ request.object.spec.package.packageref.namespace }}"
operator: NotEquals
value: "{{ request.object.metadata.namespace }}"
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

