builderall


Investigadores en ciberseguridad han descubierto un paquete malicioso en el repositorio Python Package Index (PyPI) que introduce un comportamiento malicioso a través de una dependencia que le permite establecer persistencia y lograr la ejecución de código.


El paquete, denominado termncolor, lleva a cabo su maliciosa funcionalidad a través de un paquete dependiente llamado colorinal mediante una operación de malware en varias etapas, según Zscaler ThreatLabz. Mientras que termncolor se descargó 355 veces, colorinal atrajo 529 descargas. Ambas bibliotecas ya no están disponibles en PyPI.


"Este ataque podría aprovechar la carga lateral de DLL para facilitar el descifrado, establecer la persistencia y llevar a cabo la comunicación de comando y control (C2), lo que daría lugar a la ejecución remota de código", según los investigadores Manisha Ramcharan Prajapati y Satyam Singh.


Una vez instalado y ejecutado, termncolor está diseñado para importar colorinal, que, a su vez, carga una DLL maliciosa responsable de descifrar y ejecutar la carga útil de la siguiente etapa.


En concreto, la carga útil despliega un binario legítimo "vcpktsvr.exe" y una DLL llamada "libcef.dll" que se inicia mediante la carga lateral de DLL. La DLL, por su parte, es capaz de recopilar información del sistema y comunicarse con el servidor C2 utilizando Zulip, una aplicación de chat de código abierto, para ocultar la actividad.


"La persistencia se logra creando una entrada en el registro bajo la clave Ejecutar de Windows para garantizar la ejecución automática del malware al iniciar el sistema", explicó Zscaler.


El malware también es capaz de infectar sistemas Linux, ya que las bibliotecas Python descargan un archivo de objeto compartido llamado "terminate.so" para desplegar la misma funcionalidad.


Un análisis más detallado de la actividad del actor malicioso en Zulip ha revelado la presencia de tres usuarios activos dentro de la organización creada, con un total de 90 692 mensajes intercambiados dentro de la plataforma. Se cree que el autor del malware lleva activo desde el 10 de julio de 2025.


"El paquete termncolor y su dependencia maliciosa colorinal ponen de relieve la importancia de supervisar los ecosistemas de código abierto para detectar posibles ataques a la cadena de suministro", afirmó la empresa.


La revelación se produce después de que SlowMist revelara que los actores maliciosos están atacando a los desarrolladores bajo la apariencia de una evaluación laboral para engañarlos y que clonen un repositorio de GitHub que contiene un paquete npm con una trampa capaz de recopilar datos de iCloud Keychain, navegadores web y carteras de criptomonedas, y filtrar los detalles a un servidor externo.



Los paquetes npm también están diseñados para descargar y ejecutar scripts de Python, capturar información del sistema, escanear el sistema de archivos en busca de archivos confidenciales, robar credenciales, registrar pulsaciones de teclas, realizar capturas de pantalla y supervisar el contenido del portapapeles.


La lista de paquetes identificados, ahora eliminados de npm, se encuentra a continuación:




En los últimos meses, se han detectado paquetes npm maliciosos dirigidos a la comunidad de ciberseguridad con el fin de facilitar el robo de datos y la minería de criptomonedas a través de un paquete dependiente, utilizando servicios legítimos como Dropbox para extraer la información de los sistemas infectados.


Estos paquetes, según señalaron los investigadores de Datadog Christophe Tafani-Dereeper y Matt Muir, se distribuyen a los objetivos bajo la apariencia de código malicioso de prueba de concepto (PoC) para detectar fallos de seguridad, o de un parche del kernel que supuestamente ofrece mejoras de rendimiento. La actividad se ha atribuido a un agente malicioso al que se le ha asignado el nombre MUT-1244.


Este desarrollo también sigue a un informe de ReversingLabs que ha revelado los riesgos asociados a las actualizaciones automáticas de dependencias, especialmente cuando un proyecto comprometido es utilizado por miles de otros proyectos, lo que amplifica los riesgos para la cadena de suministro de software.


Esto queda ejemplificado por el reciente compromiso del paquete npm eslint-config-prettier mediante un ataque de phishing que permitió a unos atacantes anónimos introducir versiones maliciosas directamente en el registro npm sin necesidad de realizar commits del código fuente ni pull requests en su repositorio GitHub correspondiente.


La empresa de seguridad de la cadena de suministro de software descubrió que más de 14 000 paquetes han declarado eslint-config-prettier como dependencia directa, en lugar de declararlo como devDependency, lo que ha provocado que acciones automatizadas como GitHub Actions fusionen automáticamente las alertas de actualización de dependencias emitidas por Dependabot sin examinarlas.


"Dado que se trata de una configuración para una herramienta de desarrollo utilizada para el formateo de código, es de esperar que se declare como una dependencia de desarrollo (devDependency) en todos los paquetes en los que se utiliza y, como tal, no debería instalarse automáticamente al ejecutar el comando npm install, como ocurre con las dependencias normales", afirmó el investigador de seguridad Karlo Zanki.


"Las herramientas de gestión de versiones automatizadas, como Dependabot, están diseñadas para eliminar el riesgo de tener dependencias con problemas de seguridad en el código base, pero [...] irónicamente, pueden acabar introduciendo problemas de seguridad aún mayores, como compromisos maliciosos".


Fuente: thehackernews