trivy-argo.json
Summary
Critical supply-chain & transitive vulnerability risk: LitmusChaos inherits outdated dependencies from older Argo Workflows versions (e.g., v3.3.x / v3.4.x era), including the archived/unmaintained github.com/google/gnostic protobuf/OpenAPI library (no security updates; replaced by maintained github.com/google/gnostic-models in Argo v3.5+ / v4.0.x+).
Trivy scans reveal CRITICAL privilege escalation (CVE-2025-32445 in Argo Events transitive deps) and multiple HIGH/CRITICAL issues in Go stdlib, x/crypto, net/http, etc.
CVE-2025-32445 allows users with limited permissions (e.g., create EventSource/Sensor CRs) to inject malicious containers → gain privileged host/cluster access, breaking isolation in multi-tenant setups.
Severity: Critical (CVSS ~9.9; actively exploitable risk).
Details
github.com/google/gnostic is deprecated/archived → no future security patches.
- Argo Workflows migrated to
github.com/google/gnostic-models in v3.5.x+.
- Litmus uses Argo Workflows → older versions propagate vulnerable dependencies.
Key Findings (Trivy Scan)
- CVE-2025-32445 (CRITICAL) – Argo Events PrivEsc → host compromise
- CVE-2022-1996 (CRITICAL) – go-restful auth bypass
- CVE-2024-45337 (CRITICAL) – golang.org/x/crypto SSH issue
- Multiple HIGH/CRITICAL issues in Go stdlib (net/http, crypto/tls, html/template)
PoC / Reproduction Steps & Testing Commands
Run the following in a cloned Litmus repo or your deployed cluster.
1. Check for unmaintained gnostic dependency
go list -m all | grep gnostic
Expected (vulnerable):
github.com/google/gnostic v0.x.x
2. Scan dependencies using Trivy
trivy fs . \
--vuln-type library \
--scanners vuln \
--severity CRITICAL,HIGH \
--format table
JSON output (attach to issue):
trivy fs . \
--vuln-type library \
--scanners vuln \
--severity CRITICAL,HIGH \
-f json -o trivy-litmus-deps.json
Expected snippet:
Library Vulnerability Severity
argo-events CVE-2025-32445 CRITICAL
emicklei/go-restful CVE-2022-1996 CRITICAL
golang.org/x/crypto CVE-2024-45337 CRITICAL
3. Check Argo Workflow Controller image version
kubectl get pods -n litmus \
-l app.kubernetes.io/name=workflow-controller \
-o jsonpath='{.items[0].spec.containers[0].image}'
Expected (vulnerable):
argoproj/workflow-controller:v3.3.x
4. Scan Argo image directly
trivy image argoproj/workflow-controller:v3.3.5 \
--severity CRITICAL,HIGH \
--scanners vuln
Expected: multiple CRITICAL/HIGH vulnerabilities.
5. Verify after upgrade (sanity check)
go list -m all | grep gnostic
Expected (fixed):
Impact
- Privilege escalation → cluster/host compromise
- Potential DoS and auth bypass
- CI/CD security scan failures
- Affects production Litmus deployments using Argo
Remediation Suggestion
Upgrade Argo Workflows to ≥ v3.5.5 (recommended: latest v4.x):
- Removes
gnostic, replaces with maintained models
- Fixes CVE-2025-32445 via Argo Events ≥ v1.9.6
- Updates vulnerable Go dependencies
Steps
- Update Argo images in Helm/manifests
- Update Go modules and run
go mod tidy
- Re-scan using Trivy
- Validate workflows
- Add dependency automation (Dependabot/Renovate)
Labels
kind/security
area/dependencies
priority/critical
Notes
Attach full Trivy JSON report and command outputs for verification.
trivy-argo.json
Summary
Critical supply-chain & transitive vulnerability risk: LitmusChaos inherits outdated dependencies from older Argo Workflows versions (e.g., v3.3.x / v3.4.x era), including the archived/unmaintained
github.com/google/gnosticprotobuf/OpenAPI library (no security updates; replaced by maintainedgithub.com/google/gnostic-modelsin Argo v3.5+ / v4.0.x+).Trivy scans reveal CRITICAL privilege escalation (CVE-2025-32445 in Argo Events transitive deps) and multiple HIGH/CRITICAL issues in Go stdlib, x/crypto, net/http, etc.
CVE-2025-32445 allows users with limited permissions (e.g., create EventSource/Sensor CRs) to inject malicious containers → gain privileged host/cluster access, breaking isolation in multi-tenant setups.
Severity: Critical (CVSS ~9.9; actively exploitable risk).
Details
github.com/google/gnosticis deprecated/archived → no future security patches.github.com/google/gnostic-modelsin v3.5.x+.Key Findings (Trivy Scan)
PoC / Reproduction Steps & Testing Commands
Run the following in a cloned Litmus repo or your deployed cluster.
1. Check for unmaintained gnostic dependency
go list -m all | grep gnosticExpected (vulnerable):
2. Scan dependencies using Trivy
trivy fs . \ --vuln-type library \ --scanners vuln \ --severity CRITICAL,HIGH \ --format tableJSON output (attach to issue):
trivy fs . \ --vuln-type library \ --scanners vuln \ --severity CRITICAL,HIGH \ -f json -o trivy-litmus-deps.jsonExpected snippet:
3. Check Argo Workflow Controller image version
kubectl get pods -n litmus \ -l app.kubernetes.io/name=workflow-controller \ -o jsonpath='{.items[0].spec.containers[0].image}'Expected (vulnerable):
4. Scan Argo image directly
Expected: multiple CRITICAL/HIGH vulnerabilities.
5. Verify after upgrade (sanity check)
go list -m all | grep gnosticExpected (fixed):
Impact
Remediation Suggestion
Upgrade Argo Workflows to ≥ v3.5.5 (recommended: latest v4.x):
gnostic, replaces with maintained modelsSteps
go mod tidyLabels
kind/security
area/dependencies
priority/critical
Notes
Attach full Trivy JSON report and command outputs for verification.