Según un informe de Bitdefender, la APT StrongPity, también conocida como Promethium, ha sido reorganizada para servirse de ataques Watering Hole, o abrevadero, implementar estructuras C&C de hasta tres niveles para evitar el rastreo y las actividades forenses y utilizar versiones troyanizadas de herramientas comerciales habituales.
Los ataques watering hole o de abrevadero, consisten en la infección de sitios web de terceros utilizados por los usuarios finales a los que se quiere comprometer. Se trata de una forma muy común de atacar organizaciones, pues su éxito descansa no tanto en fallas de seguridad de la propia infraestructura tecnológica, sino en el análisis de inteligencia practicado sobre las costumbres de los usuarios finales.
En esta ocasión, la APT se reorganiza en el contexto de un conflicto geopolítico que mantienen los habitantes del Kurdistán contra Turquía y sus aliados militares. El informe de Bitdefender alude expresamente a lo plausible de motivaciones geopolíticas en los ataques, además de contar con soporte gubernamental, como suele ocurrir siempre que hablamos de cualquier APT. En este contexto, el objetivo del ataque parece haber sido la infraestructura kurda.
Los pueblos kurdos han resultado fundamentales en la lucha contra el estado islámico. Su territorio supone un enclave geopolítico extraordinario para el control de una zona (Iraq-Siria) codiciada tanto por Turquía y sus aliados, como por Rusia y las potencias emergentes del mundo árabe como Irán.
En la siguiente imagen puede apreciarse el carácter netamente dirigido de esta campaña de ataque, propio de las APT a diferencia de los ataques masivos genéricos.
Durante la monitorización de esta amenaza, se detectarondos tipos de infraestructuras maliciosas, destinadas a cumplir dos roles principales:
- Servidores de descarga: encargados servir las aplicaciones comerciales troyanizadas que, tras su instalación por los usuarios, desplegarán una serie de estructuras en las máquinas infectadas para proseguir el ataque.
- Servidores de exfiltración: utilizados para la exfiltración de información y la comunicación con las máquinas comprometidas. Nos referiremos a ellos como servidores C&C por Command and Control
En la primera parte del ataque, los atacantes consiguen manipular algunos componentes de páginas de terceros que las víctimas suelen utilizar, de modo que cuando éstas realizan peticiones a esos sitios, si se encuentran en la lista de IP’s de la APT, son redirigidos a servidores de descarga ilegítimos que les sirven las aplicaciones comerciales troyanizadas.
Algunas de estas aplicaciones troyanizadas son TeamViewer, CCleaner, Whatsapp, WinRar, Daemon Tools Lite y McAfee Security Scan Plus, entre otras. Un análisis de estas aplicaciones troyanizadas, revela que su compilación tuvo lugar de lunes a viernes en intervalos de 9 horas. Según el informe, esto refuerza la idea de que los desarrolladores de este malware están siendo pagados por un tercero para realizar este «proyecto».
Cuando se descarga e instala la aplicación troyanizada, comienza la segunda parte del ataque con la implementación de una puerta trasera que realizará la comunicación con el servidor C&C, para exfiltrar documentación y descargar las configuraciones que contienen los comandos a ejecutar.
En cuanto a la comunicación con el servidor C&C, los atacantes han tomado algunas precauciones en dificultar su rastreo y mejorar la anonimización. En este sentido, se ha detectado el uso de hasta tres capas.
La primera de ellas actúa como proxy para que las máquinas infectadas se comuniquen con la segunda capa. Se trata, en suma, de una lista de IP’s con dominio único asociado al que las víctimas tratarán de conectarse en primera instancia. Esta primera capa proxy realiza algunas validaciones y redirige el tráfico a los servidores de la segunda capa mediante HTTPS al puerto 1402.
La segunda capa está compuesta por aquellas IP’s a las que apuntaba la primera capa. Tanto la primera capa como la segunda tienen el servicio SSH configurado en puertos altos para intentar escapar de los radares habituales. La segunda capa alberga scripts maliciosos con funcionalidades de subida de ficheros y ejecución de comandos. Además, comunica con la tercera y última capa de servidores.Según el informe, han llegado a mapearse hasta 47 servidores con distintas funcionalidades, encontrándose la mayoría de ellos en Europa.
Pasamos ahora a ver algo más en detalle los componentes de la APT y el protocolo de comunicación.
El instalador manipulado de la aplicación comercial troyanizada, actuando como un dropper, deja cuatro ficheros en la máquina víctima: el instalador legítimo, el lanzador asociado a las tareas de persistencia, el componente encargado de la exfiltración de la relación con el servidor C&C y, por último, el componente encargado de realizar una búsqueda de ficheros locales. Todos estos cuatro elementos se encuentran encriptados en la parte de recursos del instalador principal. Cada recurso cuenta con un identificador de 8 bytes que indica al dropper el tamaño del ejecutable y el tipo de componente.
Después de que el lanzador se quede en la carpeta% SYSTEM%, se ejecuta llamando a la función responsable para crear un nuevo servicio. El nombre del servicio es común, ya sea reemplazando un servicio del sistema no vital (por ejemplo la cola de impresión) o que tenga un nombre que no genere sospechas.
El lanzador ejecuta el componente de exfiltración y ejecución de comandos, generalmente ubicado en la misma carpeta del sistema y queda a la espera de un evento de desinstalación.
El componente de exfiltración es responsable de ejecutar el componente encargado de la búsqueda de archivos locales y de exfiltrar los archivos encontrados al servidor C&C mediante una solicitud POST.
De forma adicional, solicita periódicamente al servidor de C&C comandos de descarga y ejecución o un comando de desinstalación. Esto lo hace a través de otra petición POST con la función get_command a la que se le pasa como argumento un nombre y un valor identificativo del comando. Estos valores vienen determinados por el tiempo de compilación del archivo.
El componente encargado de realizar búsquedas de ficheros locales, recorre cada unidad y busca archivos con ciertas extensiones. El binario malicioso
tiene una lista de extensiones incrustada (generalmente identifica diferentes tipos de documentos). Si un archivo con una extensión de ese
se encuentra la lista, se copiará en un archivo zip temporal. Después de completar la adición de los archivos al archivo, lo dividirá en archivos ocultos cifrados .sft.
Los archivos .sft son leídos por el componente encargado de la exfiltración, enviados al servidor C&C y eliminados del disco. Después de completar el proceso de exfiltración, el componente esperará más órdenes, tal y como se describe en los párrafos anteriores.
Como se mencionó con anterioridad, los archivos que se filtrarán se copian primero en un archivo zip. Este archivo zip se cifrará en
múltiples archivos .sft de la siguiente manera:
• El componente encargado de buscar archivos locales leerá 2048 bytes del archivo zip.
• Para cada byte aplicará una operación xor entre los 4 bits menos significativos y los 4 bits más significativos y escribirá el resultado en el archivo .sft
• Los primeros dos pasos se repiten un máximo de 53 veces.
• Si el archivo zip todavía tiene datos sin procesar, se creará un nuevo archivo .sft
• Para cada archivo zip, el primer archivo .sft tendrá una N antepuesta como primer carácter, el resto de los archivos .sft que completan
un archivo tendrá una O antepuesta.
En el apéndice B del informe al que hemos aludido desde el inicio, pueden comprobarse las firmas hash de los archivos recuperados por los investigadores.
Más información:
Comentarios recientes