Recentemente, è stato scoperto dai ricercatori Phylum un caso intrigante che coinvolge il linguaggio di programmazione Go (Golang) e il Python Package Index (PyPI). Un pacchetto PyPI malevolo, travestito da fork del popolare pacchetto “requests“, è stato trovato contenere una backdoor nascosta all’interno di un file PNG. La steganografia, la tecnica di nascondere informazioni all’interno di altri file o messaggi, è stata utilizzata in questo caso per celare un binario Golang all’interno di un’immagine.
“Nascondono i dati, o in questo caso semplicemente li aggiungono, alla fine di un file PNG.“, spiegano i ricercatori, “Questa forma di steganografia è tutt’altro che nuova, ma il suo successo risiede nella sua semplicità e nel fatto che i dati aggiuntivi non interferiscono con la normale resa dell’immagine. Pertanto, l’immagine appare normale sia al software che all’utente finale, anche se contiene dati aggiuntivi.“
Il pacchetto PyPI malevolo
Il pacchetto “requests-darwin-lite” è stato pubblicato su PyPI con un file PNG di dimensioni sospettosamente grandi, circa 17MB, rispetto alla dimensione originale del logo di “requests” di 300KB. All’interno di questo file PNG era nascosto un binario Golang, identificato come una backdoor OSX/Sliver (framework C2 open source) da diversi programmi antivirus.
Il binario veniva eseguito durante l’installazione del pacchetto su sistemi macOS, ma solo se l’UUID del sistema corrispondeva a quello specificato dal creatore del pacchetto. Questo suggerisce che il pacchetto potrebbe essere stato creato con un bersaglio intenzionale o per scopi di test.
“Il fatto che cerchino un UUID specifico è interessante e potrebbe avere diverse implicazioni.”, si legge nel rapporto “Il primo e più ovvio è che si tratta di un attacco altamente mirato e che gli aggressori hanno già predeterminato il sistema bersaglio e ottenuto il suo UUID in qualche altro modo. D’altro canto, gli aggressori potrebbero semplicemente eseguire test operativi sulla propria infrastruttura, testando i meccanismi di distribuzione del malware“,
Implicazioni per la sicurezza
Questo caso solleva questioni importanti sulla sicurezza delle supply chain software e sull’importanza della vigilanza quando si utilizzano pacchetti da repository open-source. Inoltre la steganografia può essere uno strumento potente per gli sviluppatori legittimi, ma anche per gli attori malevoli che cercano di sfruttare le vulnerabilità nei sistemi informatici. È fondamentale rimanere vigili e implementare pratiche di sicurezza robuste per proteggere i sistemi dalle minacce nascoste.
Phylum ha immediatamente segnalato la scoperta a PyPI e l’intero pacchetto, comprese tutte le versioni, è stato rimosso.