CVE-2021-37914: Argo Workflows Expression Template Evaluation Vulnerability

argo-workflows Updated 02 Oct 2025

Summary

06/03/2024
Yes i
Medium
Not published

CVE-2021-37914: In Argo Workflows through 3.1.3, if EXPRESSION_TEMPLATES is enabled and untrusted users are allowed to specify input parameters when running workflows, an attacker may be able to disrupt a workflow because expression tem... Affects argo-workflows versions < 3.1.4. Fixed in 3.1.4. How to fix ↓

Also tracked for

The same CVE-2021-37914 is tracked separately for each ecosystem and vendor. Its fix information is the same; the package and affected versions differ.

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Sponsored Devnack Penetration testing for web, API and mobile Manual testing by engineers who build software, not an auditor's checklist. Trusted by teams at Swift and Google Talk to Devnack

Background

Argo Workflows is an open-source container-native workflow engine for orchestrating parallel jobs on Kubernetes. It allows users to define complex workflows using a declarative YAML syntax. Argo Workflows supports the use of expression templates, which enable users to dynamically generate values based on input parameters. However, in versions prior to 3.1.3, if EXPRESSION_TEMPLATES is enabled and untrusted users are allowed to specify input parameters when running workflows, an attacker may be able to disrupt a workflow by exploiting the evaluation of expression template output.

Vulnerability Detail

The vulnerability (CVE-2021-37914) in Argo Workflows arises due to the improper evaluation of expression template output. When untrusted users have the ability to provide input parameters for workflow execution, an attacker can inject malicious expressions that disrupt the workflow. This can lead to various consequences, such as denial of service or unauthorized access to sensitive data. The vulnerability is considered medium severity with a CVSSv3 score of 4.3.

How To Fix

Minimum fixed version

3.1.4

This is the first release that contains the fix.

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Workaround

If upgrading to the latest version is not immediately feasible, a temporary workaround is to disable the EXPRESSION_TEMPLATES feature or restrict access to untrusted users. By disabling the feature, the evaluation of expression template output is bypassed, mitigating the vulnerability. However, this may limit the functionality of workflows that rely on expression templates.

Conclusion

The Argo Workflows Expression Template Evaluation Vulnerability (CVE-2021-37914) can be mitigated by upgrading to version 3.1.3 or later. Users should follow the provided upgrade instructions to ensure their installation is secure. If immediate upgrade is not possible, disabling the EXPRESSION_TEMPLATES feature or restricting access to untrusted users can serve as a temporary workaround. For further support on vulnerability remediation, please contact DevNack.com.

See every vulnerability recorded for argo-workflows →

Share this vulnerability

FAQ

Argo Workflows is an open-source container-native workflow engine for orchestrating parallel jobs on Kubernetes.

The vulnerability allows an attacker to disrupt workflows by injecting malicious expressions, potentially leading to denial of service or unauthorized access to sensitive data.

The vulnerability is considered medium severity with a CVSSv3 score of 4.3.

To fix this vulnerability, upgrade to Argo Workflows version 3.1.3 or later.

Yes, a temporary workaround is to disable the EXPRESSION_TEMPLATES feature or restrict access to untrusted users.

Related vulnerabilities

Recent vulnerabilities recorded for argo-workflows.

How To Fix

Minimum fixed version

3.1.4

This is the first release that contains the fix.

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback