~/ramimac.me $
2026-03-19
Heating Up

TeamPCP Supply Chain Campaign

A multi-week, multi-ecosystem attack chain spanning GitHub Actions, Docker Hub, npm, PyPI, OpenVSX, VS Code Marketplace, and Jenkins. Impacted so far: Aqua's Trivy, Checkmarx KICS, LiteLLM, Bitwarden, TanStack, Mistral AI, AntV (323 packages), Microsoft DurableTask, GitHub (~3,800 internal repos), Red Hat Cloud Services (32 packages), +more.

Last updated: Reach me (tip? feedback?)
Loading timeline...
Download JSON
Loading indicators...

Payload Repositories

TeamPCP

aka UNC6780 (GTIG), PCPcat, Persy_PCP, ShellForce, CipherForce, DeadCatx3

Hybrid threat actor functioning as botnet, access broker, data-leak crew, and cloud exploitation group. Emerged late 2025. Brokers access to LAPSUS$, UNC6240/ShinyHunters, and Vect Ransomware. Partnerships with xpl0itrs and BreachForums ecosystem.

External Analysis

  • Flare.io — Dec 2025 worm campaign targeting cloud infrastructure
  • Beelzebub — Next.js exploit campaign, 59K compromises in 33 hours
  • Ransomware Interviews — "T" interview with TeamPCP member

The Official Soundtrack of the Trivy Supply Chain Attack

Every threat actor leaves fingerprints. TeamPCP left a playlist. Songs embedded in payloads, C2 infrastructure, and attack tooling.

FALSE
"hackerbot-claw compromised Trivy"
Spread:
Widely circulated
+

hackerbot-claw is an automated penetration testing bot that scans GitHub for vulnerable projects—its user agent and behavioral patterns differ from the main attacker. MegaGame10418 is the actor who exploited the February 27 PwnRequest, exfiltrating the aqua-bot PAT. Aqua's official post-mortem confirms: "The user agent and behavioral patterns of hackerbot-claw are different than the other events inspected."

FALSE
"Malicious commits landed in Trivy's main branch"
Spread:
Widely circulated
+

The imposter commits (1885610c, 70379aad) never merged into main. They exist in GitHub's object store due to cross-fork object sharing. The attack worked because a malicious tag (v0.69.4) was pushed that referenced these orphan commits—triggering CI/CD builds without any merge or review.

FALSE
"GhostClaw is related to TeamPCP"
Spread:
Limited spread
+

GhostClaw is a separate campaign with different TTPs and IOCs. TeamPCP uses tag hijacking and CI/CD exploitation; GhostClaw uses npm typosquatting and AI workflow hooks. Different infrastructure (registrars, C2 patterns), more social engineering-focused payloads (fake CLI installers with progress bars), and different persistence mechanisms (shell hooks, cron jobs vs. GitHub Actions). No shared IOCs or attribution overlap identified.

MISLEADING
"TeamPCP was behind the original Shai-Hulud worm"
Spread:
Widely circulated
+

TeamPCP's campaigns were inspired by and named after the Dune-themed Shai-Hulud malware, but they are distinct operations. The original Shai-Hulud worm preceded TeamPCP's activity. TeamPCP adopted the branding ("Mini Shai-Hulud") for their own campaigns, creating attribution confusion.

FALSE
"TeamPCP leaked Claude Code source code"
Spread:
Limited spread
+

The "Claude Code source leak" was not a TeamPCP operation. It resulted from a bundling mistake where JavaScript source was inadvertently included in a release. This was a build/packaging error, not a supply chain attack or breach.

MISLEADING
"TeamPCP forged SLSA Level 3 provenance attestations"
Spread:
Moderate spread
+

TeamPCP did not forge or cryptographically bypass SLSA attestations. They achieved RCE within the release pipeline itself (via cache poisoning and pull_request_target exploitation), meaning the attestations were legitimately generated for malicious code. The build system was compromised, not the attestation cryptography. Additionally, this attack vector was already documented—see slsa-framework/slsa#1235 (Nov 2024).

FALSE
"Megalodon was TeamPCP"
Spread:
Moderate spread
+

No shared infrastructure or hard evidence links Megalodon to TeamPCP. Some theorized Megalodon could have been the source of stolen credentials used in TeamPCP attacks, but infostealer logs as a credential source is a competing—and more plausible—explanation.

FALSE
"TeamPCP pivoted to using PureHVNC RAT"
Spread:
Limited spread
+

A PureHVNC campaign was briefly misattributed to TeamPCP based on superficial similarities. OpenSourceMalware's analysis found the overlap limited to generic malware behaviors shared by thousands of campaigns. Strong negative indicators—no shared cryptographic keys, no infrastructure overlap, no supply chain delivery, no shared tooling, no TeamPCP branding—make attribution untenable. Most likely a commodity cybercrime operator who purchased PureHVNC and customized delivery with a bespoke PowerShell loader.

MISLEADING
"Russian locale checks prove TeamPCP is Russian"
Spread:
Moderate spread
+

The ru_* locale exit condition is a common malware trope, not a reliable attribution indicator. Antiy Labs analysis offers a good breakdown of how TeamPCP deliberately mixes contradictory geopolitical markers: Russian folklore vocabulary with English anomalies ("RICHARD", "FIREBIRD"), Iranian/Israeli targeting in the same function, and destructive "roulette" logic that contradicts their profit motive. This is deliberate false-flag pollution, not authentic origin markers.

This site was created by Rami McCarthy (@ramimacisabird), Principal Security Researcher @ Wiz.