Er is een schadelijke release van de LiteLLM-bibliotheek ontdekt in de PyPI-repository, die 23 miljoen downloads per week telt, evenals de injectie van schadelijke code in de officiĆ«le Docker-image van het project. Dit is niet het eerste dergelijke incident met LiteLLM ā in maart van dit jaar hebben aanvallers al schadelijke releases gepubliceerd nadat ze de inloggegevens van de maintainer hadden onderschept. Dit keer hebben de aanvallers versie LiteLLM 1.107.0 gepubliceerd, waarin schadelijke code is ingebouwd voor het uitvoeren van commando's op afstand, en voor het zoeken en verzenden van inloggegevens, sleutels en toegangstokens.
De schadelijke code is tijdens het bouwproces toegevoegd zonder dat de git-repository werd gecompromitteerd. Na installatie wordt de schadelijke code geactiveerd vóór de import van LiteLLM door de bestanden cook.pth, cook.py en sitecustomize.py in de Python-bibliotheekdirectory te installeren. Deze bestanden worden uitgevoerd bij elke Python-run in het systeem zonder dat de gebruiker enige actie hoeft te ondernemen.
In eerste instantie start Python het bestand cook.pth, dat slechts één regel bevat: 'import cook' om het script cook.py, dat inloggegevens verzamelt, te importeren. Vervolgens wordt het script sitecustomize.py geïmporteerd, dat wordt gebruikt voor het op de achtergrond laden van externe code (de laadparameters worden bepaald via de link 'raw.githubusercontent.com/letters9813/pythonclient-test/main/domain.txt'). De schadelijke code in beide scripts is gecomprimeerd via zlib en gecodeerd met Base64. Een indicatie van compromittering kan de verschijning van de bestanden '/tmp/.pc_once_*' en '/tmp/remote_code_loader.lock' in het systeem zijn.
Na activatie voert het bestand cook.py een scan uit van de verbindingsparameters naar cloudservices, repositories en continue integratiesystemen (AWS, Azure, Google Cloud, Kubernetes, Docker, GitHub CLI, Vault, Terraform, Packer), ontwikkelaarsaccounts, Git-verbindingsparameters, npm- en PyPI-instellingen, bestanden met omgevingsvariabelen, privƩsleutels voor SSH, PGP en TLS, instellingen van AI-tools, browser-databases met cookies, opgeslagen gegevens en geschiedenis, en informatie over processen en omgevingsvariabelen. Gevonden gegevens worden versleuteld met behulp van AES-256-CBC + RSA-4096 en verzonden in de vorm van een verificatieverzoek naar de door de aanvallers gemaakte website litellm.dev.
Bron: opennet.ru
