FireEye, empresa global de seguridad avanzada para TI, dio a conocer los resultados sobre un estudio de los daños que produce Ploutus, uno de los malwares más avanzados de los últimos años y que afecta a los cajeros automáticos (ATM).
Este malware se descubrió por primera vez en México en 2013 cuando un grupo de cibercriminales vació cajeros usando un teclado externo conectado a los cajeros y mediante mensajes SMS con una técnica nunca antes vista.
FireEye identificó una versión de Ploutus que no habÃa sido detectada: Ploutus-D, considerada una versión que encontrará un amplio campo para afectar, ya que la plataforma que daña funciona en 40 diversos tipos de cajeros distribuidos en 80 paÃses.
Una vez desplegado en un cajero automático, Ploutus-D permite extraer miles de pesos en minutos, pero para actuar, el delincuente debe tener una llave maestra para abrir la parte superior del cajero automático, conectar un teclado fÃsico a la máquina e ingresar un código de activación para obtener el dinero. Si bien hay riesgos de que la persona sea captada por las cámaras, la velocidad de la operación minimiza el riesgo para el delincuente.
CaracterÃsticas no observadas anteriormente de Ploutus-D:
- Se despliega en los cajeros ATM que corren en Windows 10, Windows 8, Windows 7 y XP.
- Tiene una Interfaz Gráfica de Usuario (GUI) distinta.
- Incluye una caracterÃstica que identifica y elimina los procesos de monitoreo de seguridad para evitar la detección.
Similitudes entre Ploutus y Ploutus-D
- Su objetivo es vaciar los cajeros sin necesidad de una tarjeta.
- El delincuente puede interactuar con el malware a través de un teclado externo conectado al cajero.
- Un código de activación es generado por quien dirige la operación, y expira en 24 horas.
- Ambos fueron creados en la plataforma .NET.
- Puede correr bajo Windows o como aplicación independiente.
Disección de Ploutus-D
Ploutus-D puede correr a partir de un archivo ejecutable o “launcher†y a partir de ahà entregar dinero. En esta versión del malware los atacantes se esforzaron más en confundir y proteger su código de ingenierÃa inversa. El launcher se diseñó por los ciberatacantes de forma que no pueda ser alterado, y puede instalar, ejecutar Ploutus-D o desinstalarlo desde la máquina.
Interactuando con el launcher
El atacante interactúa con el launcher realizando el ataque a través de un teclado para cajeros ATM vÃa USB u otro puerto.
Una vez que el launcher ha sido instalado en el cajero, se conecta con el teclado para recibir las instrucciones de los atacantes, quienes utilizan una combinación de teclas “F” para ejecutar la acción.
Entre las principales tareas que soporta figuran:
- Iniciar programas bajo demanda, algunos de los cuales se descifran de la sección de recursos del Launcher
o  Main.exe
o  XFSConsole.exe
- Kill Processes:
o  NHOSTSVC.exe
o  AgilisConfigurationUtility.exe
o  XFSConsole.exe
- Borrado de archivos:
o  NetOp.LOG – Secure Remote Management solution
- Reinicio de máquina:
o  “wmic os where Primary=’TRUE’ rebootâ€
A continuación, el software KAL ATM legÃtimo se carga en el sistema junto con Ploutus-D para que todo el software y las versiones necesarias para ejecutar correctamente el malware están presentes en la misma carpeta para evitar cualquier problema de dependencia. (La misma técnica también fue utilizada por la primera versión de Ploutus).
Esto muestra que los atacantes probablemente tienen acceso al software ATM. Asimismo, pueden comprar cajeros automáticos fÃsicos que vienen precargados con software de proveedores, o simplemente podrÃan robar los cajeros automáticos directamente desde las instalaciones del banco.
Ploutus-D se asegura de que no exista un “mutex†(algoritmos de exclusión mutua) en el sistema para comenzar a correr. Al igual que el Launcher, Ploutus-D conectará el teclado para que los atacantes interactúen con él. Sin embargo, además de recibir comandos de las teclas “F”, también leerá desde el teclado numérico.
De forma similar a la versión anterior, la interfaz GUI se habilita al ingresar una combinación de teclas F. Después se introduce un código válido de 8 dÃgitos para que el dinero se extraiga. Ploutus-D también permite solicitar la cantidad a retirar y repetir la operación de dispensación. El monto total también es calculado por el malware.
Extrayendo el dinero
Para que el delincuente pueda empezar a extraer dinero, debe ingresar un código válido de 8 dÃgitos. Este código es proporcionado por el encargado de la operación y se calcula sobre la base de un ID único generado por ATM, el mes y dÃa actuales del ataque. Una vez que se ha introducido un código de activación válido (válido por 24 horas), el proceso de entrega comienza pulsando “F3” desde el teclado externo.
Conclusión
Tal como FireEye anticipó en el Reporte de Predicciones 2017 el uso del malware en los cajeros ATM continuará incrementándose, especialmente en paÃses en vias de desarrollo con controles débiles de seguridad fÃsica. Ploutus puede ser fácilmente modificado para atacar a varios vendedores de ATMs y sistemas operativos.
