Análisis técnico de las fases de Cobalt, la pesadilla para la red interna de un banco
El objetivo del grupo es el acceso a la infraestructura de la entidad financiera para conseguir el compromiso de los cajeros automáticos y retirar fraudulentamente de efectivo. Aunque parezca ciencia ficción, se hacen con el control de la red de cajeros hasta el punto de que pueden hacer que a una hora concreta, comience a soltar todo el efectivo que contiene. Basta con que el "mulero" se encuentre en ese momento frente al cajero para que el golpe se haga realidad. Más que en el análisis de la muestra, nos detendremos en los aspectos más interesantes de las fases del ataque.
Se sabe qué correos en anteriores campañas (e incluso las más recientes) están siendo enviados en esta oleada por un sencillo " mailer" creado en PHP. Habitualmente reconocible porque en su cabecera se añadirá el siguiente mensaje:
X-PHP-Originating-Script: 0:alexusMailer_v2.0.php
El consejo: mejorar la barrera perimetral típica anti- spam y anti- malware, realizar un sandboxing inteligente del correo, controlar los buzones de personas con privilegios, conocer qué información se filtra afuera, o incluso incluir la revisión controlada de ciertas cuentas para garantizar una mayor protección.

copy /y nul "%TMP%block.txt"
icacls %TMP%block.txt /deny *S-1-1-0:W /T
copy /y nul "%TEMP%block.txt"
icacls %TEMP%block.txt /deny *S-1-1-0:W /T
Es muy simple e inocuo crea un fichero block.txt sin permiso de borrado para nadie. No es lo más elegante e incluso puede ser eludido por el malware, pero como decimos, resulta bastante inocuo. Los RTF son creados con herramientas que se venden en el mercado negro, en las que se define la vulnerabilidad y los ficheros incrustados, y realizan todo el trabajo de composición. Como dato interesante, no crean un RTF que sea consistente con las especificaciones. Los RTF creados que vienen en el correo tienen esta cabecera.
"{rt ", "{rt " o "{rt1"
Cuando la cabecera debería ser "rtf1". Esto es a causa de esa herramienta de creación de exploits o de inclusión de payloads en RTF. En ella también se usa a veces el dominio test1.ru para estadísticas, pero no tiene función relevante.
El consejo: En esta fase, obviamente lo más interesante es disponer de un sistema completamente actualizado (en especial el Office) y unos usuarios correctamente entrenados. Medidas adicionales de seguridad en profundidad (bastionado de Windows específico, detector de malware, EDR, etc.) también son de ayuda. Filtrado web y una buena política de consumo de IOCs para también usar de forma inteligente los datos que ya se puedan llegar a conocer.

En estos casos concretos, una vez tienen el control de un sistema cualquiera en la red bancaria interna, los atacantes se adaptan en lo que pueden a su entorno, y su actuación depende de las facilidades que les brinden. Se realiza un (obvio) movimiento lateral por la red buscando algún servidor de control de cajeros automáticos. Para conseguirlo se usarán movimientos laterales estándar ( mimikatz, pass the hash, elevación de privilegios en directorio activo...) buscando conexiones hacia estos servidores (por ejemplo, Terminal Server) que les interesan. También, es posible que creen usuarios en varias máquinas para elevar privilegios o pasar desapercibidos de forma más cómoda. Esta fase puede durar semanas.
Una vez localizado el servidor que puede llegar a permitir el control de cajeros, se implantará el " beacon", en forma de servicio, para poder ser controlado por el atacante. Se trata de una especie de meterpreter para control remoto, que de nuevo, permite el acceso del atacante y realizará, por tanto, conexiones con el exterior que deberían ser detectadas a través de logs, dominios, etc. En realidad, está basado en CobaltStrike, una herramienta comercial para crear este tipo de herramientas de ataque y control remoto. De hecho, hace poco ha aparecido una nueva versión.
El consejo: Una red bien vigilada y segmentada. Correlación adecuada de eventos de seguridad y sobre todo, control de privilegios.