El Equipo Japonés de Respuesta a Incidentes de Seguridad Informática (JPCERT/CC) informa de que el conocido grupo de hackers norcoreano Lazarus ha descargado cuatro paquetes PyPI maliciosos con el fin de infectar a los desarrolladores con malware.
PyPI (Python Package Index) es un repositorio de software libre que los desarrolladores de software pueden utilizar en sus proyectos Python para añadir funcionalidad extra a sus programas con un mínimo esfuerzo.
La falta de controles estrictos en la plataforma permite a los actores de amenazas descargar paquetes maliciosos como malware de robo de información y puertas traseras que infectan los ordenadores de los desarrolladores con malware cuando se añaden a sus proyectos.
Este malware permite al grupo de hackers acceder a la red del desarrollador, donde se dedican al fraude financiero o comprometen proyectos de software para llevar a cabo ataques a la cadena de suministro.
Lazarus ya utilizó PyPI para distribuir malware en agosto de 2023, cuando hackers patrocinados por el Estado norcoreano enviaron paquetes disfrazados de módulos conectores de VMware vSphere.
Nuevos paquetes PyPi de Lazarus
Hoy, JPCERT/CC informa de que Lazarus ha vuelto a subir paquetes a PyPi que instalarán el cargador de malware «Comebacker».
Los cuatro nuevos paquetes que JPCERT/CC atribuye a Lazarus son los siguientes:
- pycryptoenv – 743 downloads
- pycryptoconf – 1344 downloads
- quasarlib – 778 downloads
- swapmempool – 392 downloads
Los nombres de los dos primeros paquetes crean un falso vínculo con el proyecto legítimo ‘pycrypto‘ (Python Cryptography Toolkit), una colección de funciones hash seguras y varios algoritmos de cifrado que se descargan 9 millones de veces al mes.
Ninguno de los cuatro paquetes está disponible actualmente en PyPI, ya que fueron retirados del repositorio ayer mismo.
Sin embargo, la plataforma de seguimiento de estadísticas de descargas PePy informa de un número total de instalaciones de 3.252, lo que significa que miles de sistemas se han visto comprometidos por el malware Lazarus.
Los paquetes maliciosos comparten una estructura de archivos similar, conteniendo un archivo «test.py» que en realidad no es un script de Python, sino un archivo DLL codificado con XOR ejecutado por el archivo «init.py», que también se incluye en el paquete.
La ejecución de test.py desencadena la descodificación y creación de archivos DLL adicionales que falsamente parecen ser archivos de base de datos, como se muestra en el siguiente diagrama.
La agencia japonesa de ciberseguridad afirma que la carga útil final (IconCache.db), ejecutada en memoria, es un malware conocido como «Comebacker», identificado por primera vez por analistas de Google en enero de 2021, quienes informaron de que había sido utilizado contra investigadores de seguridad.
El malware Comebacker se conecta al servidor de comando y control (C2) del atacante, envía una solicitud HTTP POST con cadenas codificadas y espera a que otro malware de Windows se cargue en la memoria.
Basándose en varios indicadores, JPCERT/CC cree que este último ataque es una nueva oleada de la misma campaña de la que informó Phylum en noviembre de 2023, que implicaba cinco paquetes npm de temática criptográfica.
Lazarus tiene un largo historial de irrupción en redes corporativas para llevar a cabo fraudes financieros, normalmente para robar criptomonedas.
Los ataques anteriores atribuidos a Lazarus incluyen el robo de Ethereum por valor de 620 millones de dólares del puente de red Ronin de Axie Infinity y otros robos de criptodivisas de Harmony Horizon, Alphapo, CoinsPaid y Atomic Wallet.
En julio, GitHub advirtió de que Lazarus se dirigía a desarrolladores de empresas de blockchain, criptomonedas, apuestas online y ciberseguridad con repositorios maliciosos.