CVE-2026-79756 Overview
CVE-2026-79756 is an unauthenticated OS command injection vulnerability in the Nuclio dashboard on the local/Docker platform. Nuclio is a serverless framework for real-time events and data processing. Prior to version 1.17.4, an earlier patch for command injection was incomplete. The list-all resource path still interpolates the resourceNamespace parameter unquoted into a /bin/sh -c command string. Attackers can inject shell metacharacters through the X-Nuclio-Function-Namespace, X-Nuclio-Project-Namespace, or X-Nuclio-Function-Event-Namespace HTTP headers. This achieves arbitrary command execution inside the dashboard container without authentication. The issue is tracked under CWE-78.
Critical Impact
Unauthenticated remote attackers can execute arbitrary shell commands inside the Nuclio dashboard container by injecting metacharacters into namespace HTTP headers.
Affected Products
- Nuclio serverless framework versions prior to 1.17.4
- Nuclio dashboard running on the local/Docker platform
- Deployments exposing the dashboard HTTP interface to untrusted networks
Discovery Timeline
- 2026-09-02 - CVE-2026-79756 published to NVD
- 2026-09-02 - Last updated in NVD database
- Version 1.17.4 - Patch released by the Nuclio project (GitHub Release 1.17.4)
Technical Details for CVE-2026-79756
Vulnerability Analysis
The Nuclio dashboard exposes HTTP endpoints for managing functions, projects, and function events on the local/Docker platform. Handlers invoke shell commands through /bin/sh -c to interact with the local Docker environment. A previous fix introduced validateFunctionName and common.Quote() to sanitize named-resource paths. That fix did not cover the list-all code path, which is triggered when no specific resource name is supplied. In that path, the resourceNamespace value is interpolated directly into the shell command string without quoting or validation. Any shell metacharacters in the namespace value are interpreted by /bin/sh. The dashboard reads this value from the X-Nuclio-Function-Namespace, X-Nuclio-Project-Namespace, and X-Nuclio-Function-Event-Namespace request headers.
Root Cause
The root cause is unsanitized string interpolation of attacker-controlled input into a shell command. The list-all resource path in pkg/platform/local/client/store.go bypassed the quoting applied to named-resource paths. Because the endpoints do not require authentication, any network-reachable client can supply arbitrary header values. This matches classic OS command injection behavior described in CWE-78.
Attack Vector
Exploitation requires only network access to the Nuclio dashboard. An attacker sends a list-all request without a specific resource name and sets one of the namespace headers to a payload containing shell metacharacters such as ;, |, `, or $(). The dashboard concatenates the value into the shell command line, and /bin/sh -c executes the injected commands inside the dashboard container. This yields code execution with the privileges of the dashboard process, including access to any Docker socket or credentials mounted into the container.
// Patch reference: validate namespace before shell interpolation
// pkg/platform/local/client/store.go
"github.com/nuclio/errors"
"github.com/nuclio/logger"
"github.com/nuclio/nuclio-sdk-go"
+ "k8s.io/apimachinery/pkg/util/validation"
)
const (
Source: GitHub Commit 86d4e39. The patch imports the Kubernetes validation package and applies namespace validation before the value reaches the shell command.
Stop Remote Code Execution Before It Runs
Singularity™ Endpoint detects and blocks exploit attempts at machine speed, including zero-days and novel attack techniques.
Stop Exploit AttemptsDetection Methods for CVE-2026-79756
Indicators of Compromise
- Inbound HTTP requests to the Nuclio dashboard containing shell metacharacters (;, |, &, `, $() in the X-Nuclio-Function-Namespace, X-Nuclio-Project-Namespace, or X-Nuclio-Function-Event-Namespace headers.
- Unexpected child processes spawned by the Nuclio dashboard container, especially /bin/sh, curl, wget, nc, or shell interpreters invoking outbound connections.
- New or modified files inside the dashboard container filesystem outside of expected Nuclio directories.
- Outbound network connections from the dashboard container to unknown external hosts.
Detection Strategies
- Inspect HTTP access logs on the Nuclio dashboard or fronting proxy for the three namespace headers and flag values that do not match a valid DNS-1123 namespace pattern.
- Monitor container process trees for /bin/sh -c invocations that include suspicious substrings beyond expected Docker CLI commands.
- Alert on any process execution inside the dashboard container that is not on an allowlist of expected binaries.
Monitoring Recommendations
- Enable audit logging on the Docker socket mounted into the dashboard container to record command execution issued through Docker APIs.
- Forward container runtime telemetry and dashboard logs to a centralized analytics platform for correlation and retention.
- Baseline normal Nuclio dashboard behavior so that anomalous child processes or outbound connections generate alerts.
How to Mitigate CVE-2026-79756
Immediate Actions Required
- Upgrade Nuclio to version 1.17.4 or later on all local/Docker platform deployments (GitHub Release 1.17.4).
- Restrict network access to the Nuclio dashboard so that only trusted administrators and services can reach it.
- Review dashboard container logs and process history for evidence of exploitation using the indicators listed above.
Patch Information
The fix is included in Nuclio 1.17.4 and applied in pull request #4223 and commit 86d4e39. The patch validates the namespace value using the Kubernetes validation package before it is interpolated into any shell command. See the GHSA-mq8w-f7w8-5rgg advisory for the vendor write-up.
Workarounds
- Place the dashboard behind an authenticating reverse proxy that strips or validates the X-Nuclio-Function-Namespace, X-Nuclio-Project-Namespace, and X-Nuclio-Function-Event-Namespace headers.
- Block requests where these headers contain characters outside [a-z0-9-] at a Web Application Firewall or ingress layer.
- Run the dashboard container with a read-only filesystem, minimal capabilities, and without a mounted Docker socket where operationally feasible.
# Example nginx rule to reject namespace headers containing shell metacharacters
if ($http_x_nuclio_function_namespace ~* "[^a-z0-9-]") { return 400; }
if ($http_x_nuclio_project_namespace ~* "[^a-z0-9-]") { return 400; }
if ($http_x_nuclio_function_event_namespace ~* "[^a-z0-9-]") { return 400; }
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

