PyPI sotto attacco: ZiChatBot infetta Windows e Linux sfruttando Zulip come C2 invisibile
Featured

PyPI sotto attacco: ZiChatBot infetta Windows e Linux sfruttando Zulip come C2 invisibile

Una nuova campagna di supply chain attack ha colpito PyPI, il repository piu usato per distribuire pacchetti Python, sfruttando librerie apparentemente legittime per installare un malware in modo silenzioso su Windows e Linux. I ricercatori hanno individuato tre pacchetti pubblicati in un intervallo ristretto tra il 16 e il 22 luglio 2025: uuid32 utils, colorinal e termncolor.

Due di questi contenevano direttamente il payload malevolo, mentre termncolor si presentava come pacchetto innocuo ma dichiarava colorinal come dipendenza, creando una catena di installazione che poteva ingannare anche sviluppatori prudenti.

La particolarita di questa minaccia, chiamata ZiChatBot, e luso delle API REST di Zulip come infrastruttura di comando e controllo. Invece di contattare un server C2 dedicato e quindi piu facile da bloccare o inserire in blacklist, il malware sfrutta un servizio pubblico di team chat per ricevere istruzioni e inviare segnali di avvenuta esecuzione. Questo approccio rende piu complessa la difesa, perche il traffico verso piattaforme legittime puo apparire normale in molti ambienti aziendali.

Comportamento su Windows

Su Windows, dopo linstallazione di uuid32 utils o colorinal, il codice estrae un dropper in formato DLL chiamato terminate.dll e lo scrive su disco. Quando la libreria viene importata nel progetto, la DLL viene caricata e rilascia ZiChatBot. A quel punto viene creato un meccanismo di persistenza tramite una voce di auto avvio nel Registro di sistema e il dropper tenta anche di cancellarsi per ridurre le tracce.

Comportamento su Linux

Su Linux, il dropper e un file shared object terminate.so che deposita il malware nel percorso tmp obsHub obs check update e imposta una persistenza tramite crontab. In entrambi i sistemi operativi, ZiChatBot e progettato per eseguire shellcode ricevuto tramite il canale C2 basato su Zulip. Dopo lesecuzione, invia un semplice segnale di conferma per indicare che il comando e andato a buon fine.

Lattribuzione non e certa, ma sono stati osservati elementi di somiglianza con tecniche gia viste in campagne precedenti, suggerendo una possibile evoluzione verso attacchi alla catena di fornitura open source. Per ridurre il rischio su PyPI e fondamentale controllare dipendenze indirette, fissare versioni, verificare reputazione e cronologia dei pacchetti e adottare strumenti di scanning per individuare comportamenti anomali nei wheel e negli script di installazione.