CVE-2025-62157

6.5 MEDIUM

📋 TL;DR

Argo Workflows versions before 3.6.12 and 3.7.0-3.7.2 expose artifact repository credentials in plaintext in workflow-controller pod logs. Attackers with pod log read permissions can steal these credentials to access artifact repositories. Organizations using vulnerable Argo Workflows versions on Kubernetes are affected.

💻 Affected Systems

Products:
  • Argo Workflows
Versions: Versions prior to 3.6.12 and versions 3.7.0 through 3.7.2
Operating Systems: Any OS running Kubernetes with Argo Workflows
Default Config Vulnerable: ⚠️ Yes
Notes: All deployments of affected versions are vulnerable if workflow-controller logs contain artifact repository credentials.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers gain artifact repository credentials, potentially accessing sensitive build artifacts, source code, or deploying malicious containers to production environments.

🟠

Likely Case

Internal attackers or compromised accounts with pod log access steal credentials to access artifact repositories, potentially exfiltrating sensitive data or tampering with artifacts.

🟢

If Mitigated

With strict RBAC limiting pod log access to trusted administrators only, credential exposure remains contained within the security perimeter.

🌐 Internet-Facing: LOW - This vulnerability requires access to Kubernetes pod logs, which are typically not directly internet-accessible.
🏢 Internal Only: HIGH - Internal attackers or compromised accounts with pod log permissions can easily exploit this to steal credentials.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires Kubernetes RBAC permissions to read pod logs in the namespace running Argo Workflows. Once obtained, credentials are visible in plaintext logs.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 3.6.12 or 3.7.3

Vendor Advisory: https://github.com/argoproj/argo-workflows/security/advisories/GHSA-c2hv-4pfj-mm2r

Restart Required: Yes

Instructions:

1. Update Argo Workflows to version 3.6.12 or 3.7.3 using your deployment method (Helm, kubectl, etc.). 2. Restart the workflow-controller pod to apply the fix. 3. Verify logs no longer contain plaintext credentials.

🔧 Temporary Workarounds

No official workarounds

all

The vendor advisory states no known workarounds exist. Updating to patched versions is required.

🧯 If You Can't Patch

  • Restrict RBAC permissions to prevent unauthorized users from reading pod logs in namespaces running Argo Workflows.
  • Implement log monitoring to detect access to workflow-controller logs and alert on suspicious credential exposure patterns.

🔍 How to Verify

Check if Vulnerable:

Check Argo Workflows version using 'kubectl get deployment -n <argo-namespace> argo-workflows -o jsonpath="{.spec.template.spec.containers[0].image}" | grep -oE '[0-9]+\.[0-9]+\.[0-9]+' and compare with affected versions.

Check Version:

kubectl get deployment -n <argo-namespace> argo-workflows -o jsonpath="{.spec.template.spec.containers[0].image}"

Verify Fix Applied:

After patching, check workflow-controller logs for plaintext credentials using 'kubectl logs -n <argo-namespace> <workflow-controller-pod> | grep -i "password\|token\|credential"' to confirm they are no longer exposed.

📡 Detection & Monitoring

Log Indicators:

  • Plaintext artifact repository credentials (passwords, tokens, keys) in workflow-controller pod logs
  • Unauthorized access attempts to read workflow-controller logs

Network Indicators:

  • Unexpected connections from workflow-controller pods to artifact repositories using stolen credentials

SIEM Query:

source="kubernetes" pod_name="workflow-controller-*" log_message=/(password|token|credential|key)\s*[:=]\s*[^\s]{8,}/i

🔗 References

📤 Share & Export