What Happened Inside LiteLLM's Build Pipeline in March
The intrusion did not start with LiteLLM itself. TeamPCP first compromised the Trivy open-source security scanner by exploiting a leaked automation token, gaining roughly a 20-day window inside Trivy's own repository before anyone noticed. During that window, the group force-pushed malicious code into Trivy's version tags - the specific release markers that downstream projects point to when they pull a dependency.
LiteLLM's continuous integration pipeline installed Trivy without pinning it to a fixed, verified version, so it automatically pulled the poisoned release the next time the pipeline ran. That single unpinned dependency was the entire opening TeamPCP needed: the malicious code rode into LiteLLM's own build process, and from there into two published packages, LiteLLM versions 1.82.7 and 1.82.8, uploaded to the Python Package Index.
The Defense Everyone Trusts, and How It Was Bypassed
Most developers who worry about malicious PyPI packages rely on the --ignore-scripts flag, which stops a package's install-time scripts from running arbitrary code. TeamPCP's payload did not need an install script. It shipped inside a .pth file, a Python path-configuration file that the interpreter itself executes automatically at startup, on every run, regardless of how the package was installed. That design choice is the detail every headline about this breach left out, and it is the one that matters most to any engineering team that thought --ignore-scripts made them safe from this exact attack class.
Once running, the payload harvested SSH keys, cloud credentials for AWS, Google Cloud and Azure, Kubernetes tokens, the contents of .env files, and AI provider API keys from any machine that had installed the poisoned package. The stolen data was encrypted with AES-256 and sent either to a typosquatted domain built to look like a legitimate LiteLLM or Trivy resource, or uploaded directly into repositories on the victim's own GitHub account - a detail that let the operation blend into normal-looking developer activity rather than trigger an obvious outbound-traffic alert.
2,500 Companies, Eight Named in Europe, and a Five-Month Gap
CloudSEK published its research on August 11, 2026, five months after the March compromise, identifying more than 2,500 organizations and approximately 434,000 CI/CD pipelines as potentially exposed - what the firm calls the largest AI supply-chain breach uncovered so far in 2026. Among the high-confidence matches CloudSEK names are Siemens AG, Siemens Energy, Deutsche Bahn AG, Orange S.A., Vodafone Group Plc, the London Stock Exchange Group, the Finnish energy company Fortum Oyj and the reinsurer Munich Re, spanning manufacturing, telecommunications, rail, finance and insurance across multiple European jurisdictions.
CloudSEK is explicit that a company appearing in its dataset is not automatic proof of a successful breach - the finding means credentials, domains, repositories or infrastructure tied to that organization surfaced in the harvested exposure data, and each organization needs its own investigation to confirm what, if anything, was actually taken or misused. What is not in question is the five-month gap between the March intrusion and the August disclosure, a window in which any of the named organizations could have been operating on infrastructure with compromised credentials and no public warning that the compromise had happened.
What This Means for Anyone Running AI Infrastructure Tooling
The FBI's July 2026 FLASH advisory adds an uncomfortable detail to the timeline: the credentials harvested in March are still considered live and usable months later, and the bureau expects TeamPCP or affiliated actors to weaponize them in future, unrelated intrusions rather than let them expire. For any organization that ran LiteLLM versions 1.82.7 or 1.82.8 in production or CI during March 2026, the correct response is not to wait for individual confirmation from CloudSEK or LiteLLM - it is to treat every credential that touched that build pipeline as compromised and rotate it now, five months late or not.
The structural lesson extends past LiteLLM. Any organization that lets its CI pipeline pull a security-tooling dependency, such as a scanner, without pinning it to a verified version has the same opening TeamPCP used here, and --ignore-scripts is not the safeguard most teams believe it to be against a payload delivered through a .pth file. European security leads running AI infrastructure tooling built on the same open-source supply chain should treat this less as a LiteLLM story and more as a preview of how the next AI-tooling compromise will most likely be delivered.
Read next: 141,006 Test Runs Held Three Real Breaches | Micron Says 2027 Will Be Tighter Than 2026



