Skip to main content

Argo Workflows CVE-2026-40886

| EUVDEUVD-2026-25267 HIGH
Improper Validation of Array Index (CWE-129)
2026-04-23 GitHub_M GHSA-5jv8-h7qh-rf5p
7.7
CVSS 3.1 · Vendor: GitHub_M
Share

Severity by source

Vendor (GitHub_M) PRIMARY
7.7 HIGH
AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:N/A:H
vuln.today AI
7.7 HIGH

Network-reachable but requires workflow-submit RBAC (PR:L); a single crafted pod crashes the shared controller (S:C) with availability-only impact (A:H, C:N/I:N).

3.1 AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:N/A:H
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:H
SUSE
HIGH
qualitative
Red Hat
7.7 HIGH
qualitative

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Changed
Confidentiality
None
Integrity
None
Availability
High

Lifecycle Timeline

6
Source Code Evidence Fetched
Jul 24, 2026 - 04:37 vuln.today
Analysis Generated
Jul 24, 2026 - 04:37 vuln.today
Patch released
Apr 28, 2026 - 14:09 nvd
Patch available
Patch available
Apr 23, 2026 - 20:31 EUVD
EUVD ID Assigned
Apr 23, 2026 - 19:00 euvd
EUVD-2026-25267
CVE Published
Apr 23, 2026 - 18:12 nvd
HIGH 7.7

DescriptionCVE.org

Argo Workflows is an open source container-native workflow engine for orchestrating parallel jobs on Kubernetes. From 3.6.5 to 4.0.4, an unchecked array index in the pod informer's podGCFromPod() function causes a controller-wide panic when a workflow pod carries a malformed workflows.argoproj.io/pod-gc-strategy annotation. Because the panic occurs inside an informer goroutine (outside the controller's recover() scope), it crashes the entire controller process. The poisoned pod persists across restarts, causing a crash loop that halts all workflow processing until the pod is manually deleted. This vulnerability is fixed in 4.0.5 and 3.7.14.

AnalysisAI

Denial of service in the Argo Workflows controller (versions 3.6.5 through 4.0.4, plus the 3.7.0-rc1 through 3.7.12 pre-releases) lets any user able to submit a workflow crash-loop the entire controller by attaching a malformed workflows.argoproj.io/pod-gc-strategy pod annotation that contains no '/' separator, triggering an out-of-range index panic in an informer goroutine that sits outside the controller's recover() scope. Because the poisoned pod persists across restarts, the controller enters CrashLoopBackOff and halts all workflow processing cluster-wide until the pod is manually deleted. A working proof-of-concept manifest is published in the GHSA advisory (SSVC exploitation status: poc), but there is no evidence of active exploitation and EPSS is very low at 0.04%.

Technical ContextAI

Argo Workflows is a CNCF container-native workflow engine that orchestrates parallel jobs on Kubernetes via a central controller that watches pods through a client-go informer. The root cause is CWE-129 (Improper Validation of Array Index): the podGCFromPod() function in workflow/controller/pod/controller.go splits the pod-gc-strategy annotation value on '/' and unconditionally reads parts[1], so any value lacking a slash produces a length-1 slice and panics with 'index out of range [1] with length 1'. The panic fires inside the pod informer's commonPodEvent handler, which runs in a separate informer goroutine that is not wrapped by the controller's top-level recover(), so instead of being contained the failure terminates the whole controller process. The regression was introduced by upstream change #14129 and back-ported into the 3.6.x line via #14263. The affected component is cpe:2.3:a:argoproj:argo-workflows.

RemediationAI

Vendor-released patch: upgrade to Argo Workflows 4.0.5 or 3.7.14, which add bounds checking before accessing the split annotation. Note that the 3.6.x line has no fixed release identified in the source data (fixed-in: None for the >= 3.6.5, <= 3.6.19 range), so 3.6.x operators should plan a migration to 3.7.14 or later rather than expecting a 3.6.x hotfix - review CRD and behavior changes for that minor-version jump against the GHSA advisory (https://github.com/argoproj/argo-workflows/security/advisories/GHSA-5jv8-h7qh-rf5p). Until patched, reduce exposure by tightening Kubernetes RBAC so untrusted tenants cannot create Workflows or set podMetadata annotations, and consider an admission-control policy (Kyverno or OPA Gatekeeper) that rejects or sanitizes any pod whose workflows.argoproj.io/pod-gc-strategy annotation value does not contain a '/'; the trade-off is added webhook maintenance and the risk of blocking legitimate custom GC-strategy values. If the controller is already crash-looping, the immediate recovery is to manually delete the poisoned pod (kubectl delete pod) so it stops re-triggering the panic on every restart.

CVE-2025-1974 CRITICAL POC
9.8 Mar 25

A critical vulnerability in Kubernetes ingress-nginx controller allows unauthenticated attackers with pod network access

CVE-2026-45321 CRITICAL POC
9.6 May 12

Credential-harvesting malware compromised 84 versions of 42 TanStack npm packages on 2026-05-11 via chained GitHub Actio

CVE-2025-1098 HIGH POC
8.8 Mar 25

Kubernetes ingress-nginx contains a configuration injection vulnerability via the mirror-target and mirror-host Ingress

CVE-2025-24514 HIGH POC
8.8 Mar 25

A security issue was discovered in ingress-nginx https://github.com/kubernetes/ingress-nginx where the `auth-url` Ingres

CVE-2025-1097 HIGH POC
8.8 Mar 25

A security issue was discovered in ingress-nginx https://github.com/kubernetes/ingress-nginx where the `auth-tls-match-c

CVE-2020-8554 MEDIUM POC
6.3 Jan 21

Kubernetes API server in all versions allow an attacker who is able to create a ClusterIP service and set the spec.exter

CVE-2023-3676 HIGH POC
8.8 Oct 31

A security issue was discovered in Kubernetes where a user that can create pods on Windows nodes may be able to escalate

CVE-2025-55190 CRITICAL POC
9.9 Sep 04

Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes. Rated critical severity (CVSS 9.9), this vulne

CVE-2026-34976 CRITICAL POC
10.0 Apr 02

Unauthenticated remote attackers can trigger complete database overwrites, server-side file reads, and SSRF attacks agai

CVE-2018-18843 CRITICAL POC
10.0 Dec 04

The Kubernetes integration in GitLab Enterprise Edition 11.x before 11.2.8, 11.3.x before 11.3.9, and 11.4.x before 11.4

CVE-2026-54680 CRITICAL POC
9.9 Jul 29

Fluentd configuration injection in the kube-logging Logging operator before 6.6.0 allows a namespace-scoped user who can

CVE-2026-22039 CRITICAL POC
9.9 Jan 27

Kyverno Kubernetes policy engine prior to 1.x has a privilege escalation vulnerability (CVSS 9.9) allowing policy bypass

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SUSE Linux Enterprise Server 16.1 Affected
SUSE Linux Enterprise Server for SAP applications 16.1 Affected
SUSE Linux Enterprise Module for Package Hub 15 SP5 Affected
SUSE Linux Enterprise Module for Package Hub 15 SP6 Affected
openSUSE Leap 15.5 Affected

Share

CVE-2026-40886 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy