De hackergroep TeamPCP heeft het LiteLLM-pakket in de PyPI-repository gecompromitteerd en de afgelopen dagen kwaadaardige versies gepubliceerd. De Python-bibliotheek, die via één enkele API fungeert als een unifier van toegang tot verschillende grote taalmodelaanbieders, heeft de afgelopen maand meer dan 95 miljoen downloads geregistreerd en overschrijdt de 3,4 miljoen dagelijkse downloads. Versies 1.82.7 en 1.82.8 bevatten kwaadaardige code die gevoelige inloggegevens kon verzamelen en persistentiemechanismen kon installeren in getroffen omgevingen. Especialistas identificeerde het incident op 24 maart 2026 en de gecompromitteerde versies werden snel uit PyPI verwijderd.
LiteLLM fungeert als een gemeenschappelijke toegangspoort voor het integreren van kunstmatige-intelligentiediensten in ontwikkelingsprojecten. Qualquer import van de betrokken module activeerde de verborgen payload. Endor Labs geeft aan dat de kwaadaardige code in specifieke bestanden in het pakket is geïnjecteerd, waaronder proxy_server.py en een .pth-bestand dat automatisch wordt uitgevoerd bij het starten van de Python-interpreter.
- Onmiddellijke verificatie van installaties van versie 1.82.7 of 1.82.8 in on-premises omgevingen en CI/CD-pijplijnen.
- Dringende rotatie van alle blootgestelde SSH-sleutels, cloudtokens en geheimen.
- Inspectie van artefacten zoals verdachte .pth-bestanden en verkapte systemd-services.
Mechanisme voor het injecteren van schadelijke code
Kwaadwillige actoren hebben de met base64 gecodeerde payload in het litellm/proxy/proxy_server.py-bestand in de gecompromitteerde versies ingevoegd. De payload Essa wordt elke keer dat de module wordt geïmporteerd, gedecodeerd en uitgevoerd. Versie 1.82.8 heeft ook een litellm_init.pth-bestand toegevoegd dat automatische uitvoering garandeert wanneer de Python-omgeving wordt gestart, waardoor de reikwijdte van de aanval wordt vergroot, zelfs zonder direct gebruik van de bibliotheek.
De lading volgt een goed gedefinieerde reeks van drie stappen. Primeiro, voert systeemherkenning uit met opdrachten zoals hostnaam, whoami, uname en ip addr. Vervolgens verzamelt het diverse inloggegevens, waaronder SSH-sleutels, cloudconfiguraties voor AWS, GCP en Azure, Kubernetes servicetokens, .env-bestanden, databasegegevens, privé-TLS-sleutels en cryptocurrency-portemonneegegevens. Ten slotte probeert het laterale beweging op Kubernetes-clusters uit te voeren door bevoorrechte pods op elk knooppunt in te zetten.
Gegevens over inloggegevens en geheime diefstal
De TeamPCP Cloud Stealer variant infostealer-groepen verzamelden gegevens in een gecodeerd tpcp.tar.gz-bestand. Het Esse-bestand wordt verzonden naar de door de aanvaller gecontroleerde infrastructuur in het domein models.litellm.cloud. Een systeemservice vermomd als “Telemetria Sistema Service” onderhoudt periodiek contact met checkmarx.zone om extra payloads te downloaden en persistentie te garanderen.
Ontwikkelaars die LiteLLM gebruiken in AI-pijplijnen of applicaties die toegang hebben tot meerdere LLM-providers lopen een verhoogd risico op blootstelling. De aanval erft technische overeenkomsten met het eerdere compromis van de Aqua Security-scanner van Trivy, ook toegeschreven aan dezelfde groep. Relatos geeft aan dat er honderdduizenden gegevensextracties hebben plaatsgevonden, hoewel de exacte aantallen nog steeds onafhankelijk worden geverifieerd.
Eerdere aanvallen door de TeamPCP-groep
TeamPCP had het Trivy-project en de bijbehorende componenten van Aqua Security in de nabije toekomst al vastgelegd. De reeks incidenten uit Essa demonstreert een focus op tools die algemeen worden toegepast in de softwareontwikkelingsketen, vooral die welke zijn geïntegreerd met CI/CD-stromen en cloud-native omgevingen. De groep onderzocht ook Kubernetes-clusters met scripts die gedrag differentiëren per geografische regio.
De geïnstalleerde persistentie omvat een systemd backdoor die automatisch extra binaire bestanden ophaalt. Analistas heeft pogingen waargenomen om systemen in specifieke gedetecteerde configuraties volledig te wissen, terwijl in andere gevallen de focus blijft liggen op het stille verzamelen van geheimen.
Aanbevolen maatregelen voor getroffen organisaties
Organisaties moeten de installatielogboeken controleren en onmiddellijk upgraden naar versie 1.82.6 of hoger, die als schoon wordt beschouwd. Het rouleren van alle geheimen en tokens die op mogelijk getroffen apparaten worden gevonden, is een prioriteitsactie om de schade te beperken. Busca voor verdachte bestanden zoals ~/.config/sysmon/sysmon.py, /tmp/pglog en frauduleuze pods in de kube-systeemnaamruimte helpt bij het identificeren van resterende compromissen.
Het monitoren van uitgaand verkeer naar domeinen die verband houden met aanvallers vormt een aanvulling op de initiële acties. Especialistas onderstreept dat het regelmatig rouleren van referenties het risico op opeenvolgende aanvallen in de softwaretoeleveringsketen aanzienlijk verkleint. Equipes-beveiligingspersoneel moet Kubernetes-omgevingen inspecteren op ongeoorloofde zijdelingse bewegingen.
Aanhoudende technische analyse van de payload
De achterdeur die is geïnstalleerd als systeemgebruikersservice onderhoudt de communicatie met de externe server om verdere instructies te ontvangen. Dankzij de Essa-architectuur kunnen aanvallers de controle over geïnfecteerde systemen in de loop van de tijd uitbreiden. Het exfiltratiemechanisme codeert gegevens voordat ze worden verzonden, waardoor ze tijdens de overdracht moeilijk te detecteren zijn.
Ontwikkelaars die Python-afhankelijkheden in gedeelde omgevingen of containers onderhouden, moeten de recente installatiegeschiedenis controleren. De populariteit van LiteLLM in kunstmatige-intelligentieprojecten vergroot het potentiële bereik van het incident in moderne ontwikkelingsecosystemen.
Updates over het verwijderen van kwaadaardige versies
Versies 1.82.7 en 1.82.8 zijn uit PyPI verwijderd nadat het probleem was geïdentificeerd. Mantenedores van het project heeft beveiligingswaarschuwingen en richtlijnen voor gebruikers uitgegeven. De beveiligingsgemeenschap volgt de zaak om mogelijke gevolgen voor opslagplaatsen die transitief afhankelijk zijn van LiteLLM in kaart te brengen.
Onderzoekers blijven monsters van de malware analyseren om nieuwe varianten of aanvullend gedrag te identificeren. Usuários die de getroffen versies heeft geïnstalleerd, moet alle inloggegevens op hun systemen als potentieel openbaar beschouwen.