En biología, un simbionte es un organismo que vive en simbiosis con otro organismo. La simbiosis puede ser mutuamente beneficiosa para ambos organismos, pero a veces puede ser parasitaria cuando uno se beneficia y el otro se perjudica. Hace unos meses, Joakim Kennedy, investigador de Intezer, descubrió un nuevo malware muy difícil de detectar y que actúa con esta naturaleza parasitaria que afecta a los sistemas operativos Linux. De manera acertada se le ha denominado como Symbiote.

Lo que diferencia a Symbiote de otros programas maliciosos de Linux con los que nos encontramos habitualmente es que necesita infectar otros procesos en ejecución para infligir daños. En lugar de ser un archivo ejecutable independiente que se ejecuta para infectar una máquina, es una biblioteca de objetos compartidos (*.so) que se carga en todos los procesos en ejecución mediante LD_PRELOAD (T1574.006) e infecta la máquina de forma parasitaria. Una vez que ha infectado todos los procesos en ejecución, proporciona al actor de amenazas la funcionalidad de rootkit, la capacidad de recopilar credenciales y la capacidad de acceso remoto.

Symbiote es muy sigiloso. Está diseñado para ser cargado por el enlazador a través de la directiva LD_PRELOAD. Esto permite que se cargue antes que cualquier otro objeto compartido. Dado que se carga primero, puede secuestrar las importaciones de los otros archivos de la biblioteca cargados para la aplicación. Symbiote usa ésto para ocultar su presencia en la máquina conectando las funciones libc y libpcap.

Además de ocultar su propia presencia en la máquina, también oculta otros archivos relacionados con éste y probablemente implementados por este mismo. Dentro del binario, hay una lista de archivos que está cifrada con RC4. Cuando se llama a funciones enganchadas, el malware primero carga dinámicamente libc y llama a la función original. Esta lógica se utiliza en todas las funciones enganchadas.

Si la aplicación que realiza la llamada está intentando acceder a un archivo o carpeta en /proc, el malware borra la salida de los nombres de proceso que están en su lista. Si la aplicación que llama permanece sin intentar acceder a algo en /proc, el malware borra el resultado de una lista de archivos.

Symbiote es un malware que es altamente evasivo. Su objetivo principal es capturar credenciales y facilitar el acceso por la puerta trasera a las máquinas infectadas. Dado que éste funciona como un rootkit a nivel de usuario, puede ser difícil detectar. La telemetría de red se puede usar para detectar solicitudes de DNS anómalas y las herramientas de seguridad, como antivirus (AV) y detección y respuesta de punto final (EDR), deben vincularse estáticamente para evitar infectarse con rootkits de usuarios.

Más detalles en Intezer.

Siguiente Entrada Entrada Anterior