Los atacantes están utilizando cada vez más kits de herramientas de phishing, incluyendo opciones de código abierto, comerciales y criminales, para ejecutar ataques de adversario en el medio (AitM). Estos métodos permiten a los atacantes no solo recopilar credenciales, sino también robar sesiones en vivo, lo que les permite eludir controles tradicionales como MFA, EDR y filtrado de contenido de correo electrónico.
La ciberseguridad actual se encuentra en una nueva era donde la identidad es el nuevo perímetro. Esto significa que las identidades son la fruta más fácil para los atacantes al intentar acceder a una posible víctima.
¿Qué es el phishing AitM?
El phishing AitM es una técnica que utiliza herramientas dedicadas para actuar como proxy entre el objetivo y un portal de inicio de sesión legítimo. La página aparecerá exactamente como el usuario espera, ya que está iniciando sesión en el sitio legítimo, simplemente tomando un desvío a través del dispositivo del atacante.
Esto le da al AitM una mayor sensación de autenticidad y hace que el compromiso sea menos obvio para el usuario. Sin embargo, debido a que el atacante está sentado en medio de esta conexión, puede observar todas las interacciones y también tomar el control de la sesión autenticada para hacerse con el control de la cuenta del usuario.
Si bien este acceso es técnicamente temporal (dado que el atacante no puede volver a autenticarse si se le solicita), en la práctica las sesiones autenticadas pueden durar hasta 30 días o más si se mantienen activas. Además, existen técnicas de persistencia que permiten al atacante mantener cierto nivel de acceso a la cuenta del usuario y/o a la aplicación objetivo de forma indefinida.
¿Cómo funcionan los kits de herramientas de AitM?
Las dos técnicas principales utilizadas para implementar el phishing AitM son: servidores proxy web inversos (AitM clásico) y técnicas de navegador en el medio (BitM). Hay dos variantes principales de kits de herramientas AitM:
Proxy web inverso
Este es posiblemente el enfoque más escalable y confiable desde el punto de vista del atacante. Cuando una víctima visita un dominio malicioso, las solicitudes HTTP se pasan entre el navegador de la víctima y el sitio real a través del sitio malicioso.
Las herramientas de código abierto que demuestran este método incluyen Modlishka, Muraena y Evilginx. En el mundo criminal también hay disponibles conjuntos de herramientas privadas similares que se han utilizado en muchas infracciones en el pasado.
BitM
Esta técnica engaña al objetivo para que controle directamente el navegador del atacante mediante enfoques como VNC y RDP. Esto permite al atacante recopilar no solo el nombre de usuario y la contraseña, sino también todos los demás secretos y tokens asociados al inicio de sesión.
En este caso, la víctima no está interactuando con un clon o proxy de un sitio web falso. Literalmente, controlan de forma remota el navegador del atacante para iniciar sesión en la aplicación legítima sin darse cuenta.
El enfoque más común para implementar esta técnica es utilizar el proyecto de código abierto noVNC, que permite utilizar VNC en el navegador. Un ejemplo conocido de una herramienta ofensiva que implementa esto es EvilnoVNC, que activa instancias Docker de VNC y proporciona acceso a ellas, al mismo tiempo que registra las pulsaciones de teclas y las cookies para facilitar el compromiso de la cuenta.
Phishing AitM
El perímetro digital de las organizaciones ha cambiado con la evolución de la TI empresarial hacia servicios y aplicaciones basados en la web. Los atacantes están invirtiendo en el desarrollo y comercialización de kits de herramientas de phishing avanzados, lo que es un fuerte indicador de las oportunidades que presentan los ataques de identidad.
Esto está respaldado por datos como:
- El 80% de los ataques actuales involucran identidad y credenciales comprometidas (CrowdStrike).
- El 79% de los ataques a aplicaciones web fueron el resultado de credenciales vulneradas (Verizon).
- El 75 % de los ataques en 2023 fueron libres de malware y los ataques «conscientes de la nube» aumentaron en un 1,1 veces (CrowdStrike).
Los atacantes ahora tienen muchas oportunidades de causar daños importantes con mucho menos esfuerzo que antes. Por ejemplo, si el objetivo es comprometer una aplicación como Snowflake y deshacerse de sus datos, la Kill Chain es mucho más corta que un ataque tradicional basado en red.
Los kits de herramientas de phishing de AitM son efectivamente el equivalente de identidad de un marco C2. En el mundo de los ataques a terminales y redes, conjuntos de herramientas como Metasploit y Cobalt Strike se han centrado cada vez más en la post-explotación y la automatización para permitir compromisos mucho más sofisticados.
Las soluciones de prevención de phishing existentes han intentado resolver el problema protegiendo la bandeja de entrada del correo electrónico, un vector de ataque común (pero no el único), y bloqueando listas de dominios conocidos como malos.
El hecho de que el phishing haya seguido siendo un problema durante tanto tiempo es prueba suficiente de que estos métodos no funcionan (y, sinceramente, nunca lo han hecho).
La principal protección antiphishing consiste en bloquear las URL, IP y nombres de dominio conocidos como incorrectos. La principal limitación aquí es que para que los defensores sepan que algo anda mal, es necesario informarlo primero. ¿Cuándo se informan las cosas? Por lo general, solo después de haber sido utilizado en un ataque, por lo que, desafortunadamente, siempre alguien resulta herido y los defensores siempre están un paso detrás de los atacantes.
E incluso si se informan, es trivial para los atacantes ofuscar o cambiar estos componentes:
- Puede buscar URL conocidas como incorrectas en los correos electrónicos, pero estas cambian con cada campaña de phishing. En los ataques modernos, cada objetivo puede recibir un correo electrónico y un enlace únicos.
- Se podría ver a qué dirección IP se conecta el usuario, pero hoy en día es muy sencillo para los atacantes agregar una nueva IP a su servidor alojado en la nube.
- Si un dominio se marca como malo, el atacante solo tiene que registrar un nuevo dominio o comprometer un servidor de WordPress en un dominio ya confiable. Ambas cosas están sucediendo a gran escala.
- No es necesario que el sitio web del atacante envíe a cada visitante al mismo sitio web. Puede cambiar dinámicamente según la procedencia del visitante, lo que significa que es posible que las herramientas de detección que resuelven dónde van los enlaces para analizarlos no se muestren en la página de phishing.
Una investigación reciente que analizó el kit de phishing de NakedPages encontró 9 pasos separados que el atacante utilizó para ofuscar el sitio de phishing y enmascarar su actividad maliciosa:
- Usar Cloudflare Workers para darle al sitio un dominio legítimo.
- Usar Cloudflare Turnstile para evitar que los robots accedan al sitio.
- Requerir ciertos parámetros de URL y encabezados para que funcione la solicitud HTTP(S).
- Requerir la ejecución de JavaScript para ofuscarse de las herramientas de análisis estático.
- Redirigir a dominios legítimos si no se cumplen las condiciones.
- Enmascarar el encabezado de referencia HTTP para realizar la redirección de forma anónima.
- Redirigir a un grupo de URL para mantener activos los enlaces maliciosos.
- Rompiendo firmas de páginas de inicio de sesión fáciles.
- Solo se activa para cuentas laborales de Microsoft, no para cuentas personales.
Está claro que se requiere un enfoque diferente si los sitios de phishing de AitM van a ser detectados de manera confiable antes de que se pueda reclamar a una víctima.
Construyendo mejores detecciones usando la Pirámide del Dolor
Entonces, ¿cómo se crean controles que puedan detectar y bloquear un sitio de phishing la primera vez que se utiliza?
La respuesta es encontrar indicadores que sean más difíciles de cambiar para los atacantes. Los miembros del equipo azul han utilizado el concepto de la Pirámide del Dolor para guiarlos hacia tales detecciones durante más de una década.