CVE intelligence and bounded remediation
CVE-2026-26189 — Trivy Action runs Trivy as GitHub action to scan a Docker container image for vulnerabilities
Trivy Action runs Trivy as GitHub action to scan a Docker container image for vulnerabilities. A command injection vulnerability exists in `aquasecurity/trivy-action` versions 0.31.0 through 0.33.1 due to improper handling of action inputs when exporting environment variables. The action writes `export VAR=<input>` lines to `trivy_envs.txt` based on user-supplied inputs and subsequently sources this file in `entrypoint.sh`. Because input values are written without appropriate shell escaping, attacker-controlled input containing shell metacharacters (e.g., `$(...)`, backticks, or other command substitution syntax) may be evaluated during the sourcing process. This can result in arbitrary command execution within the GitHub Actions runner context. Version 0.34.0 contains a patch for this issue. The vulnerability is exploitable when a consuming workflow passes attacker-controlled data into any action input that is written to `trivy_envs.txt`. Access to user input is required by the malicious actor. Workflows that do not pass attacker-controlled data into `trivy-action` inputs, workflows that upgrade to a patched version that properly escapes shell values or eliminates the `source ./t…
- Severity
- High
- CVSS
- 8.1 (3.1)
- Published
- 2026-02-19
- CISA KEV
- Not currently listed
- Ecosystem
- software/application
- Weaknesses
- CWE-78
Affected products
- aquasec / trivy_action
Matched remediation archetype
Command, code, expression, and template injection
This catalog composition supplies bounded fallback guidance. Explicitly reviewed curated workflows load with the complete record below.
Check exposure
- Trace untrusted values to process execution, interpreters, evaluators, template engines, dynamic imports, and administrative scripting features.
- Determine whether the affected path is reachable across each trust boundary and which service account or host privilege it inherits.
- Review configuration for optional execution features, unsafe compatibility modes, and shell invocation.
Remediate safely
- Replace string-built commands or evaluated code with fixed operations and structured argument APIs that do not invoke a shell.
- Use strict allowlists for operation identifiers and reject unexpected input before it reaches any interpreter.
- Update the affected component and add inert regression tests covering metacharacters, encoding variants, and alternate request paths.
Authoritative sources
Complete CVE record and remediation plan
The detailed catalog view below loads this exact record, its source evidence, and the full seven-phase agentic change plan.