¿Qué es Man in the Browser (MITB)?
Es un ataque que ha evolucionado a partir del Man In The Middle (MITM). En concreto es un troyano que tras infectar una máquina es capaz de modificar páginas webs, contenidos o transacciones, de una manera invisible tanto para el usuario como para el servidor web. Los ataques MITB son muy dificiles de detectar y además la probabilidad de que tengan exito es muy alta ya que medidas como el SSL o cualquier otro tipo de cifrado no ayudan a que este ataque desaparezca.
Estos troyanos infectan los navegadores de Internet y modifican las páginas y las transacciones para robar secretos personales como nombres de usuarios, números de la seguridad social, contraseñas de cuentas bancarias, datos de tarjetas de crédito, e incluso claves dinámicas como tokens o tarjetas de coordenadas.
No hablamos de un troyano nuevo, pero la proliferación de este tipo de troyanos está empezando a aumentar y hoy está atacando a varios bancos en latinoamérica y europa, convirtiéndose en la principal preocupación para entidades financieras y usuarios.
¿Cual es el objetivo de este troyano?
Su objetivo es arquirir las claves del usuario para luego robar su dinero.
¿Detectan los antivirus estos troyanos?
Si pero en raras ocasiones, estos troyanos utilizan las propiedades que permite realizar cada navegador como si fuera una propia extensión de este, así que es muy dificl para un antivirus saber si el comportamiento de una extensión de firefox es normal o no, de ahí a que sean muy dificiles de detectar.
¿Qué medidas podemos tomar contra este tipo de ataques?
La única manera actual de cubrirse contra un MITB es confirmar mediante otro canal (distinto a la web) que los datos de la transacción que hemos realizado son los correctos. Es decir, si nosotros realizamos una transferencia a otra cuenta, tenemos que validar manualmente mediante un movil, por ejemplo (o una llamada telefónica) que los datos corresponden y que el usuario es realmente el que realizar esta transacción y no un delincuente que adquirió sus claves.
¿Cuales son los pasos de la infección y su posterior efecto?
- Lo primero que siempre necesita el troyano es infectar el equipo usuario
- Después el troyano se instala como una extensión del navegador y esta extensión será activada en el siguiente reinicio del navegador.
- Una vez iniciado el navegador, se carga la extensión y cada vez que se carga una URL, la extensión busca las páginas que tiene registradas para el ataque
- El usuario accede a una de las webs marcadas como ataque para la extensión https://www.ejemplo.com
- La extensión entonces busca patrones especificos en la web accedida https://www.ejemplo.com/transaccion
- El usuario rellena los datos de la transacción
- La extensión guarda los datos originales de la transacción y modifica los valores de la transacción por sus valores (MITM)
- El navegador envía los parametros de la transacción modificada por la extensión y el servidor los recibe como si se tratasen de parametros normales (ya que lo son, lo único que ha pasado es que se han modificado los valores)
- El servidor realiza la transacción y devuelve el resultado al usuario
- La extensión detecta la URL del recibo y modifica los parametros de la transacción para que coincidan con los que el usuario puso realmente (ya que los había guardado anteriormente en el punto 7)
- El navegador muestra los valores originales
- El usuario se va feliz y contento porque piensa que todo se ha realizado correctamente
Éstas son algunas de las formas en que se producen los ataques MITB y una explicación de por qué plantean un riesgo tan alto:
- Los ordenadores se infectan fácilmente: La forma más habitual en que los navegadores se infectan con programas maliciosos es a través de la ingeniería social. A menudo, mientras navegan o se descargan medios y otros archivos, se pide a los usuarios que actualicen sus versiones de software. Esas peticiones son tan habituales que muchos usuarios las aceptan de forma automática. Ése es justo el comportamiento que aprovechan los ciberdelincuentes. Crean avisos de descarga que se parecen mucho a los de los vendedores de software legítimos. La mayoría de los usuarios no se dan cuenta de las pequeñas diferencias que existen y aceptan la descarga, infectando así sin darse cuenta su navegador con un programa malicioso. El enorme incremento del uso de las plataformas de redes sociales también ha dado un espaldarazo a los ciberdelincuentes, que difunden este tipo de programas. De hecho, más de un tercio de los ataques de programas maliciosos que se produjeron en la segunda mitad de 2009 tuvo lugar a través de sitios de redes sociales.
- Difíciles de detectar: Los programas maliciosos son difíciles de detectar porque utilizan herramientas para cambiar de forma y adaptarse a un objetivo concreto. Este elevado nivel de personalización, a veces para un país o banco concreto, impide que los antivirus, desarrollados para tipos de virus más genéricos, reconozcan el código malicioso.
- La autenticación tradicional no ayuda: Una sólida autenticación comprueba que la persona que se conecta a un recurso online es realmente quien dice ser. Con los ataques de Man-in-the-Browser, un usuario puede autenticarse correctamente independientemente del hecho de que haya código malicioso activo en el navegador. Cuando el usuario lleva a cabo una transacción online, el navegador infectado lleva a cabo transacciones ilícitas de forma encubierta, ya que ni el cliente ni el banco son conscientes de que está ocurriendo algo irregular.
- Los mecanismos antifraude y las herramientas basadas en el riesgo tradicionales no son efectivos: Las herramientas antifraude basadas en los riesgos se concentran en la autenticación de los usuarios y la validación de las transacciones pidiendo a los clientes que respondan a una serie de preguntas de seguridad predeterminadas y analizando el comportamiento del usuario y sus patrones bancarios. No tienen forma de detectar si una transacción ha sido iniciada por un programa malicioso o no.
¿Todos los bancos pueden ser atacados?
Si, porque el ataque es a nivel de usuario, solo es cuestión de amoldar el ataque a la página web de cada banco, desde luego que los mas grandes tienen mas probabilidades de ser atacados.
¿Cómo puedo reaccionar ante un ataque de este troyano?
Como es un ataque dificil de identificar, normalmente es el usuario el que finalmente se da cuenta que tiene movimientos extraños en su cuenta corriente. En ese mismo momento el usuario debe llamar al banco para que esté inicie sus procedimientos para tratar de recuperar el dinero y analizar los detalles del caso.
¿Para donde se va el dinero?
Detrás de estos troyanos hay verdaderas organizaciones delictivas, las cuales van infectando de a poco países en sectores específicos: la idea no es infectar todo el mundo y que sea descubierto y bloqueado rápidamente, sino que ir por sectores en donde también se cuente con el resto de las piezas necesarias para después poder mover ese dinero robado sin sospechas como lo es con el uso de las mulas (quienes reciben una comisión por recibir el dinero fraudulento en sus cuentas y transferirlo a otro país).
Las siguientes son algunas medidas de seguridad que los bancos pueden implementar para proteger a sus clientes, preservar su reputación y reducir las pérdidas económicas:
- Autenticación y verificación de las transacciones fuera de banda (OOB): La autenticación y verificación de las transacciones OOB exige que se utilice un canal de información distinto del ordenador y el navegador del usuario para confirmar los datos de la transacción y la contraseña necesaria para validarla. Una forma habitual de autenticación OOB es el envío de un mensaje vía SMS junto con los detalles de la transacción al teléfono móvil del usuario para que éste confirme que esos datos son correctos. Cuando se inicia una transacción online a través de la cuenta del cliente, el banco envía un SMS con un código y los detalles de la transacción al teléfono móvil del cliente. Aunque la autenticación vía SMS no impide que los programas maliciosos infecten los ordenadores, utiliza un canal de comunicación seguro para alertar a los clientes del banco de la actividad que se está llevando a cabo desde su cuenta. Si el cliente recibe un SMS avisándole de una transacción online, tiene que aprobarla o notificar al banco que él no la ha iniciado.
- Autenticación basada en certificados combinada con un entorno de navegación seguro: Otra forma de protegerse frente a los ataques Man in the Browser es utilizar la autenticación basada en certificados junto con un entorno de navegación seguro que cuente con medidas adicionales para garantizar que el navegador no se infecte con programas maliciosos. Por ejemplo, el uso de un navegador portátil almacenado en un token de autenticación USB reduce las probabilidades de que su navegador se infecte con programas maliciosos. En este caso, al conectarse online, el usuario primero se autentica a él y luego carga el navegador “limpio” directamente desde el token. El navegador de confianza puede preconfigurarse para abrir un sitio de Internet concreto y bloquear cualquier intento de navegar por otros sitios no designados. Los navegadores de confianza constituyen una medida de seguridad preventiva contra los programas maliciosos. Puesto que el navegador se almacena en un dispositivo de memoria flash externo protegido por una estructura de seguridad, está aislado de la interacción online habitual y, por tanto, no está expuesto a los programas maliciosos.
Veamos algunos ejemplos de estos troyanos:
El Troyano SpyEye
SpyEye es un kit de malware cada vez más conocido durante los últimos meses y similar al ampliamente utilizado Zeus, que ha causado cientos de miles de infecciones en todo el mundo. Los usuarios o las empresas pueden infectarse con el malware al examinar inocentemente miles de sitios web conocidos e infectados. SpyEye espera que el usuario acceda a la cuenta de la banca electrónica antes de activarse.
“Norman, que trabaja desde principios de febrero con varios bancos de Noruega, ha identificado una variante específica de SpyEye desarrollada recientemente por los delincuentes,” ha declarado Carlos López-Huerta, Sales Manager de Norman España. “Esta variante también está dirigida a otros bancos de Europa y Asia y podría modificarse fácilmente para que funcione contra cualquier banco de cualquier país. Los usuarios de la banca electrónica de Europa y Norteamérica deben estar muy atentos para protegerse contra este riesgo online.”
Esta variante concreta de SpyEye se dirige únicamente al campo del inicio de sesión de la página web legal del banco, donde capta los datos de inicio de sesión y la contraseña, y transfiere dinero ilegalmente hasta que la aplicación se desconecta en unos 20 segundos.
Las técnicas empleadas por este troyano son las siguientes:
- Robo de formularios: todos los formularios HTTP que contienen un campo de contraseña son capturados por defecto.
- Inyección de código: esta técnica consiste en la inyección de código HTML en el navegador de la víctima para pedir datos que, normalmente, la entidad no pediría. En las diferentes configuraciones estudiadas, la información solicitada suele ser el código de seguridad completo.
- Robo de credenciales FTP y POP3: incluye monitorización del tráfico de red estableciendo hooks en las funciones API de filtrado y almacenamiento de autenticación, mayoritariamente vigilando el tráfico y buscando valores “USER” y “PASS”.
- Robo de credenciales en autenticación HTTP Basic: Un enfoque similar al del robo de credenciales FTP y POP3.
- Capturas de pantalla: en la configuración del binario se especifican las URLs sobre las que se realizarán las capturas de pantalla y las zonas concretas que se quieren capturar, es decir, no se captura la pantalla completa si no las zonas especificadas. Un ejemplo de esta configuración podría ser:https://accesonline.mibanco.com/autenticate* 500 200 10 60
- Posibilidad de realizar Man in The Browser (MitB).
Tatanga es un nuevo troyano bancario con capacidades man-in-the-browser (MitB) que inyecta HTML en el todos los navegadores web y utiliza técnicas de rootkit para ocultar su presencia. Los bancos de España, Reino Unido, Alemania y Portugal se han visto afectados por este malware, y, tal como SpyEye, puede realizar transacciones automáticas, suplantar el balance de las cuentas y las operaciones bancarias de los usuarios
El troyano Tatanga está escrito en C++ y utiliza técnicas de rootkit para ocultar su presencia, aunque, en ocasiones, sus archivos son visibles. “El troyano descarga un número de módulos encriptados (DLLs), que se desencriptan en la memoria cuando se inyectan en el navegador u otros procesos para evitar la detección del software antivirus”.
Al parecer, este malware bancario ha atacado a usuarios de banca online de Alemania, Portugal, España y Reino Unido. “Como otros troyanos de su clase, utiliza un archivo de configuración encriptado. Este archivo Tatanga troyano bancarioestá en formato XML y tiene un elemento para cada país afectado”. “Dependiendo del banco objetivo –continúan-, el troyano puede hacerse con las credenciales de forma pasiva o solicitarlas con el fin de acometer transacciones fraudulentas durante la sesión de usuario”.
Tatanga puede inyectar HTML en todos los navegadores más populares: Explorer, Firefox, Chrome, Opera, Safari, Minefield, Maxthoon, Netscape, y Konqueror.
Por el momento, el ratio de detección del troyano Tatanga “es muy bajo”,y pocos motores antivirus pueden detectarlo.
Muy bueno el articulo, pero sin duda que hay mucho por hacer en este tema, sobre todo el tomar conciencia masiva del riesgo. Sin embargo actualmente existe soluciones que están siendo muy exitosas en el combate del MITB como Rapport de Trusteer, solución que acaba de implementar Banco Santander Rio en Argentina y que se promociona en la portada de su portal. http://www.santanderrio.com.ar