LiteLLM-pakken kjørte ved oppstart av Python, selv om du aldri importerte den
Sjekk om noe på maskinene dine installerte LiteLLM 1.82.7 eller 1.82.8 den 24. mars, også hvis du aldri har valgt LiteLLM selv.
To ondsinnede LiteLLM-utgivelser lå på PyPI i rundt 40 minutter og bar kode som høstet skynøkler, SSH-nøkler, Kubernetes-tokens og databasepassord fra maskinene som installerte dem. Pakkene var live fra klokken 10:39 UTC 24. mars før PyPI satte dem i karantene, men LiteLLM ber deg behandle enhver installasjon samme dag fram til 16:00 UTC som mistenkelig, skriver The Hacker News.
Detaljen som gjør denne verdt å sjekke selv om du mener du er utenfor, ligger i version 1.82.8. Den inneholdt en fil kalt litellm_init.pth, og Python behandler .pth-filer ved oppstart av tolken. Koden kjørte dermed hver gang en Python-prosess startet i miljøet, uavhengig av om noe importerte LiteLLM i det hele tatt. Prosjektets eget varsel peker på at en ulåst transitiv avhengighet, for eksempel en som trekkes inn av et agent-rammeverk eller et orkestreringsverktøy, kunne levere pakken uten at noen valgte den. Unit 42 har registrert at nyttelasten leste miljøvariabler med modellnøkler, blant dem OPENAI_API_KEY og ANTHROPIC_API_KEY, og sendte kryptert data videre til domenet models.litellm[.]cloud.
Opphavet ligger utenfor LiteLLM. Hendelsen er del av en større TeamPCP-kampanje knyttet til Aqua Securitys sårbarhetsskanner Trivy. Aqua opplyser at angriperne beholdt tilgang etter en ufullstendig nøkkelrotasjon og 19. mars force-pushet ondsinnede commits til 76 av 77 versjonstagger for trivy-action. Kompromitteringen spores som CVE-2026-33634 og kom inn i CISAs katalog over utnyttede sårbarheter 26. mars.
Hvordan pakkene faktisk nådde PyPI, spriker mellom rapportene: CloudSEK peker på en forgiftet build, LiteLLM på en opplasting utenom egen CI/CD, og Unit 42 på stjålne publiseringstokens. «Dette er ulike stadier i samme angrepskjede, ikke konkurrerende forklaringer», sier CloudSEK til The Hacker News. Nedstrømsskaden er uansett bekreftet: CERT-EU vurderer med høy sikkerhet at en AWS-konto hos Europakommisjonen ble kompromittert gjennom samme angrep, med rundt 91,7 GB komprimerte data på avveie.
Hva bør du gjøre?
- Let etter installasjoner av LiteLLM 1.82.7 eller 1.82.8 i revisjonsvinduet 24. mars mellom 10:39 og 16:00 UTC, på alle maskiner som kjører Python, ikke bare der du vet at gatewayen brukes.
- Roter hemmelighetene de systemene hadde tilgang til. En langlevd nøkkel som ble kopiert i vinduet, virker fortsatt i dag hvis ingen har byttet den, og FBI advarte i juli om at aktørene sannsynligvis tar dem i bruk lenge etter innbruddet.
- Søk i GitHub-organisasjonen etter repoer som heter tpcp-docs eller docs-tpcp. Aqua opplyser at skadevaren opprettet dem med prefikset tpcp-docs og lastet opp stjålne data som release-asset merket data og et tidsstempel, så et søk på eksakt navn kan bomme.
KI-kuratert — innholdet er generert av KI-agenter basert på originalkilden.