miércoles, 30 de noviembre de 2016

¿Pueden los cajeros automáticos "escupir" dinero cuando nosotros queramos?. Así lo consiguen los cibercriminales...

Recientemente el entorno bancario ha recibido un ataque simultaneo para vaciar efectivo de los cajeros automáticos (ATM - Automated teller machine). ¿Cómo lo hacen los cibercriminales para tener acceso una red bancaria?

Definitivamente este final del 2016, no ha sido fructífero, respecto a al seguridad en la red de redes (Internet).

Al flamante ataque por denegación de servicio perpetrado por millones de dispositivos de la denominada Internet de las Cosas (IoT) a la empresa gestora de dominios DynDNS, se le añade el masivo ataque a cajeros bancarios realizado hace unos días. 

Se desconoce la cantidad de dinero (billetes) sustraída de los cajeros automáticos por parte de los "muleros". La cantidad es importante, la ejecución impecable. Perfecta.

El motivo de esta entrada es explicar la manera en que los cibercriminales han conseguido poder tener el control absoluto de los ATMs (cajeros automáticos).

Dos bloques de persones trabajan en paralelo sin conocerse entre sí. El grupo de personas que retiraban en dinero de los cajeros automáticos, enviaban un SMS con un código identificador del cajero, para desde la central hacer retirar todo el dinero que tuviera en ese momento.

Los organizadores diseñaron la grabación en un fichero informático dentro de los cajeros automáticos. Cada registro permitía unir código de cajero y dinero ordenado a dar "libremente" al mulero. De esta manera podrían controlar si los muleros se quedaban con parte del dinero sustraído, en contra de su voluntad.



Pero, ¿cómo penetraron en la red bancaria?. Utilizando la técnica de "phishing", mediante correos electrónicos. Haciéndose pasar por el Banco Central Europeo o por el fabricante de los cajeros automáticos Wincor Nixdorf, esos correos incluían un "exploit" (fragmento de software), que permitía a los atacantes penetrar en la máquina para ejecutar un "payload" (parte del software que realiza la acción maliciosa). 


Inyectaban en la pila de proceso de la máquina  una parte del conocido software Cobalt Strike y algún framework como Metasploit. Con Metasploit tenemos una herramienta que permite desarrollar y ejecutar fragmentos de software (exploits) contra una máquina remota. 

Cobalt Strike es una interfaz gráfica para usuario para poder gestionar la máquina remota. Desde esta interfaz podríamos acceder a todos sus ficheros, realizar un escaneo ARP de la red para poder encontrar la dirección de hardware que corresponde a una determinada IP para poder pivotar y buscar otras máquina dentro de la red.

A partir de aquí, accediendo al los controladores de dominio, mediante herramientas como mimikatz, pudieron obtener las contraseñas almacenadas de acceso a recursos compartidos, unidades de red, escritorios remotos, etc.

Para completar el arsenal de programas / herramientas de sistema, utilizaron SDelete y el programa de acceso remoto modificado Teamviewer. El primero permite borrar de manera definitiva los ficheros del disco duro. El segundo es uno de los programas de asistencia remota mas conocidos, incluye traspaso de ficheros entre la máquina host y la máquina cliente.

Por último usaban MBRKiller para borrar el sector de arranque del disco duro de los servidores usados en los ataques dentro de la red atacada. Cuando borramos ficheros o carpetas de un ordenador, estos no son borrados realmente del disco duro o elemento de almacenamiento. Lo que hacemos realmente es borrar el enlace / puntero a esa información en el MBR (Master Boot Record). La información sigue en su sitio y será sobrescrita cuando el sistema operativo lo crea oportuno. Mediante esta herramienta los atacantes se aseguraban de no revertir el borrado, siendo imposible acceder a la información voluntariamente eliminada.

Obteniendo el control total a los servidores de dominio, mediante VPNs (redes virtuales privadas), ya podían acceder a los cajeros automáticos, motivo de todo el despliegue de software implementado en la red informática del banco.


En los cajeros automáticos cargando un programa que gestionaba los dispensadores de billetes, obtenían su control total. Existen en la actualidad malwares que permiten ordenar acciones mediante mensajes SMS. Es perfectamente posible, usando un teléfono inteligente (smartphone) ordenar la retirada de dinero en efectivo mediante comandos SMS.

Lo verdaderamente impresionante del ataque, no es el dinero sustraído por los atacantes, sino la propagación tecnológica conseguida con herramientas que podemos encontrar en la Deep Web . Para el entorno bancario no representa mas que una partida negativa en su cuenta de resultados. Además los bancos esconden información específica cuando sus sistemas informáticos son atacados con éxito.

No esta en el alcance de mucha gente el poder penetrar dentro de un sistema IT bancario. Pero muchas veces la puerta de entrada a la red, no esta siendo observada por los cortafuegos perimetrales con IPS (Intrusion Prevention System), diferentes anillos de seguridad, encriptaciones en la comunicaciones...etc.

La puerta de atrás en el sistema informático puede conseguirse con un simple fallo humano mediante ingeniería socialEs por esta razón que todo es vulnerable.

Para terminar la entrada quisiera comentar dos reflexiones mas. La primera pretende elevar el "ataque perfecto" al nivel que le corresponde. Aún teniendo altos conocimientos de informática y redes, suponiendo que los gestores de la plataforma de control de cajeros automáticos (ATM) tuvieran estudios superiores de ingeniería informática, sólo ha sido posible el ataque teniendo acceso al driver que "abre el grifo" del hardware dispensador de billetes. 

Se debe tener conocimiento del fabricante del dispensador de billetes para, a través de un driver universal del propio fabricante ordenar al dispensador de efectivo que nos dé dinero. O poder estudiar el diseño del software de ATM, para tener conocimiento de su programación usando ingeniería inversa.



La segunda reflexión es si debemos amar o odiar a los cibercriminales (crackers). Sin filosofar en el concepto, cabe mencionar que el hacking ético pretende usar las habilidades en la tecnologías de la información para descubrir vulnerabilidades que posteriormente pondrá en conocimiento y sobre aviso para que los fabricantes de software y hardware tomen medidas. Sin hacer daño o lucrarse.

Por otro lado los hackers de sombrero negro (BlackHat o crackers), son los que se dedican a buscar vulnerabilidades en sistemas IT, para explotarlos haciendo negocios muy lucrativos.




Unos permiten descubrir los fallos de seguridad existente en un sistema informático (White Hat), los otros usan los mismas descubrimientos para lucrarse (Black Hat). Teniendo en cuenta que muchas veces se socializan las perdidas y se privatizan los beneficios en la banca...los ataques de crackers a bancos se puede ver desde un prisma diferente al criminal. ¿Robin Hood de la red? (obviamente los recursos monetarios obtenidos, dudo sean usados para un buen fin...)  

La cita:
“Las organizaciones gastan millones de dólares en firewalls y dispositivos de seguridad, pero tiran el dinero porque ninguna de estas medidas cubre el eslabón más débil de la cadena de seguridad: la gente que usa y administra los ordenadores”. Kevin Mitnick