# CVE-2026-54526: Argo Workflows: Incomplete fix for CVE-2026-31892: ArtifactGC.PodSpecPatch bypass of Strict/Secure templateReferencing

> Attackers can bypass Strict/Secure template referencing to inject privileged pod specs in Argo Workflows, enabling container escape and privilege escalation.

- **Severity:** High 8.9 (`CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N/SC:H/SI:H/SA:H`)
- **Exploited in the wild:** Not known
- **Login needed:** Any signed-in user
- **Attackable:** Over the internet
- **Victim action needed:** Not needed
- **Fix available:** Yes
- **Published:** 16 Jul 2026
- **Updated:** 17 Jul 2026
- **Also known as:** BIT-argo-workflows-2026-54526, ECHO-09ab-52a5-d9b1, GHSA-48p8-g2fx-3wwm, GO-2026-6223, MINI-32gv-m334-9wfw, MINI-42g5-cw32-r4c6, MINI-69wg-794g-3h9x, MINI-893w-fcp5-5f55, MINI-f945-jq28-688c, MINI-fjcp-jv2h-58rg, MINI-fjvg-h89f-ggjj, MINI-g4jg-5vxp-79ff, MINI-h9xw-rqm5-8wp5, MINI-qw3w-hr4r-x6v8, MINI-qwcq-6w83-4hch, MINI-rrc7-jvrm-45rf, MINI-v8fw-rcqp-h76h, MINI-wq55-w3p6-mx3v

## What is CVE-2026-54526?

CVE-2026-54526 is a high-severity vulnerability in argoproj argo-workflows, published on 16 Jul 2026. Any signed-in user can exploit it over the network, with no action from the victim.

### Official description

Argo Workflows is an open source container-native workflow engine for orchestrating parallel jobs on Kubernetes. Prior to 3.7.15 and 4.0.6, the allow-list fix for CVE-2026-31892 is incomplete because workflow/util/merge.go ValidateUserOverrides and SanitizeUserWorkflowSpec walk only the top-level fields of WorkflowSpec via reflection, and WorkflowSpec.ArtifactGC is allow-listed wholesale; the struct behind that field, WorkflowLevelArtifactGC, has a PodSpecPatch sub-field whose contents flow unmodified into util.ApplyPodSpecPatch on the artifact-GC pod, the same sink the original fix closed for WorkflowSpec.PodSpecPatch, so a user submitting a Workflow under templateReferencing: Strict or Secure (against a referenced WorkflowTemplate that declares an output artifact and setting spec.artifactGC.strategy: OnWorkflowCompletion) can still inject an arbitrary strategic merge patch into the artifact-GC pod, including hostPath volumes, privileged: true, arbitrary image and command, and hostNetwork: true, defeating the stated purpose of Strict/Secure reference mode. This issue is fixed in versions 3.7.15 and 4.0.6.

Weakness: CWE-284 (Improper Access Control)

## Which versions are affected by CVE-2026-54526?

11 open source packages ship an affected version, including github.com/argoproj/argo-workflows, argo-workflows and github.com/argoproj/argo-workflows/v2. It affects 1 product.


| Package | Ecosystem | Affected | Fixed in |
| --- | --- | --- | --- |
| `github.com/argoproj/argo-workflows` | Go | All versions | None |
| `github.com/argoproj/argo-workflows` | Go | All versions to 2.5.3-rc4 | None |
| `github.com/argoproj/argo-workflows` | Go | All versions to 2.5.3-rc4 | None |
| `argo-workflows` | Bitnami | All versions | 3.7.15, 4.0.6 |
| `github.com/argoproj/argo-workflows/v2` | Go | All versions | None |
| `github.com/argoproj/argo-workflows/v3` | Go | All versions | 3.7.15 |
| `github.com/argoproj/argo-workflows/v3` | Go | All versions | 3.7.15 |
| `github.com/argoproj/argo-workflows/v3` | Go | All versions | 3.7.15 |
| `github.com/argoproj/argo-workflows/v4` | Go | From 4.0.0 | 4.0.6 |
| `github.com/argoproj/argo-workflows/v4` | Go | From 4.0.0 | 4.0.6 |
| `github.com/argoproj/argo-workflows/v4` | Go | From 4.0.0 | 4.0.6 |

Products: Argoproj Argo Workflows.

## How do I fix CVE-2026-54526?

Upgrade to a fixed version.

## Is CVE-2026-54526 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-54526 exists.

## Other vulnerabilities in argoproj argo-workflows

- [CVE-2026-28229](https://insights.sbomify.com/CVE-2026-28229/): Argo Workflows has unauthorized access to Argo Workflows Template (critical 9.8)
- [CVE-2026-31892](https://insights.sbomify.com/CVE-2026-31892/): WorkflowTemplate Security Bypass via podSpecPatch in Strict/Secure Reference Mode (high 8.9)
- [CVE-2026-42295](https://insights.sbomify.com/CVE-2026-42295/): Argo Workflows: Exposure of artifact repository credentials (high 8.5)
- [CVE-2026-42297](https://insights.sbomify.com/CVE-2026-42297/): Argo Workflows Is Missing Authorization in Sync ConfigMap Provider (high 8.5)
- [CVE-2025-62157](https://insights.sbomify.com/CVE-2025-62157/): Argo Workflows exposes artifact repository credentials in workflow-controller logs (high 8.5)

## Fix prompt for AI coding agents

```text
Check this codebase for CVE-2026-54526 and fix it if it is affected.

What it is: CVE-2026-54526 is a high-severity vulnerability in argoproj argo-workflows, published on 16 Jul 2026. Any signed-in user can exploit it over the network, with no action from the victim.
Exploitation: It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-54526 exists.

Affected packages and fixed versions:
- github.com/argoproj/argo-workflows (Go): affected all versions; no fix listed
- github.com/argoproj/argo-workflows (Go): affected all versions up to 2.5.3-rc4; no fix listed
- github.com/argoproj/argo-workflows (Go): affected all versions up to 2.5.3-rc4; no fix listed
- argo-workflows (Bitnami): affected all versions; fixed in 3.7.15, 4.0.6
- github.com/argoproj/argo-workflows/v2 (Go): affected all versions; no fix listed
- github.com/argoproj/argo-workflows/v3 (Go): affected all versions; fixed in 3.7.15
- github.com/argoproj/argo-workflows/v3 (Go): affected all versions; fixed in 3.7.15
- github.com/argoproj/argo-workflows/v3 (Go): affected all versions; fixed in 3.7.15
- github.com/argoproj/argo-workflows/v4 (Go): affected from 4.0.0; fixed in 4.0.6
- github.com/argoproj/argo-workflows/v4 (Go): affected from 4.0.0; fixed in 4.0.6
- github.com/argoproj/argo-workflows/v4 (Go): affected from 4.0.0; fixed in 4.0.6

Task:
1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.
2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.
3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.
4. Run the tests and summarise what changed and why.
5. If nothing in the project is affected, say so and change nothing.

Reference: https://insights.sbomify.com/CVE-2026-54526/ (Markdown: https://insights.sbomify.com/CVE-2026-54526/index.md)
```

## Sources

- CVE record: https://www.cve.org/CVERecord?id=CVE-2026-54526
- NVD: https://nvd.nist.gov/vuln/detail/CVE-2026-54526
- OSV: https://osv.dev/vulnerability/CVE-2026-54526

---
From sbomify Insights: https://insights.sbomify.com/CVE-2026-54526/
Summaries are generated and may contain mistakes; the official description above is the record.
