
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-33634 is a supply chain compromise (CWE-506: Embedded Malicious Code) affecting the Aqua Security Trivy ecosystem. On March 19, 2026, a threat actor (tracked as TeamPCP / UNC6780) 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 was a continuation of an initial supply chain attack that began in late February 2026, where non-atomic credential rotation allowed the attacker to retain access. Affected components include: aquasecurity/trivy v0.69.4 (Go/container image), aquasecurity/trivy-action versions 0.0.1–0.34.2, and aquasecurity/setup-trivy versions 0.2.0–0.2.6 (prior to safe recreation of 0.2.6). The CVE carries a CVSS v3.1 score of 8.8 (High) and a CVSS v4.0 score of 9.4 (Critical) (Github Advisory, Trivy Discussion).
The root cause is classified as CWE-506 (Embedded Malicious Code), introduced via compromised release credentials rather than a code vulnerability in Trivy itself. For the v0.69.4 binary, the attacker pushed a malicious commit (1885610c) that swapped the actions/checkout reference to an imposter commit (70379aad) containing a composite action that downloaded malicious Go source files from a typosquatted domain (scan.aquasecurtiy.org), and added --skip=validate to goreleaser to bypass binary validation. For trivy-action, the attacker force-pushed 76 tags to malicious commits that injected an infostealer into entrypoint.sh; this code dumped Runner.Worker process memory via /proc/<pid>/mem, swept 50+ filesystem paths for credentials, encrypted collected data using AES-256-CBC with RSA-4096 hybrid encryption, and transmitted it to attacker-controlled infrastructure. A fallback mechanism created a public tpcp-docs repository on the victim's GitHub account to upload stolen data if direct exfiltration failed. A detailed technical walkthrough of the attack chain, including the injected shell code, is available at (RoseSecurity).
Any CI/CD pipeline that executed a compromised Trivy version during the exposure windows had all accessible secrets — including SSH keys, AWS/GCP/Azure credentials, Kubernetes tokens, Docker configs, .env files, database passwords, and cryptocurrency wallets — subject to exfiltration. The malware operated with the full privileges of the GitHub Actions runner process, enabling complete confidentiality, integrity, and availability compromise of the affected pipeline environment. Downstream impact extended beyond Trivy itself: the litellm PyPI packages (v1.82.7, v1.82.8) and Telnyx Python SDK were also compromised as part of the same TeamPCP campaign, and real-world victims included organizations such as the European Commission (via CERT-EU attribution) and Cisco, with the compromise entering an extortion phase via the VECT ransomware affiliate program (Github Advisory, Halcyon).
CVE-2026-33634 was actively exploited in the wild and was added to CISA's Known Exploited Vulnerabilities (KEV) catalog on March 26, 2026, with a remediation due date of April 9, 2026 (CISA KEV). The EPSS score is approximately 20.8–23.9%, placing it in the 96th percentile for exploitation likelihood. The threat actor is tracked as TeamPCP (also attributed by Google GTIG as UNC6780), a financially motivated group that conducted a broad supply chain campaign targeting developer tooling including Checkmarx, KICS, LiteLLM, and Telnyx. A detailed exploit walkthrough with actual injected shell code is publicly available (RoseSecurity), and a community-developed scanner for affected versions exists (CVE-2026-33634 Scanner). Microsoft published detection and defense guidance for the attack (Microsoft Blog).
scan.aquasecurtiy.org, note the transposed letters) and provisioned TLS certificates to serve as a C2/exfiltration endpoint.actions/checkout to an imposter commit (70379aad) that downloaded malicious Go source files from the typosquatted domain. The --skip=validate flag was added to goreleaser to bypass validation, and the commit was tagged as v0.69.4, triggering the release pipeline.trivy-action version tags and all 7 setup-trivy tags to malicious commits containing an infostealer injected into entrypoint.sh.entrypoint.sh ran before the legitimate Trivy scan, dumping Runner.Worker process memory via /proc/<pid>/mem and sweeping 50+ filesystem paths for SSH keys, cloud credentials, Kubernetes tokens, .env files, and crypto wallets.scan.aquasecurtiy.org (IP: 45.148.10.212).INPUT_GITHUB_PAT was set, the malware created a public tpcp-docs-<random> repository on the victim's GitHub account and uploaded stolen data as a release asset.Network:
scan.aquasecurtiy.org (note typosquatted spelling — extra 'r' in 'security')45.148.10.212https://models.litellm.cloud/ (for litellm-related compromise)scan.aquasecurtiy.org from CI/CD runner hostsFile System:
litellm_init.pth in Python site-packages/ directory (SHA256: ceNa7wMJnNHy1kRnNCcwJaFjWX3pORLfMh7xGL8TUjg)385d498d18a3a7c67878ca7322716f9da25683eb1a4bf9e9592da0d5f2ab09f6 for Linux-64bit.tar.gz)sha256:27f446230c60bbf0b70e008db798bd4f33b7826f9f76f756606f5417100beef3 for 0.69.4)GitHub / Repository Artifacts:
tpcp-docs-* or tpcp-docs in your GitHub organization (fallback exfiltration indicator)data- in such repositoriesaquasecurity/trivy-action tags 0.0.1–0.34.2 (non-v-prefixed) or aquasecurity/setup-trivy versions 0.2.0–0.2.5Logs:
aquasecurity/trivy-action or aquasecurity/setup-trivycurl or network activity during Trivy scan steps/proc/<pid>/mem from runner processesProcess:
/proc/*/mem.ssh/, .aws/, .kube/, .docker/) (Github Advisory, Trivy Discussion)Immediate Actions:
trivy-action v0.35.0 (pinned to SHA aquasecurity/trivy-action@57a97c7); setup-trivy v0.2.6 (pinned to SHA aquasecurity/setup-trivy@3fb12ec).scan.aquasecurtiy.org and IP 45.148.10.212 at the network perimeter.aquasecurity/trivy-action or aquasecurity/setup-trivy; check run logs from March 19–20, 2026.tpcp-docs* in your GitHub organization.The incident generated significant industry attention. Aqua Security published a detailed customer advisory and security blog post, and Microsoft published detection and defense guidance on March 24, 2026 (Microsoft Blog). CISA added the vulnerability to its KEV catalog on March 26, 2026, with a 14-day remediation deadline. Canada's Cyber Centre (cyber.gc.ca) issued advisory AV26-283. Security researchers at Wiz, Arctic Wolf, Kaspersky, Legit Security, SOCRadar, and StepSecurity all published detailed analyses of the attack chain. The Hacker News community and Reddit's r/kubernetes and r/devsecops communities actively discussed the incident. CERT-EU later attributed a breach of the European Commission's infrastructure to this supply chain attack, and Halcyon reported the compromise entered an extortion phase via the VECT ransomware affiliate program. Google's GTIG formally tracked TeamPCP as UNC6780. The incident was widely cited as one of the most significant supply chain attacks of 2026, with downstream victims including Checkmarx, LiteLLM, Telnyx, Databricks (alleged), and Cisco (Github Advisory, Arctic Wolf, Halcyon).
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."