Drovorub, Un Nuevo Kit De Explotación Para Sistemas Basados En Linux
El pasado 15 de agosto, la NSA en colaboración con el FBI publicaban un extenso informe donde se detalla el funcionamiento de Drovorub, un nuevo «set» de herramientas para la explotación de sistemas Linux.
Drovorub está diseñado para el ciberespionaje y su desarrollo está atribuido al grupo ruso «Fancy Bear», también conocido como «APT 28» o «Strontium». Se compone de una serie de componentes que permiten a los atacantes comprometer los sistemas hasta la «raíz». Es decir, este malware es capaz de implantarse como un módulo del kernel del sistema operativo, pudiendo ocultar sus procesos y pasar totalmente inadvertido por la víctima.
En concreto Drovorub se compone de cuatro módulos, cada uno con una función concreta:
- Drovorub-server: se configura en la infrastructura controlada por los atacantes y sirve de panel de control para administrar las operaciones del troyano y como punto de almacenamiento de la información recolectada.
- Drovorub-client: se instala en las máquinas objetivo y permite la transferencia de ficheros, la redirección de puertos o habilitar una «shell» remota.
- Drovorub-kernel: se instala como un módulo en el kernel y permite ocultar los procesos y operaciones del troyano.
- Drovorub-agent: se comunica con el servidor y su funcionalidad es muy similar al cliente, a excepción de la shell remota. Aparentemente se utiliza para subir y descargar ficheros desde el cliente y redirigir el tráfico de red.
Implantación:
El grupo de atacantes utiliza una amplia variedad de técnicas (exploits públicos y propios) para conseguir acceso a la red objetivo e instalar el malware en los dispositivos. Cuando el cliente y el rootkit se ejecutan en la máquina víctima se ponen en marcha una serie de mecanismos que permiten la persistencia del malware y su funcionamiento. En concreto se configuran las llamadas al sistema correspondientes como parte de la instalación del rootkit y se registra el cliente en el servidor de control y comando. Si se logra el registro se descargarán los módulos adicionales requeridos por el cliente. En caso contrario el troyano detendrá su ejecución.
Los componentes se comunican entre sí por WebSockets intercambiando mensajes JSON. Estos mensajes van cifrados con una clave RSA y tienen el formato que se ve a continuación: