{"description":"Trending threats, MITRE ATT\u0026CK coverage, and detection metadata. Fed continuously.","favicon":"https://feed.craftedsignal.io/favicon-32x32.png","feed_url":"https://feed.craftedsignal.io/cpes/cpe2.3aopenchoreoopenchoreo/feed.json","home_page_url":"https://feed.craftedsignal.io/","icon":"https://feed.craftedsignal.io/apple-touch-icon.png","items":[{"_cs_actors":[],"_cs_cpes":["cpe:2.3:a:openchoreo:openchoreo:*:*:*:*:*:*:*:*"],"_cs_cves":[{"cvss":8.8,"id":"CVE-2026-73667"}],"_cs_exploited":false,"_cs_has_poc":false,"_cs_poc_references":[],"_cs_products":["openchoreo (\u003c 1.0.4, \u003e= 1.1.0, \u003c 1.1.4, \u003e= 1.2.0-rc.1, \u003c 1.2.0-rc.2)"],"_cs_severities":["high"],"_cs_tags":["vulnerability","remote-code-execution","kubernetes","podman"],"_cs_type":"advisory","_cs_vendors":["OpenChoreo"],"content_html":"\u003cp\u003eOpenChoreo Workflow Plane is affected by an OS command injection vulnerability (CVE-2026-73667) stemming from the insecure interpolation of developer-controlled workflow parameters into shell commands executed via 'sh -c'. An authenticated user with sufficient permissions to configure or trigger workflows can supply crafted parameter values containing shell metacharacters, allowing them to alter the intended command execution and run arbitrary commands within the workflow pod.\u003c/p\u003e\n\u003cp\u003eThe vulnerability is particularly critical because certain build and publish templates run Podman containers in a privileged mode without Kubernetes pod user-namespace isolation enabled. In these configurations, an attacker successfully performing command injection gains UID 0 within a privileged container. Because the container lacks user namespace isolation, this UID 0 is mapped directly to UID 0 on the host, granting the attacker significant capabilities and potentially facilitating a container escape or node-level compromise. The issue was addressed by moving away from direct shell interpolation to the use of container environment variables and argument vectors.\u003c/p\u003e\n\u003ch2 id=\"attack-chain\"\u003eAttack Chain\u003c/h2\u003e\n\u003col\u003e\n\u003cli\u003eAttacker gains authentication access to the OpenChoreo environment with permissions to configure or trigger workflow templates.\u003c/li\u003e\n\u003cli\u003eAttacker identifies a workflow template that accepts user-supplied parameters interpolated into a shell script executed by the workflow engine.\u003c/li\u003e\n\u003cli\u003eAttacker submits a workflow request containing malicious shell metacharacters (e.g., ; , \u0026amp;\u0026amp;, |) within a vulnerable input parameter.\u003c/li\u003e\n\u003cli\u003eThe OpenChoreo Workflow Plane processes the template and directly interpolates the malicious parameter into a shell command string.\u003c/li\u003e\n\u003cli\u003eThe workflow pod executes the resulting malicious string via 'sh -c', triggering the attacker-supplied commands within the pod context.\u003c/li\u003e\n\u003cli\u003eThe injected commands execute with the privileges assigned to the container (e.g., root/UID 0).\u003c/li\u003e\n\u003cli\u003eIf the container is running in privileged mode without user namespace isolation (hostUsers: false), the attacker attempts to interact with host-level resources or devices to escalate privileges or escape the container.\u003c/li\u003e\n\u003cli\u003eFinal objectives may include credential exfiltration (Git/registry/service account tokens), source code theft, or persistent access to the Kubernetes node.\u003c/li\u003e\n\u003c/ol\u003e\n\u003ch2 id=\"impact\"\u003eImpact\u003c/h2\u003e\n\u003cp\u003eSuccessful exploitation allows an authenticated attacker to gain unauthorized code execution within the context of a workflow pod. Depending on the environment and template configuration, this leads to the potential exposure of sensitive data, including Git and registry credentials, Kubernetes service account tokens, and source code. Because privileged containers without user namespace isolation map the container's root user to the host's root user, the impact can extend to a full compromise of the underlying Kubernetes node if the attacker manages to exploit kernel or node-level vulnerabilities from within the privileged container context.\u003c/p\u003e\n\u003ch2 id=\"recommendation\"\u003eRecommendation\u003c/h2\u003e\n\u003col\u003e\n\u003cli\u003eUpgrade OpenChoreo immediately to version 1.0.4, 1.1.4, or 1.2.0-rc.2.\u003c/li\u003e\n\u003cli\u003eFor clusters running custom workflow templates, manually review and update templates to remove direct shell interpolation, replacing them with quoted shell variables passed through container environment variables or separate argument-vector entries.\u003c/li\u003e\n\u003cli\u003eEnsure that all containers utilizing privileged Podman execution have \u003ccode\u003ehostUsers: false\u003c/code\u003e explicitly set in their security context to enable user namespace isolation and prevent root-to-root mapping on the host.\u003c/li\u003e\n\u003cli\u003eEnforce strict RBAC policies to restrict the ability to create, modify, or trigger workflows to a highly limited set of trusted users.\u003c/li\u003e\n\u003cli\u003eAudit existing workflow templates for any instances of shell metacharacter usage in user-defined parameters to identify potential historical exploitation attempts.\u003c/li\u003e\n\u003c/ol\u003e\n","date_modified":"2026-09-03T00:03:00Z","date_published":"2026-09-03T00:03:00Z","id":"https://feed.craftedsignal.io/briefs/2026-09-openchoreo-command-injection/","summary":"Authenticated users can trigger OS command injection in OpenChoreo workflow templates by supplying crafted parameters that are insecurely interpolated into shell execution scripts.","title":"Authenticated OS Command Injection in OpenChoreo Workflow Plane","url":"https://feed.craftedsignal.io/briefs/2026-09-openchoreo-command-injection/"},{"_cs_actors":[],"_cs_cpes":["cpe:2.3:a:openchoreo:openchoreo:*:*:*:*:*:*:*:*"],"_cs_cves":[{"cvss":9.6,"id":"CVE-2026-73843"}],"_cs_exploited":false,"_cs_has_poc":false,"_cs_poc_references":[],"_cs_products":["OpenChoreo cluster-gateway (\u003c 1.0.2, \u003e= 1.1.0, \u003c 1.1.2)"],"_cs_severities":["critical"],"_cs_tags":[],"_cs_type":"advisory","_cs_vendors":["OpenChoreo"],"content_html":"\u003cp\u003eOpenChoreo (CVE-2026-73843) contains a critical authentication flaw in its cluster-gateway component. In multi-cluster topologies, the cluster-gateway provides an externally published endpoint to facilitate connectivity for remote data-plane agents. It was discovered that the management APIs intended for internal use were erroneously hosted on this same externally accessible network listener. Because these management APIs lacked authentication or authorization checks, any party with network reachability to the cluster-gateway endpoint can interact with privileged data-plane operations. This exposes the ability to proxy the data plane's underlying Kubernetes API and execute arbitrary commands within workload pods. The vulnerability affects versions of the OpenChoreo cluster-gateway below 1.0.2, those between 1.1.0 and 1.1.1, and the 1.2.0 release line. The vulnerability is mitigated by moving management APIs to a non-public internal listener, restricting access to the external-facing gateway to agent-connection traffic only.\u003c/p\u003e\n\u003ch2 id=\"attack-chain\"\u003eAttack Chain\u003c/h2\u003e\n\u003col\u003e\n\u003cli\u003eAttacker performs network reconnaissance to identify exposed OpenChoreo cluster-gateway endpoints.\u003c/li\u003e\n\u003cli\u003eAttacker confirms the target is a multi-cluster deployment with an externally published listener.\u003c/li\u003e\n\u003cli\u003eAttacker sends unauthenticated HTTP requests to the identified management API paths on the gateway listener.\u003c/li\u003e\n\u003cli\u003eAttacker invokes privileged API operations intended for the OpenChoreo control-plane.\u003c/li\u003e\n\u003cli\u003eAttacker proxies requests to the underlying data-plane Kubernetes API.\u003c/li\u003e\n\u003cli\u003eAttacker leverages the proxied API access to target specific workload pods.\u003c/li\u003e\n\u003cli\u003eAttacker executes arbitrary commands or manipulates workloads, leading to full compromise.\u003c/li\u003e\n\u003c/ol\u003e\n\u003ch2 id=\"impact\"\u003eImpact\u003c/h2\u003e\n\u003cp\u003eSuccessful exploitation leads to a complete compromise of the data-plane workloads. This includes unauthorized data disclosure, unauthorized modification of services, and potential denial of service. The impact is significant for organizations relying on OpenChoreo for multi-cluster management, as the vulnerability bypasses existing control-plane authorization, granting an unauthenticated attacker the same privileges as an authenticated internal client.\u003c/p\u003e\n\u003ch2 id=\"recommendation\"\u003eRecommendation\u003c/h2\u003e\n\u003cp\u003ePrioritized actions for addressing CVE-2026-73843:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade OpenChoreo cluster-gateway to versions 1.0.2, 1.1.2, or 1.2.0 immediately to move management APIs to a secure internal listener.\u003c/li\u003e\n\u003cli\u003eFor deployments that cannot be patched immediately, apply firewall or network policy rules to restrict the externally published gateway endpoint to only allow traffic from authorized data-plane source addresses.\u003c/li\u003e\n\u003cli\u003eReview ingress and network telemetry to identify unauthorized access attempts to the management API paths on the cluster-gateway listener.\u003c/li\u003e\n\u003c/ul\u003e\n","date_modified":"2026-09-03T00:02:42Z","date_published":"2026-09-03T00:02:42Z","id":"https://feed.craftedsignal.io/briefs/2026-09-openchoreo-unauth-access/","summary":"OpenChoreo cluster-gateway versions prior to 1.0.2, 1.1.2, and 1.2.0 are vulnerable to unauthenticated access of management APIs on externally exposed listeners, enabling remote execution and cluster-wide compromise.","title":"Unauthenticated API Access in OpenChoreo Cluster-Gateway","url":"https://feed.craftedsignal.io/briefs/2026-09-openchoreo-unauth-access/"}],"language":"en","title":"CraftedSignal Threat Feed - Cpe:2.3:a:openchoreo:openchoreo:*:*:*:*:*:*:*:*","version":"https://jsonfeed.org/version/1.1"}