Taxonomía de un Vishing

Partes críticas en el éxito del vishing

Nestor Muñoz Gómez

3/1/20235 min read

man in black jacket wearing black fitted cap while using phone
man in black jacket wearing black fitted cap while using phone

El siguiente artículo es con fines educativos y de concientización.

Vishing, se le dice así a uno de los vectores de ataque mas utilizados en la actualidad por los cibercriminales. Si bien este metodo de ingeniería social está muy asociado con la extorsión, también es utilizado para ataques avanzados dentro del mundo de la ciberseguridad empresarial.

A mi parecer el Vishing es una herramienta con altos índices de éxito a comparación de otras técnicas de ingeniería social como podría ser el phishing. Pero, ¿Dónde reside este índice del éxito?.

La interacción entre dos humanos en un ambiente común nos lleva casi siempre a establecer un dialogo, y el dialogo no es mas que intercambio de información entre dos individuos. Siendo este una de las acciones mas comunes entre seres sociales, algo que no levanta sospechas de primera instancia.

Me gustaría poder comparar al Vishing con las fases de un ataque. Los que estemos familiarizados en el mundo de la ciberseguridad conocemos el cyber kill chain donde me centraré en 3 de las 7 etapas:

  • Reconocimiento 

  • Weaponization

  • Entrega

De acuerdo con lo anterior, si se realiza de manera correcta, es posible que con una llamada telefónica podamos acceder a sistemas privilegiados pasando hasta la etapa de instalación en una sola sesión, y aquí es donde reside el peligro de este vector de ataque. 

El Vishing empieza con o sin información de la víctima, en el mejor de los casos ya se ha hecho un reconocimiento previo apoyado con marcos como el OSINT (https://osintframework.com/) para formar el perfil de la víctima. El perfil es de suma importancia para la persuasión y manipulación ya que estos elementos generan una conexión natural. De igual manera el ataque debe tener un "timing", es decir debe ser circunstancial y aquí también reside mucha de la viabilidad del ataque. Recordemos que los seres humanos somos sistemas sin "Firewall", lo único que cuida nuestra información somos nosotros mismos, nuestra intuición y raciocinio, estas alarmas normalmente se activan cuando algo no se nos hace coherente, es decir, que la llamada que recibimos no tiene algún tipo de sentido con el contexto en el cual se esta viviendo de momento. Si logramos hacer que el vishing sea circunstancial nuestro índice de éxito se dispara en gran medida. Para esto, es bueno apoyarse de la información recabada del perfil de la víctima como: 

  • Redacción de Posts (Redes Sociales)

  • Gustos

  • Nombres de Familiares  y circulo social 

  • Numero de Seguro Social

  • Numero de Teléfono

  • Domicilio

  • Usuario (email, ID de empleado, mail empresarial, etc.)

  • Proceso Rutinario, hábitos y demás.

  • Rol del empleado

  • Estructura organizacional (Jefes inmediatos)

  • Rol en los procesos del negocio y críticos.

  • Nombre de empleados de la mesa de soporte de TI.

  • Tecnologías y Software utilizado por el Rol del empleado

Posteriormente necesitaremos esconder un payload en un entregable para la fase de Weaponization. Una vez obtenido el pretexto de llamada con atributos circunstanciales y de conexión con la victima, necesitamos crear confianza antes de generar la llamada. Lo que se busca en este punto es que la persona conteste la llamada sin sospechar de que se trata de un numero desconocido. Para esto existen técnicas para personificar un agente de confianza, estas son conocidas como Caller ID Spoofing. Esta técnica consiste en generar un a llamada falsa a través de VoIP utilizando software como Asterisk, Sip trunk-GoTrunk y zoiper-softphone, esto nos permite hacernos pasar por la persona que queramos en el ID de la llamada entrante, aumentando en un 90% las posibilidades de que la victima conteste. 

Ahora bien, entendemos al Payload como la carga útil que contiene código malicioso. En este caso lo podemos comparar con las frases estructuradas y argumentos a utilizar para vulnerar a la persona del otro lado de la llamada para que nos permita acceder o consultar información privilegiada.

Debemos entender que estructurar el dialogo con frases pensadas para lograr el objetivo de la entrega debe ser parte fundamental del análisis antes de realizar la llamada, ya que este será nuestro "payload" y como en cualquier prueba de penetración o ejercicio de red team, puede que tenga éxito o no. En esta etapa es donde utilizaremos toda la información recolectada anteriormente con respecto a los procesos de negocio donde se ve involucrada la persona, las responsabilidades de su rol, sus jefes inmediatos, las tecnologías utilizadas y sobre todo el nombre de las personas de la mesa de soporte de TI. Aquí el objetivo es personificar a la mesa de soporte de TI de la organización: 

  • Obtener contraseñas de usuarios: Obtener la contraseña del usuario suele ser uno de los primero pasos a seguir, sin embargo debemos entender si realmente la contraseña nos ayuda a lograr nuestro objetivo o debemos optar por otro tipo de información.

  • Obtener acceso a un sistema: Obtener acceso a una shell segura o a la cuenta del directorio activo. 

  • Credenciales VPN: Obtención de acceso remoto a la infraestructura de la organización. De igual manera es posible pedir el certificado único del endpoint para establecer esta conexión remota. Es por esto que es importante identificar los roles y a quien vamos a personificar.

  • Escalar la llamada a alguien de mayor rango aprovechando la confianza de la primera víctima: Escalar los privilegios en este contexto se refiera al igual que en un sistema un usuario root o system/NTauthority tiene acceso a otros diccionarios y acciones, en este caso hablar con un jefe directo a través de una transferencia de llamada puede llevarnos a obtener información de alta confidencialidad para la organización.

  • Información Privilegiada: Información financiera o de clientes específicos utilizada para extorción.

  • Obtención de accesos: Obtener aprobación de un acceso restringido para un usuario de menor jerarquía donde el rol no se lo permite.

  • Información sobre servidores Críticos: Información sobre los sistemas que administra el usuario, útiles para un ataque con persistencia, así como obtener vulnerabilidades detectadas de índole confidencial.

  • Instalar software malicioso de un ataque previamente ejecutado: Utilizado apara Comando y control 

Para garantizar el éxito de la llamada es importante siempre mantener un tono amistosos con matices sumisos. Ya que gran parte de los humanos nos sentimos cómodos teniendo el control pero si perder de vista el objetivo. Es decir debemos mantener un tono sumiso haciendo pensar a la persona que necesitamos realmente de su ayuda, esto generará en el un sentimiento de poder y de empatía al sentirse útil para un fin. Una vez que generamos la confianza es posible empezar a dar instrucciones sin levantar sospechas. 

Es importante que durante el ataque, las instrucciones que daremos a la victima sean de manera sutil y generando mas el sentimiento de querer hacerlo que forzarlo a hacerlo y al mismo tiempo generar un sentimiento de urgencia. Si bien estos conceptos pueden sonar contradictorios, es posible mantener una llamada relajada y al mismo tiempo denotar la importancia por la cual se requiere la información solicitada.

Es importante mantener un programa de concientización de seguridad de la información dentro de una organización, ya que como mencioné, los seres humanos no tenemos algún tipo de barrera informática para evitar ser estafados por el vector de ataque Vishing, por lo que entrenar la parte lógica del cerebro para detectar este tipo de ataques es fundamental para salvaguardar la confidencialidad de la información. No debemos dar información sensible con respecto a accesos y a procesos críticos que atentan con la continuidad del negocio, y esto se logra con el entendimiento holístico de los procesos a cargo de cada Rol y el riesgo que estos pueden generar. 

Be smart, always ask. 

- Néstor M.G.