Sull'azione PyPI sono stati caricati rilasci malevoli della libreria LiteLLM, che conta 95 milioni di download al mese

Gli sviluppatori della libreria Python LiteLLM, che conta 95 milioni di download al mese e 3,5 milioni nelle ultime 24 ore, hanno comunicato la compromissione del progetto. Gli attaccanti sono riusciti a intercettare le credenziali del maintainer e a pubblicare su PyPI due versioni dannose — 1.82.7 e 1.82.8, contenenti codice per il furto di chiavi e password dai sistemi degli utenti. Attualmente, le versioni dannose sono state rimosse da PyPI e il progetto è temporaneamente sospeso fino al termine dell'indagine.

Il token di accesso all'account LiteLLM su PyPI è caduto nelle mani degli attaccanti a causa dell'uso, nel sistema di integrazione continua, di uno scanner di sicurezza delle dipendenze chiamato trivvy. Prima di questo, alla fine di febbraio, gli attaccanti erano riusciti a ottenere accesso all'infrastruttura del progetto Trivy sfruttando una vulnerabilità nel gestore pull_request_target, attivato nel sistema di integrazione continua di Trivy. Dopo la compromissione, gli attaccanti hanno pubblicato versioni dannose di Trivy 0.69-0.69, sostituendo il gestore GitHub Action trivy-action e inserendo un'immagine Docker modificata contenente Trivy.

Il 24 marzo alle 11:30 (MSK), le credenziali intercettate del maintainer di LiteLLM (krrishdholakia) sono state utilizzate per pubblicare direttamente versioni dannose di LiteLLM 1.82.7 e 1.82.8 su PyPI, bypassando il CI/CD ufficiale di GitHub. Il repository del progetto su GitHub non ha subito danni: l'attività malevola è stata osservata solo su PyPI. Nella versione LiteLLM 1.82.7, il codice dannoso è stato incorporato nel file litellm/proxy/proxy_server.py e si è attivato all'importazione di litellm.proxy. Nella versione 1.82.8 è stato incluso il file site-packages/litellm_init.pth, e nel file proxy_server.py è stato aggiunto un gestore, impacchettato in formato base64 e attivato ad ogni avvio.

Il codice dannoso aggiunto eseguiva la scansione e l'invio di dati riservati. Sono stati inviati chiavi SSH e SSL/TLS trovate nel sistema, il contenuto delle variabili d'ambiente, credenziali per AWS, GCP, Azure e K8s, chiavi per portafogli crittografici, password per i database, cronologia delle operazioni nel terminale, file di configurazione da Git, CI/CD, gestori di pacchetti e Docker. I dati trovati venivano crittografati utilizzando algoritmi AES-256-CBC + RSA-4096 e inviati tramite una richiesta HTTP POST al sito "https://models.litellm.cloud/" (dominio litellm.cloud è stato registrato poche ore prima della pubblicazione delle versioni dannose).

Si consiglia agli utenti di LiteLLM di verificare l'assenza del file litellm_init.pth nella directory site-packages, aggiornare tutte le chiavi e le credenziali in caso di installazione della versione 1.82.7 o 1.82.8, fissare versioni specifiche di LiteLLM nei parametri di caricamento delle dipendenze e confrontare le versioni utilizzate di LiteLLM con il codice delle versioni su GitHub.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster