L'azienda Elementary Data ha segnalato una compromissione dei processi di GitHub Actions, grazie alla quale gli aggressori sono riusciti a pubblicare nel catalogo PyPI e nel repository GitHub una versione del pacchetto elementary-data 0.23.3, contenente codice malevolo per il furto di informazioni riservate dai sistemi degli utenti. La versione malevola è stata anche inclusa nell'immagine ufficiale Docker del progetto. Il mese scorso, il pacchetto elementary-data è stato scaricato dal repository PyPI oltre 1,1 milioni di volte.
La versione malevola è stata pubblicata il 25 aprile alle 1:20 (MSK) ed è rimasta disponibile per il download per oltre 11 ore (fino alle 12:45). L'attacco è stato effettuato tramite l'invio di una pull request con un commento appositamente formulato, che sfruttava una vulnerabilità nel gestore di GitHub Action attivato automaticamente. Gli aggressori sono riusciti a eseguire comandi shell nell'ambiente di integrazione continua ed estrarre il contenuto della variabile d'ambiente GITHUB_TOKEN con il token di accesso al repository. Questo token è stato utilizzato per creare diversi rami in git e preparare il rilascio.
Nella versione pubblicata dagli aggressori è stato incluso codice malevolo, codificato in formato base64 e attivato durante l'installazione del pacchetto. Il codice malevolo eseguiva la scansione del sistema e inviava dati riservati, come chiavi SSH e SSL/TLS, contenuto delle variabili d'ambiente, credenziali AWS, GCP, Azure e K8s, chiavi di wallet crittografici, password per database, cronologia delle operazioni nel terminale, file di configurazione per Git, CI/CD, gestori di pacchetti e Docker.
Fonte: opennet.ru
