PyPI-pakketten leveren ZiChatBot-malware via Zulip API’s op Windows en Linux

Cybersecurity-onderzoekers hebben drie pakketten ontdekt in de Python Package Index (PyPI)-repository die zijn ontworpen om heimelijk een voorheen onbekende malwarefamilie af te leveren, genaamd ZiChatBot op Windows- en Linux-systemen.

“Hoewel deze wielpakketten de functies implementeren die op hun PyPI-webpagina’s worden beschreven, is hun werkelijke doel het heimelijk afleveren van kwaadaardige bestanden”, aldus Kaspersky. “In tegenstelling tot traditionele malware communiceert ZiChatBot niet met een speciale command-and-control (C2) server, maar gebruikt hij in plaats daarvan een reeks REST API’s van de openbare teamchat-app Zulip als zijn C2-infrastructuur.”

De activiteit wordt door het Russische cyberbeveiligingsbedrijf omschreven als een “zorgvuldig geplande en uitgevoerde PyPI supply chain-aanval”. De namen van de pakketten die inmiddels zijn verwijderd, staan ​​hieronder vermeld:

  • uuid32-utils (1.479 downloads)
  • kleurrijk (614 downloads)
  • termncolor (387 downloads)

Alle drie de pakketten zijn in een korte periode tussen 16 en 22 juli 2025 naar PyPI geüpload. Terwijl uuid32-utils en colorinal gebruik maken van soortgelijke kwaadaardige payloads, is termncolor een goedaardig ogend pakket dat colorinal als afhankelijkheid vermeldt.

Op Windows-systemen extraheert de kwaadaardige code, zodra een van de eerste twee pakketten is geïnstalleerd, een DLL-dropper (“terminate.dll”) en schrijft deze naar schijf. Op het moment dat de bibliotheek in een project wordt geïmporteerd, wordt de DLL geladen, die fungeert als een dropper voor ZiChatBot, waarna deze een automatisch uitgevoerde vermelding in het Windows-register tot stand brengt en code uitvoert om zichzelf van de host te verwijderen.

De Linux-versie van de gedeelde objectdropper (“terminate.so”) plant de malware in het pad “/tmp/obsHub/obs-check-update” en configureert een crontab-item. Ongeacht het besturingssysteem waarop het draait, is ZiChatBot ontworpen om shellcode uit te voeren die wordt ontvangen van de C2-server. Na het uitvoeren van de opdracht verzendt de malware een hart-emoji als reactie om de server te laten weten dat de bewerking is geslaagd.

Wie er precies achter de campagne zit, is niet duidelijk. Kaspersky zei echter dat de dropper een “64% gelijkenis” deelt met een andere dropper die wordt gebruikt door een aan Vietnam verbonden hackgroep genaamd OceanLotus (ook bekend als APT32).

Eind 2024 werd waargenomen dat de bedreigingsacteur zich richtte op de Chinese cyberbeveiligingsgemeenschap met vergiftigde Visual Studio Code-projecten, vermomd als Cobalt Strike-plug-ins, om een ​​trojan af te leveren die automatisch wordt uitgevoerd wanneer het project wordt gecompileerd. De malware gebruikt de Notion-notitieservice als C2, volgens een analyse van ThreatBook.

Kaspersky wees erop dat als de PyPI-toeleveringsketencampagne inderdaad het werk van OceanLotus is, deze de strategie van de dreigingsactor vertegenwoordigt om zijn targetingbereik uit te breiden.

“Hoewel phishing-e-mails nog steeds een veel voorkomende initiële infectiemethode zijn voor OceanLotus, onderzoekt de groep ook actief nieuwe manieren om slachtoffers te compromitteren via diverse aanvallen op de toeleveringsketen”, aldus het rapport.

Thijs Van der Does