Security Vulnerability Report
中文
CVE-2026-33634 CVSS 8.8 HIGH

CVE-2026-33634

Published: 2026-03-23 22:16:31
Last Modified: 2026-03-30 18:50:38

Description

Trivy is a security scanner. On March 19, 2026, a threat actor used compromised credentials to publish a malicious Trivy v0.69.4 release, force-push 76 of 77 version tags in `aquasecurity/trivy-action` to credential-stealing malware, and replace all 7 tags in `aquasecurity/setup-trivy` with malicious commits. This incident is a continuation of the supply chain attack that began in late February 2026. Following the initial disclosure on March 1, credential rotation was performed but was not atomic (not all credentials were revoked simultaneously). The attacker could have use a valid token to exfiltrate newly rotated secrets during the rotation window (which lasted a few days). This could have allowed the attacker to retain access and execute the March 19 attack. Affected components include the `aquasecurity/trivy` Go / Container image version 0.69.4, the `aquasecurity/trivy-action` GitHub Action versions 0.0.1 – 0.34.2 (76/77), and the`aquasecurity/setup-trivy` GitHub Action versions 0.2.0 – 0.2.6, prior to the recreation of 0.2.6 with a safe commit. Known safe versions include versions 0.69.2 and 0.69.3 of the Trivy binary, version 0.35.0 of trivy-action, and version 0.2.6 of setup-trivy. Additionally, take other mitigations to ensure the safety of secrets. If there is any possibility that a compromised version ran in one's environment, all secrets accessible to affected pipelines must be treated as exposed and rotated immediately. Check whether one's organization pulled or executed Trivy v0.69.4 from any source. Remove any affected artifacts immediately. Review all workflows using `aquasecurity/trivy-action` or `aquasecurity/setup-trivy`. Those who referenced a version tag rather than a full commit SHA should check workflow run logs from March 19–20, 2026 for signs of compromise. Look for repositories named `tpcp-docs` in one's GitHub organization. The presence of such a repository may indicate that the fallback exfiltration mechanism was triggered and secrets were successfully stolen. Pin GitHub Actions to full, immutable commit SHA hashes, don't use mutable version tags.

CVSS Details

CVSS Score
8.8
Severity
HIGH
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Configurations (Affected Products)

cpe:2.3:a:aquasec:setup-trivy:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:a:aquasec:trivy:0.69.4:*:*:*:*:go:*:* - VULNERABLE
cpe:2.3:a:aquasec:trivy_action:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:a:litellm:litellm:1.82.7:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:a:litellm:litellm:1.82.8:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:a:telnyx:telnyx:4.87.1:*:*:*:*:python:*:* - VULNERABLE
cpe:2.3:a:telnyx:telnyx:4.87.2:*:*:*:*:python:*:* - VULNERABLE
aquasecurity/trivy v0.69.4
aquasecurity/trivy-action v0.0.1 - v0.34.2
aquasecurity/setup-trivy v0.2.0 - v0.2.6 (malicious commits)

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
#!/bin/bash # PoC: Check for indicators of CVE-2026-33634 compromise in the environment # This script checks for the malicious version tag and the fallback repository. echo "Checking for CVE-2026-33634 Indicators of Compromise..." # 1. Check for malicious Trivy version in usage if grep -r "aquasecurity/trivy-action" .github/workflows/ 2>/dev/null | grep -E "@v(0\.[0-2]\.|0\.3[0-4]\.|0\.69\.4)"; then echo "[ALERT] Potentially vulnerable trivy-action version reference found in workflows." fi # 2. Check for malicious setup-trivy version if grep -r "aquasecurity/setup-trivy" .github/workflows/ 2>/dev/null | grep -E "@v0\.2\.[0-6]"; then echo "[ALERT] Potentially vulnerable setup-trivy version reference found." fi # 3. Check for fallback exfiltration repository 'tpcp-docs' if gh repo list 2>/dev/null | grep -q "tpcp-docs"; then echo "[CRITICAL] Fallback exfiltration repository 'tpcp-docs' detected!" fi echo "Check complete."

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-33634", "sourceIdentifier": "[email protected]", "published": "2026-03-23T22:16:31.290", "lastModified": "2026-03-30T18:50:38.270", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "Trivy is a security scanner. On March 19, 2026, a threat actor used compromised credentials to publish a malicious Trivy v0.69.4 release, force-push 76 of 77 version tags in `aquasecurity/trivy-action` to credential-stealing malware, and replace all 7 tags in `aquasecurity/setup-trivy` with malicious commits. This incident is a continuation of the supply chain attack that began in late February 2026. Following the initial disclosure on March 1, credential rotation was performed but was not atomic (not all credentials were revoked simultaneously). The attacker could have use a valid token to exfiltrate newly rotated secrets during the rotation window (which lasted a few days). This could have allowed the attacker to retain access and execute the March 19 attack. Affected components include the `aquasecurity/trivy` Go / Container image version 0.69.4, the `aquasecurity/trivy-action` GitHub Action versions 0.0.1 – 0.34.2 (76/77), and the`aquasecurity/setup-trivy` GitHub Action versions 0.2.0 – 0.2.6, prior to the recreation of 0.2.6 with a safe commit. Known safe versions include versions 0.69.2 and 0.69.3 of the Trivy binary, version 0.35.0 of trivy-action, and version 0.2.6 of setup-trivy. Additionally, take other mitigations to ensure the safety of secrets. If there is any possibility that a compromised version ran in one's environment, all secrets accessible to affected pipelines must be treated as exposed and rotated immediately. Check whether one's organization pulled or executed Trivy v0.69.4 from any source. Remove any affected artifacts immediately. Review all workflows using `aquasecurity/trivy-action` or `aquasecurity/setup-trivy`. Those who referenced a version tag rather than a full commit SHA should check workflow run logs from March 19–20, 2026 for signs of compromise. Look for repositories named `tpcp-docs` in one's GitHub organization. The presence of such a repository may indicate that the fallback exfiltration mechanism was triggered and secrets were successfully stolen. Pin GitHub Actions to full, immutable commit SHA hashes, don't use mutable version tags."}, {"lang": "es", "value": "Trivy es un escáner de seguridad. El 19 de marzo de 2026, un actor de amenaza utilizó credenciales comprometidas para publicar una versión maliciosa de Trivy v0.69.4, forzar el envío de 76 de 77 etiquetas de versión en `aquasecurity/trivy-action` a malware de robo de credenciales, y reemplazar las 7 etiquetas en `aquasecurity/setup-trivy` con commits maliciosos. Este incidente es una continuación del ataque a la cadena de suministro que comenzó a finales de febrero de 2026. Tras la divulgación inicial el 1 de marzo, se realizó la rotación de credenciales pero no fue atómica (no todas las credenciales fueron revocadas simultáneamente). El atacante podría haber utilizado un token válido para exfiltrar secretos recién rotados durante la ventana de rotación (que duró unos pocos días). Esto podría haber permitido al atacante retener el acceso y ejecutar el ataque del 19 de marzo. Los componentes afectados incluyen la imagen Go / contenedor `aquasecurity/trivy` versión 0.69.4, las versiones 0.0.1 – 0.34.2 (76/77) de la GitHub Action `aquasecurity/trivy-action`, y las versiones 0.2.0 – 0.2.6 de la GitHub Action `aquasecurity/setup-trivy`, antes de la recreación de la 0.2.6 con un commit seguro. Las versiones seguras conocidas incluyen las versiones 0.69.2 y 0.69.3 del binario de Trivy, la versión 0.35.0 de trivy-action, y la versión 0.2.6 de setup-trivy. Además, tome otras mitigaciones para asegurar la seguridad de los secretos. Si existe alguna posibilidad de que una versión comprometida se haya ejecutado en el entorno de uno, todos los secretos accesibles a las pipelines afectadas deben ser tratados como expuestos y rotados inmediatamente. Verifique si la organización de uno extrajo o ejecutó Trivy v0.69.4 de cualquier fuente. Elimine cualquier artefacto afectado inmediatamente. Revise todos los flujos de trabajo que utilizan `aquasecurity/trivy-action` o `aquasecurity/setup-trivy`. Aquellos que referenciaron una etiqueta de versión en lugar de un SHA de commit completo deben revisar los registros de ejecución del flujo de trabajo del 19 al 20 de marzo de 2026 en busca de signos de compromiso. Busque repositorios llamados `tpcp-docs` en la organización de GitHub de uno. La presencia de dicho repositorio puede indicar que el mecanismo de exfiltración de respaldo se activó y los secretos fueron robados con éxito. Fije las GitHub Actions a hashes SHA de commit completos e inmutables, no use etiquetas de versión mutables."}], "metrics": {"cvssMetricV40": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "4.0", "vectorString": "CVS ... (truncated)