Shell Script Malicioso Roba Credenciales de la Nube

En ataques de cryptomining pasados, los shell scripts maliciosos se usaban típicamente como downloaders. Sin embargo, casos recientes muestras que ahora sirven otros propósitos como el robo de datos sensibles. 

__________________________________________________________________


Recientemente descubrimos nuevos ataques donde, de nuevo, los actores maliciosos usaron
shell scripts para realizar actividades ilícitas. Estos scripts vinieron de una imagen en un repositorio público de containers; los usuarios deben estar conscientes de los riesgos de seguridad que implican correrlas, ya que pueden contener elementos maliciosos como backdoors. Revisando los ataques previos, estos scripts maliciosos se usaron típicamente para desplegar cryptominers. Pero casos recientes que involucran estas muestras destacan cómo se desarrollan estos scripts y cómo pueden servir otros propósitos además de ser downloaders para cryptominers. 

 

Basándonos en sus URLs de comando y control, algunas strings, cryptokeys y el lenguaje usado en las muestras, hemos deducido que este último ataque proviene del arsenal de TeamTNT. 

 

Es shell script malicioso usado aquí fue desarrollado en Bash. Comparado con ataques similares pasados, la técnica de desarrollo fue mucho más refinada para este script; no había líneas sin fin de código y las muestras estaban bien escritas y organizadas por función con nombres descriptivos. 

 

[image url=”https://www.trendmicro.com/content/dam/trendmicro/global/en/research/21/a/malicious-shell-script-steals-cloud-credentials/Figure-1-Code-snippets-showing-functions.png” raw=”true” alignment=”center” margin_left=”0″ margin_right=”0″ margin_top=”0″ margin_bottom=”0″ width=”315″ height=”469″]

Figura 1. Muestra de código y sus funciones 

 

Las primeras funciones detonadas por el shell script preparan el ambiente, asegurándose de que las siguientes fases van a tener los recursos, herramientas y poder de cómputo necesario, entre otros. También revisa la presencia de soluciones de seguridad. 

 

El shell script también descarga algunas herramientas de greyware que se usarán en el futuro para buscar otros blancos. Estas herramientas llevan a cabo escaneo y mapeo que se utilizarán para localizar nuevas APIs vulnerables. 

 

Después de que el ambiente está configurado, el shell script entonces busca la información sensible, obtiene una copia y sube todo a un servidor C&C. 

 

Esta nueva muestra roba credenciales de APIs de Docker también, lo cual es un elemento interesante de este ataque. 


[image url=”https://www.trendmicro.com/content/dam/trendmicro/global/en/research/21/a/malicious-shell-script-steals-cloud-credentials/Figure-2-Stealing-and-exfiltration-of-Docker-API-credentials.png” raw=”true” alignment=”center” margin_left=”0″ margin_right=”0″ margin_top=”0″ margin_bottom=”0″]

Figura 2. Muestra de código mostrando el robo y la exfiltración de credenciales de APIs de Docker 

 

En el tiempo entre que se roban las credenciales y se despliega el cryptominer, el script deja otra muestra embebida y codificada como base64. Esto es para crear un nuevo usuario en el sistema, con permisos sudo y un SSH-RSA-key para asegurar que se pueden conectar a la máquina infectada y mantener el acceso. 


[image url=”https://www.trendmicro.com/content/dam/trendmicro/global/en/research/21/a/malicious-shell-script-steals-cloud-credentials/Figure-3-User-Creation.png” raw=”true” alignment=”center” margin_left=”0″ margin_right=”0″ margin_top=”0″ margin_bottom=”0″]

Figura 3. Muestras de código mostrando la creación de un usuario para mantener el acceso 

 

Solamente después de que todos estos pasos se completan es que se descarga el cryptominer, desplegado bajo un nombre y PATH “sigilosos” y después se ejecuta. 

 

Un último paso agregado recientemente a este nuevo ataque despliega un shell inverso, como se escribe en un blog anterior. 

 

Hasta ahora sólo se han identificado como blancos de este ataque plataformas de containers. La imagen de container que contiene todas las muestras maliciosas fue creada recientemente, con la cuenta de las descargas alcanzando 2,000 antes de que el usuario y la imagen fueran eliminados. 

 

[image url=”https://www.trendmicro.com/content/dam/trendmicro/global/en/research/21/a/malicious-shell-script-steals-cloud-credentials/Figure-4-Container-2K-screenshot.png” raw=”true” alignment=”center” margin_left=”0″ margin_right=”0″ margin_top=”0″ margin_bottom=”0″]

Figura 4. Screenshot de la imagen de container que contenía las muestras maliciosas  

 

[image url=”https://www.trendmicro.com/content/dam/trendmicro/global/en/research/21/a/malicious-shell-script-steals-cloud-credentials/Figure-5-User-and-image-were-taken-down.png” raw=”true” alignment=”center” margin_left=”0″ margin_right=”0″ margin_top=”0″ margin_bottom=”0″]

Figura 5. Usuario imagen eliminados 

 

Las muestras de este ataque recientemente descubierto también fueron halladas con dos nuevas rutinas no previamente vistas en ataques de TeamTNT. En las muestras que habíamos visto antes, la rutina solamente revisa archivos de credenciales en la máquina antes de subirlos. en esta nueva muestra, los desarrolladores agregaron rutinas; la primera solicita el servicio de metadatos de AWS e intenta obtener las credenciales desde ahí. Esto solo sucede conforme los ataques puedan correr el script y, ya que están en la instancia debido a una imagen de Docker con un backdoor que está corriendo, no hay una técnica especial que se utiliza para acceder al servicio de metadatos de instancias (IMDS). Por default, ningún rol está ligado a una instancia y estas credenciales solamente tendrán los permisos que el cliente otorgó. los clientes deberían seguir el principio del menor privilegio si deciden otorgar permisos a un rol de instancia. 

 

La segunda rutina agregada revisa las variables del ambiente para buscar credenciales de AWS; si estas se encuentran presentes se suben al servidor de C&C. 

 

[image url=”https://www.trendmicro.com/content/dam/trendmicro/global/en/research/21/a/malicious-shell-script-steals-cloud-credentials/Figure-6-Code-snippet-showing-stealing-and-exfiltration-of-AWS-credentials.png” raw=”true” alignment=”center” margin_left=”0″ margin_right=”0″ margin_top=”0″ margin_bottom=”0″]

Figura 6. muestra el código mostrando el robo y exfiltración credenciales de AWS 

 

Aunque la fuente de este ataque fue una imagen maliciosa de contenedor, los scripts de la infección no distinguen donde están corriendo, infectando cualquier sistema operativo *nix (Linux, Unix) para recolectar la información de metadatos que el malware debe correr en el alcance de una instancia. 

 

Conclusión 

 

Ataques como el incidente descrito en este texto, destaca la importancia de la vigilancia en la protección de los sistemas contra el compromiso; los usuarios deben tener en cuenta que si están corriendo una imagen al azar, deben tener cuidado de la posibilidad de que un actor malicioso haya agregado elementos maliciosos como backdoors. 

 

Además, aunque parece que el número de variantes de malware de criptomonedas incrementa rápidamente, también parece que los actores maliciosos que despliegan los ataques de minería no están interesados solamente en ella. Algunos de los primeros ataques de este tipo que descubrimos en el pasado estaban desplegando sus miners sin mucho criterio; usaban los scripts maliciosos que servían como downloaders básicos, y el miner era bueno si corría en el sistema de la víctima. 

 

Las tácticas ahora han evolucionado exponencialmente. los scripts maliciosos se están desarrollando para robar información mucho más sensible como credenciales. Ahora también están equipados con otras funciones, como preparar el ambiente para asegurarse de tener los recursos suficientes para minar, siendo lo suficientemente sigilosos para continuar minando el mayor tiempo posible y asegurarse de dejar backdoors en caso de que se necesite una conexión remota con sus víctimas. 

 

Ya que los ataques también ahora están buscando credenciales de Docker, implementar la autentificación de APIs ya no es suficiente. Los administradores de sistemas también deben asegurarse de que la API no está expuesta públicamente y sólo puede ser accedida por aquellos quienes tengan una necesidad absoluta. 

 

Para mantener sus sistemas protegidos, las empresas deben seguir las siguientes mejores prácticas: 

 

  • Elegir contraseñas fuertes y nunca usar las que están por defecto  

 

Soluciones de Trend Micro 

 

Trend Micro Hybrid Cloud Securitydefiende los sistemas nativos de la nube y sus capas. Esta solución todo en uno utiliza el despliegue y descubrimiento automatizados sin fricciones dentro de toolsets existentes. Está potenciado por la plataforma de servicios de seguridad para desarrolladores en la nube, Trend Micro Cloud One™, la cual ofrece protección flexible y automatizada, así como mayor visibilidad para ambientes híbridos y multiube. La plataforma de Trend Micro Cloud One incluye: 

 

  • Application Security: seguridad para funciones serverless, APIs y aplicaciones
  • Conformity: seguridad en tiempo real para la infraestructura de la nube – proteja, optimice, cumpla

 

Indicadores de compromiso  

 

SHA-256  Nombre de archivo   Detección de Patrones de Trend Micro 
4ad20bcd0f915acba7817e0639fcbf4f713beb8ac35112134808d4e5f753d519  create_account_dropped.sh  Trojan.SH.MALXMR.UWEKQ 

 

86800f9e3b563eaeba1d84d431b83405b2118300c0ad2deab39a093d4b9093c5  kthreadd  Coinminer.Linux.MALXMR.PUWELO 
96a64cccb55f7b42711015054ddd6ac45459643aa17c13248c6e344dc787cbfd  setup.sh  Coinminer.SH.MALXMR.UWEJW 
aad97a08a139e8dff1f02f73479a5b00ecca5b512f627082f9c589fd63479c83  bioset 

 

Trojan.Linux. ZYX.USELVLG20 

 

b3daf217ca7339ad9e738f087135af8f63fd46f435711874ccb4bf8ab310f2e5  Daemon  N/A 

 

 

 


Posted

in

, , ,

by

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.