Nouveau malware ZiChatBot distribué via des paquets PyPI malveillants
Des chercheurs en cybersécurité ont découvert une attaque de la chaîne d'approvisionnement ciblant le **Python Package Index (PyPI)**, distribuant une nouvelle famille de malware baptisée **ZiChatBot**. Le malware utilise l'application de chat d'équipe **Zulip** comme infrastructure de commande et contrôle (C2), échappant ainsi aux méthodes de détection traditionnelles.

Des chercheurs en cybersécurité ont découvert trois paquets sur le dépôt **Python Package Index (PyPI)** conçus pour distribuer discrètement une famille de malware inconnue jusqu'à présent, nommée **ZiChatBot**, sur les systèmes Windows et Linux.
« Bien que ces paquets wheel implémentent les fonctionnalités décrites sur leurs pages web PyPI, leur véritable objectif est de livrer de manière clandestine des fichiers malveillants », a déclaré **Kaspersky**. « Contrairement aux malwares traditionnels, ZiChatBot ne communique pas avec un serveur de commande et contrôle (C2) dédié, mais utilise plutôt une série d'API REST de l'application de chat d'équipe publique **Zulip** comme infrastructure C2. »
### Paquets Malveillants
L'activité a été décrite comme une « attaque de la chaîne d'approvisionnement PyPI soigneusement planifiée et exécutée » par la société russe de cybersécurité. Les paquets malveillants, qui ont depuis été retirés de PyPI, incluent :
* uuid32-utils (1 479 téléchargements)
* colorinal (614 téléchargements)
* termncolor (387 téléchargements)
Ces paquets ont été mis en ligne entre le 16 et le 22 juillet 2025. Alors que `uuid32-utils` et `colorinal` contiennent des charges utiles malveillantes similaires, `termncolor` liste `colorinal` comme dépendance.
### Processus d'Infection
Sur les systèmes Windows, l'installation de `uuid32-utils` ou `colorinal` extrait un dropper DLL (`terminate.dll`) et l'écrit sur le disque. Lorsque la bibliothèque est importée, la DLL se charge et agit comme un dropper pour ZiChatBot. Il établit ensuite une entrée d'exécution automatique dans le registre Windows et se supprime de l'hôte.
La version Linux du dropper de l'objet partagé (`terminate.so`) installe le malware dans le chemin `/tmp/obsHub/obs-check-update` et configure une entrée crontab. Indépendamment du système d'exploitation, ZiChatBot exécute le shellcode reçu de son serveur C2. Après avoir exécuté la commande, le malware envoie un emoji cœur en réponse pour signaler au serveur que l'opération a réussi.
### Attribution
L'acteur derrière cette campagne reste flou. Cependant, **Kaspersky** note une « similarité de 64 % » entre le dropper et un autre dropper utilisé par **OceanLotus** (alias APT32), un groupe de piratage aligné sur le Vietnam.
Fin 2024, **OceanLotus** a été observé ciblant la communauté de la cybersécurité chinoise avec des projets Visual Studio Code empoisonnés se faisant passer pour des plugins Cobalt Strike. Cette attaque a livré un cheval de Troie qui utilisait le service de prise de notes Notion comme C2, selon **ThreatBook**.
**Kaspersky** suggère que cette campagne de la chaîne d'approvisionnement PyPI, si elle est attribuée à **OceanLotus**, indique une expansion de la portée de ciblage de l'acteur de menace.
« Bien que les e-mails de phishing restent une méthode d'infection initiale courante pour OceanLotus, le groupe explore également activement de nouvelles façons de compromettre les victimes par le biais de diverses attaques de la chaîne d'approvisionnement », ont-ils déclaré.