Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain RBAC to create ConfigUpdateJob
-
DeliveryCraft updateFields --set with shell metacharacters
-
ExploitJob dispatched to enrolled edge node
-
Executionkeadm config-update run via system shell
-
PersistInjected commands execute at KubeEdge process privilege
-
ImpactFull edge-node compromise
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization OS command sanitization, avoid shell exec
MITRE ATT&CK
2 techniques across 1 tactic: Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires an authenticated principal holding Kubernetes RBAC permission to create or modify ConfigUpdateJob resources in a KubeEdge control plane (versions 1.21.0 up to but not including 1.21.2, 1.22.2, or 1.23.1). Exploitation is triggered when the edge taskmanager processes the job and passes attacker-controlled updateFields into the keadm config-update --set value executed through a system shell. Limiting factors: it is NOT anonymous/unauthenticated (PR:L - job-create/modify authorization is mandatory), the target edge node must be enrolled and actively processing config-update jobs, and impact is scoped to the privileges of the KubeEdge process handling the job on that node. No user interaction or non-default feature toggle is required beyond normal task-manager operation. |
| Impact | This is a genuine, actionable command-injection flaw (CWE-78) rather than an inflated high-CVSS score, though its exposure is bounded by an authorization prerequisite. The vendor CVSS 3.1 vector AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H (8.8) reflects a network-reachable, low-complexity attack requiring only low privileges (PR:L) and no user interaction, with total impact on the target edge node. The PR:L is the key gate: the attacker must already hold Kubernetes RBAC permission to create or modify ConfigUpdateJob resources, so this is not an anonymous internet-facing RCE. No EPSS score, no CISA KEV listing, and no public POC were provided, so exploitation status is: no public exploit identified at time of analysis - the provided GitHub PR diff (PR 7028) is actually the input-validation fix for the SIBLING NodeUpgradeJob path (admit_nodeupgradejob.go / ValidateVersion / ValidateImageRepo), NOT the configupdatejob.go fix, so it does not constitute exploit code. One point of contention: the vendor scored Scope Unchanged (S:U), but the authorization authority (Kubernetes/cloud RBAC that gates job creation) differs from the impacted component (the edge node's OS shell that executes the command), which is a defensible argument for S:C and a score nearer 9.6; defenders should treat cross-boundary edge-node compromise as the real outcome regardless of the scope debate. |
| Exploit ScenarioDerived | An attacker who holds Kubernetes RBAC rights to create or edit ConfigUpdateJob resources (e.g., a low-privileged namespace/tenant operator or a compromised service account) crafts a job whose updateFields --set value embeds shell metacharacters. When the KubeEdge taskmanager on the targeted enrolled edge node builds and runs the keadm config-update command through a system shell, the injected commands execute with the privileges of the KubeEdge process on that node. No public exploit code was identified, but the technique is trivial once job-creation access is obtained. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 21, 2026
Authenticated command injection in KubeEdge (1.21.0 up to 1.21.2, 1.22.2, and 1.23.1) lets a principal holding Kubernetes RBAC rights to create or modify ConfigUpdateJob resources inject shell metacharacters into the updateFields passed to the keadm config-update command, which the edge taskmanager then runs through a system shell, yielding arbitrary command execution on the enrolled target edge node with the privileges of the KubeEdge process. The vendor rates this 8.8 (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H), and our independent assessment is slightly more severe because compromise of the node process is a scope change (S:C); the PR:L vector confirms the attacker must be authenticated and authorized, so this is not anonymous or remotely unauthenticated abuse. No public exploit code or confirmed in-the-wild exploitation was identified at time of analysis, but the flaw is a genuine, actionable CWE-78 issue rather than an inflated score, and it is fixed in KubeEdge 1.21.2, 1.22.2, and 1.23.1.
RemediationAI
Vendor-released patch: upgrade to KubeEdge 1.21.2, 1.22.2, or 1.23.1 depending on your branch, as documented in the advisory https://github.com/kubeedge/kubeedge/security/advisories/GHSA-m3c6-2p7h-cfr3 and the corresponding release pages and upstream commits. Until patching is possible, the single most effective compensating control is RBAC tightening: treat permission to create or modify ConfigUpdateJob resources as equivalent to remote code execution on enrolled edge nodes and restrict it to a minimal set of trusted controllers and administrators, since the PR:L vector means this authorization is the only barrier between an attacker and shell execution. Where feasible, additionally constrain updateFields content through an admission policy or validating webhook that rejects shell metacharacters and unexpected --set key/value syntax before the job reaches the edge taskmanager, accepting the trade-off that legitimate config-update payloads with unusual characters may be blocked or require exemption; running the KubeEdge edge process under a dedicated low-privilege account with a restrictive security context limits the blast radius of any injection that still succeeds, though it does not eliminate node-level impact given the process already needs meaningful host access. Because no public exploit code was identified at time of analysis, there is no signature-style detection available, so monitoring ConfigUpdateJob creation and anomalous keadm config-update child processes on edge nodes remains the practical detective measure.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 4 packages in go, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
KubeEdge extends Kubernetes orchestration to edge hosts via a cloud-side control plane and an edge-side agent that includes a taskmanager responsible for executing job actions locally. In the affected releases, the ConfigUpdateJob action handler at edge/pkg/taskmanager/actions/configupdatejob.go builds a keadm config-update invocation by concatenating attacker-influenced updateFields values into the --set argument and hands the resulting string to a system shell rather than an argument vector, so any shell metacharacters embedded in the value are interpreted by the shell. This is classically CWE-78 (OS Command Injection): the root cause is unescaped, unsanitized user input crossing a trust boundary from the Kubernetes API object into a shell interpreter. The CPE cpe:2.3:a:kubeedge:kubeedge:*:*:*:*:*:*:*:* confirms the affected component is the KubeEdge project itself across all currently published release branches, and the referenced upstream pull requests (7028, 7029, 7030) and commits strengthen input validation around related job resources, including admission-controller validation of NodeUpgradeJob version and image fields, illustrating the project's broader hardening of job specification fields that feed into privileged edge operations.
Know when Kubeedge gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
PR:L because RBAC to create/modify ConfigUpdateJob is required; S:C because cloud/RBAC authorization authority differs from the impacted edge-node OS where commands run; full C/I/A on the node.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
KubeEdge is an open source system for extending native containerized application orchestration capabilities to hosts at Edge. From 1.21.0 until 1.21.2, 1.22.2, and 1.23.1, ConfigUpdateJob processing in edge/pkg/taskmanager/actions/configupdatejob.go concatenates authenticated user-controlled updateFields values into the keadm config-update command and executes it through a system shell. A user with permission to create or modify ConfigUpdateJob resources can include shell metacharacters in the complete --set value and cause arbitrary commands to execute on an enrolled target edge node with the privileges of the KubeEdge process handling the job. This issue is fixed in versions 1.21.2, 1.22.2, and 1.23.1.
Technical POC Analysis
CWE-78 (Improper Neutralization of Special Elements used in an OS Command).
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
KubeEdge, the platform used to run Kubernetes workloads on remote and field-deployed edge nodes, contains a command-injection flaw that lets an already-authenticated user with permission to manage ConfigUpdateJob resources execute arbitrary commands on enrolled edge nodes under the KubeEdge service account. Because edge nodes typically sit outside the data center in branch, plant, or field locations and run with elevated privileges, a single over-privileged Kubernetes account can become a foothold into the organization's distributed edge estate. Leadership should treat this as an insider-privilege and lateral-movement risk affecting the edge fleet rather than an isolated server issue.
No vendor-released patch is confirmed in the supplied patch-status record at time of analysis, so apply interim mitigations: restrict RBAC so only a minimal, monitored set of identities can create or modify ConfigUpdateJob resources; remove ConfigUpdateJob write permissions from service accounts and CI/CD pipelines; log and alert on ConfigUpdateJob API calls and on keadm config-update execution in edge taskmanager logs; segment edge nodes from sensitive internal networks; and run the KubeEdge process with the least privilege possible on each node. If the vendor confirms 1.21.2 and 1.22.2 as fixed builds, apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
OS command injection occurs when an application passes unsanitized user input directly into system shell commands.
Unauthenticated integrity manipulation in KubeEdge CloudCore through 1.23.1 allows any network-reachable attacker to sub
KubeEdge is an open source system for extending native containerized application orchestration capabilities to hosts at
KubeEdge is built upon Kubernetes and extends native containerized application orchestration and device management to ho
Shell command injection in KubeEdge's v1alpha2 NodeUpgradeJob upgrade workflow allows an authenticated user who holds RB
KubeEdge keadm releases from 1.16.0 before 1.21.2, 1.22.2, and 1.23.1 contain a path traversal in DecompressTarGz that,
Memory exhaustion in KubeEdge CloudHub (versions 1.0.0 through 1.21.1, 1.22.0 through 1.22.1, and 1.23.0) allows an auth
KubeEdge is an open source system for extending native containerized application orchestration capabilities to hosts at
KubeEdge is an open source system for extending native containerized application orchestration capabilities to hosts at
KubeEdge is an open source system for extending native containerized application orchestration capabilities to hosts at
KubeEdge is an open source system for extending native containerized application orchestration capabilities to hosts at
KubeEdge is an open source system for extending native containerized application orchestration capabilities to hosts at
KubeEdge is built upon Kubernetes and extends native containerized application orchestration and device management to ho
EUVD-2026-84032
GHSA-m3c6-2p7h-cfr3
NVD
CVE.org
EPSS
Exploit-DB