CVE-2026-114278: Unauthenticated Command Injection via kubeconfig Username in che-machine-exec
The che-machine-exec service constructs a shell command by concatenating user-controlled input (the username and namespace fields from the /exec/init and /exec/config JSON endpoints) into a double-quoted sh -c "echo "..." > ..." invocation without any escaping. When che-machine-exec is run with authentication disabled (its default), any network-reachable attacker can achieve remote code execution in containers che-machine-exec is configured to access, via shell command substitution ($(...) or backticks).
Affected Software
Event History
Frequently Asked Questions
Which deployments are exposed to unauthenticated remote code execution?
Deployments where che-machine-exec is network-reachable and running with authentication disabled are exposed. Authentication is disabled by default, and code execution occurs in containers that che-machine-exec is configured to access.
What does an attacker need to exploit this issue?
An attacker needs network access to the che-machine-exec service; no authentication, privileges, or user interaction are required when authentication is disabled. The attacker can submit crafted username or namespace values to the /exec/init or /exec/config JSON endpoints, using shell command substitution such as $(...) or backticks.
How can I determine whether my instance is affected?
Check whether che-machine-exec authentication is disabled and whether the service is reachable over the network. Also identify whether its /exec/init or /exec/config endpoints accept user-controlled kubeconfig username or namespace values and whether the service has access to containers that would be impacted.