Un recente attacco malware su Python Package Index (PyPI) ha sollevato preoccupazioni sulla sicurezza delle librerie open source. Il pacchetto in questione, requests-darwin-lite
, è stato scoperto da Phylum, utilizzando un approccio sofisticato di steganografia per nascondere un binario Go malevolo all’interno di un’immagine PNG.
Dettagli dell’Attacco

Il pacchetto requests-darwin-lite
mirava specificamente agli utenti di macOS, modificando il processo di installazione per eseguire codice arbitrario tramite una classe PyInstall
modificata nel file setup.py
. Questa classe era programmata per decodificare e eseguire comandi nascosti in una stringa codificata in base64, solamente se il sistema corrispondeva a un UUID specifico. Il binario Go era nascosto all’interno di un’immagine PNG sovradimensionata, apparentemente innocua, che era molto più grande del normale.
Tecniche di Steganografia Usate
L’attacco utilizzava tecniche di steganografia, nascondendo dati binari all’interno di un file immagine PNG senza alterarne la visualizzazione normale. L’immagine, pur funzionando come un logo legittimo, conteneva dati malevoli alla fine del file, che venivano estratti e eseguiti durante l’installazione del pacchetto.
Risposta e Misure di Sicurezza
Phylum ha immediatamente segnalato la scoperta a PyPI, che ha prontamente rimosso il pacchetto e tutte le sue versioni. Questo incidente sottolinea l’importanza di un’attenta verifica del codice e delle dipendenze, soprattutto in ambienti open source dove il codice può essere facilmente manipolato da attori malevoli.
Questo attacco evidenzia una crescente sofisticatezza nelle tecniche utilizzate dagli attaccanti per sfruttare le piattaforme di distribuzione di software. Gli sviluppatori e gli utenti di sistemi basati su pacchetti devono essere estremamente vigilanti e implementare robuste misure di sicurezza e verifiche per proteggere le infrastrutture software dai malware. Questo caso di malware tramite PyPI è un chiaro promemoria dei rischi associati alle librerie e dipendenze open source e della necessità di adottare pratiche di sicurezza informatica avanzate e continue verifiche del codice.