Se encontraron seis paquetes maliciosos en PyPI, el índice de paquetes de Python, instalando malware para robar información y RAT (troyano de acceso remoto) mientras se usaba Cloudflare Tunnel para eludir las restricciones del firewall para el acceso remoto.
Los paquetes maliciosos intentan robar información confidencial del usuario almacenada en los navegadores, ejecutar comandos de shell y usar registradores de teclas para robar secretos escritos.
Los seis paquetes fueron descubiertos por el equipo de investigación de Phylum , que supervisa de cerca PyPI en busca de campañas emergentes
Los investigadores informan que estas extensiones maliciosas aparecieron por primera vez en el repositorio de paquetes el 22 de diciembre. Los actores de amenazas continuaron cargando otros paquetes hasta el último día del año.
Los seis paquetes maliciosos que Phylum detectó son los siguientes:
- pirologin – 165 descargas
- easytimestamp – 141 descargas
- discordia – 83 descargas
- discord-dev – 228 descargas
- estilo.py – 193 descargas
- pythonstyles – 130 descargas
Todos los paquetes ahora se han eliminado de PyPI, pero aquellos que los descargaron deberán desinstalar manualmente los restos de la infección, sobre todo los mecanismos de persistencia.
Funcionalidad de ladrón de información
El instalador (setup.py) de estos archivos contiene una cadena codificada en base64 que se descodifica en un script de PowerShell.
Esta secuencia de comandos establece el indicador ‘-ErrorAction SilentlyContinue’ para que la secuencia de comandos continúe silenciosamente, incluso si tiene errores, para evitar que los desarrolladores la detecten.
El script de PowerShell descargará un archivo ZIP desde un recurso remoto, lo descomprimirá en un directorio temporal local y luego instalará una lista de dependencias y paquetes adicionales de Python que hacen posible el control remoto y la captura de pantalla.
Dos paquetes adicionales se instalan silenciosamente durante esa etapa llamados ‘flask’ y ‘flask_cloudflared’.
Uno de los archivos en el ZIP, “server.pyw”, inicia cuatro subprocesos, uno para establecer la persistencia entre los reinicios del sistema, uno para hacer ping a un sitio de cebolla con proxy, uno para iniciar un registrador de pulsaciones de teclas y otro para robar datos de la máquina comprometida.
Los datos robados incluyen billeteras de criptomonedas, cookies y contraseñas del navegador, datos de Telegram, tokens de Discord y más. Estos datos se comprimen y se transmiten a través de transfer[.]sh a los atacantes, mientras que un ping al sitio de cebolla confirma la finalización del paso de robo de información.
También un troyano de acceso remoto
El script ahora ejecuta “cftunnel.py”, también incluido en el archivo ZIP, que se usa para instalar un cliente de Cloudflare Tunnel en la máquina de la víctima.
Cloudflare Tunnel es una oferta de servicio que permite a los clientes, incluso cuentas gratuitas, crear un túnel bidireccional desde un servidor directamente a la infraestructura de Cloudflare.
Esta conexión permite que los servidores web estén rápidamente disponibles públicamente a través de Cloudflare sin configurar firewalls, abrir puertos ni lidiar con otros problemas de enrutamiento.
Los actores de la amenaza usan este túnel para acceder de forma remota a un troyano de acceso remoto que se ejecuta en el dispositivo infectado como el script ‘Flask’, incluso si un firewall protege ese dispositivo.
La aplicación Flask utilizada por los atacantes, también conocida como “xrat”, puede robar el nombre de usuario y la dirección IP de la víctima, ejecutar comandos de shell en la máquina violada, filtrar archivos y directorios específicos, ejecutar código Python o descargar y lanzar cargas útiles adicionales.
Esta RAT también admite una fuente de escritorio remoto “en vivo” a una velocidad de un cuadro por segundo, que se activa tan pronto como la víctima escribe algo o mueve el mouse.
Este nuevo conjunto de aplicaciones cargadas en PyPI demuestra que las amenazas en la plataforma están evolucionando, volviéndose más innovadoras y potentes.
Desafortunadamente, eliminar los paquetes y prohibir las cuentas que los cargaron en PyPI no detiene a los actores de amenazas, ya que pueden volver a la acción usando nuevos nombres.
Además, incluso si las aplicaciones se eliminan de PyPi, todavía están en dispositivos infectados, lo que requiere que los desarrolladores las eliminen manualmente.
Si estos paquetes maliciosos lo infectaron, se recomienda encarecidamente que realice un análisis antivirus y luego cambie todas las contraseñas en los sitios web que visita con frecuencia.
referencia: bleepingcomputer