L'azienda Elementary Data ha riportato una compromissione dei processi di GitHub Actions, che ha permesso agli attaccanti di pubblicare nel catalogo PyPI e nel repository GitHub una versione del pacchetto elementary-data 0.23.3, in cui è stato inserito codice dannoso per rubare informazioni riservate dai sistemi degli utenti. La versione malevola è stata anche inclusa nell'immagine Docker ufficiale del progetto. Il mese scorso, il pacchetto elementary-data è stato scaricato oltre 1,1 milioni di volte dal repository PyPI.
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 è avvenuto tramite l'invio di una pull request con un commento appositamente formattato, sfruttando una vulnerabilità nel gestore GitHub Action invocato automaticamente. Gli attaccanti sono riusciti a eseguire comandi shell nell'ambiente di integrazione continua ed estrarre il contenuto della variabile d'ambiente GITHUB_TOKEN contenente il token di accesso al repository. Questo token è stato utilizzato per creare diversi rami in git e preparare la versione.
Nel rilascio pubblicato dagli aggressori era incluso un codice malevolo, codificato in formato base64 e attivato durante l'installazione del pacchetto. Il codice malevolo effettuava la scansione del sistema e inviava dati riservati, come chiavi SSH e SSL/TLS, contenuti delle variabili ambientali, credenziali per AWS, GCP, Azure e K8s, chiavi dei portafogli crittografici, password per i database, cronologia delle operazioni nel terminale, file di configurazione da Git, CI/CD, gestori di pacchetti e Docker.
Fonte: opennet.ru
