Detect Fission Container Executor PodSpec Injection - Node Escape Attempt in Elastic Security
Detects exploitation of CVE-2026-50563, a critical privilege escalation vulnerability in Fission serverless framework (<=1.23.0). The container executor allows unauthenticated or low-privileged users to inject arbitrary PodSpec fields into function pods, enabling container escape to the underlying Kubernetes node. Attackers can inject hostPID, hostNetwork, privileged containers, hostPath volume mounts, or custom service accounts to achieve full node compromise.
MITRE ATT&CK
Elastic Detection Query
sequence by kubernetes.pod.name with maxspan=5m
[any where kubernetes.audit.objectRef.resource == "pods"
and kubernetes.audit.objectRef.namespace : ("fission*")
and kubernetes.audit.verb in ("create", "patch", "update")
and (
kubernetes.audit.requestObject.spec.hostPID == true
or kubernetes.audit.requestObject.spec.hostNetwork == true
or kubernetes.audit.requestObject.spec.hostIPC == true
or kubernetes.audit.requestObject.spec.containers.securityContext.privileged == true
or kubernetes.audit.requestObject.spec.volumes.hostPath.path : ("/", "/etc", "/proc", "/var/run/docker.sock")
)
]
[any where kubernetes.container.name : ("*fission*", "*function*")
and (
process.name in ("nsenter", "chroot", "unshare")
or process.args : ("/proc/1/root*", "/host/*", "--target 1")
)
] EQL sequence detection correlating Fission namespace PodSpec injection events with subsequent container escape tool execution within the same pod.
Data Sources
Required Tables
False Positives & Tuning
- Legitimate use of nsenter or chroot by Kubernetes node debugging tools running in privileged init containers
- Container runtime troubleshooting sessions authorized by cluster administrators
- Automated testing pipelines that exercise privileged container configurations in isolated test namespaces
Other platforms for CVE-2026-50563
Testing Methodology
Validate this detection against 3 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.
- Test 1Fission PodSpec Injection - hostPID Escape
Expected signal: Kubernetes audit log entry with verb=create, objectRef.resource=pods, objectRef.namespace=fission-function, requestObject.spec.hostPID=true. Container process list will show host-level PIDs including kubelet, containerd, and other node processes.
- Test 2Fission PodSpec Injection - Privileged Container with hostPath Root Mount
Expected signal: Kubernetes audit log with requestObject.spec.containers[0].securityContext.privileged=true and requestObject.spec.volumes containing hostPath.path=/. Container runtime logs showing privileged container start. Node-level filesystem access to /etc/passwd and hostname file.
- Test 3Fission Container Escape via nsenter After PodSpec Injection
Expected signal: Process telemetry on Kubernetes node showing nsenter executed with --target 1 argument. Host PID 1 (init/systemd) namespace join event visible in node audit logs. Container log output matching host OS details rather than Alpine container OS.
References (6)
- https://github.com/fission/fission/security/advisories/GHSA-v455-mv2v-5g92
- https://nvd.nist.gov/vuln/detail/CVE-2026-50563
- https://github.com/fission/fission/pull/3391
- https://github.com/fission/fission/commit/e484df8460bb4e8026e24210120602aa7f181f64
- https://github.com/fission/fission/releases/tag/v1.24.0
- https://github.com/advisories/GHSA-v455-mv2v-5g92
Unlock Pro Content
Get the full detection package for CVE-2026-50563 including response playbook, investigation guide, and atomic red team tests.