Microsoft Device Code Phishing Campaign (EvilTokens / Storm-2372 Evolution)
Microsoft Device Code Phishing Campaign es una campaña de phishing avanzada y generalizada detectada por Microsoft Defender Security Research que abusa del flujo de autenticación legítimo de código de dispositivo OAuth 2.0 para comprometer cuentas de organizaciones a gran escala. Esta campaña, que coincide con la aparición de EvilTokens, un conjunto de herramientas de phishing como servicio (PhaaS), representa una evolución significativa respecto a campañas anteriores como la de Storm-2372 observada en febrero de 2025. La campaña se distingue por su alto grado de automatización, el uso de inteligencia artificial generativa para crear señuelos hiperpersonalizados, y una infraestructura dinámica que elude las defensas tradicionales. Los atacantes utilizan plataformas de automatización como Railway.com para activar miles de nodos de sondeo únicos y de corta duración, generan códigos de dispositivo dinámicamente en el momento de la interacción del usuario para eludir la ventana de caducidad estándar de 15 minutos, y emplean señuelos generados por IA adaptados al rol de la víctima (solicitudes de propuestas, facturas, flujos de trabajo de fabricación). Una vez obtenidos los tokens de autenticación, los atacantes realizan reconocimiento con Microsoft Graph, crean reglas de bandeja de entrada maliciosas para persistencia y exfiltración, y se centran en objetivos de alto valor como usuarios con roles financieros o ejecutivos. La campaña utiliza una cadena de redirecciones a través de dominios legítimos comprometidos y plataformas serverless de alta reputación (Vercel, Cloudflare Workers, AWS Lambda) para evadir escáneres y listas negras. Esta actividad demuestra un aumento significativo en la sofisticación de los ciberdelincuentes, combinando automatización de extremo a extremo, IA generativa y abuso de protocolos legítimos de autenticación.
Nombres Alternativos / Aliases
- EvilTokens Campaign (Por el conjunto de herramientas PhaaS identificado)
- Device Code Phishing 2.0 (Por la evolución de la técnica)
- Storm-2372 Evolution (Por la campaña anterior)
- OAuth Device Code Abuse Campaign (Por el flujo de autenticación explotado)
- AI-Powered Phishing Campaign (Por el uso de IA generativa)
Fecha de Detección / Actividad
- Campaña Anterior Relacionada: Storm-2372 (observada en febrero de 2025)
- Fecha de Detección por Microsoft Defender: Marzo - abril de 2026
- Fecha de Publicación del Análisis: 13 de abril de 2026
- Período de Reconocimiento Previo al Ataque: 10-15 días antes del intento de phishing
- Estado: Activo. La campaña continúa evolucionando con nueva infraestructura y señuelos.
Actor de Amenaza (Atribución)
- Nombre del Actor: No atribuido a un grupo específico; asociado a EvilTokens (conjunto de herramientas PhaaS) y posiblemente relacionado con Storm-2372.
- Tipo de Actor: Grupo de ciberdelincuencia que opera un modelo de Phishing como Servicio (PhaaS). Venden o alquilan la infraestructura y las herramientas a otros ciberdelincuentes.
- Sofisticación: Muy alta. La campaña demuestra capacidades avanzadas: automatización de extremo a extremo con plataformas como Railway.com, generación dinámica de códigos de dispositivo para eludir ventanas de caducidad, uso de IA generativa para crear señuelos hiperpersonalizados, cadena de redirecciones multi-etapa con abuso de plataformas serverless legítimas (Vercel, Cloudflare Workers, AWS Lambda), secuestro del portapapeles mediante API de navegador, sondeo en tiempo real del estado de autenticación, y actividades posteriores a la intrusión que incluyen reconocimiento con Microsoft Graph, creación de reglas de bandeja de entrada maliciosas y exfiltración selectiva de datos de objetivos de alto valor.
Resumen Ejecutivo
Microsoft Device Code Phishing Campaign representa una nueva generación de ataques de phishing que abusan del flujo de autenticación legítimo de código de dispositivo OAuth 2.0, diseñado originalmente para dispositivos con capacidades de entrada limitadas (como televisores inteligentes o impresoras). En este ataque, los ciberdelincuentes inician el proceso de autenticación y proporcionan a la víctima un código mediante un señuelo de phishing. Cuando la víctima introduce el código en el portal oficial microsoft.com/devicelogin, autoriza sin saberlo la sesión del atacante, otorgándole acceso a la cuenta sin necesidad de exponer credenciales ni evadir la autenticación multifactor (MFA). La campaña se distingue por su automatización avanzada: los atacantes utilizan plataformas como Railway.com para activar miles de nodos de sondeo únicos y de corta duración, generan códigos de dispositivo dinámicamente en el momento en que el usuario hace clic en el enlace de phishing (resolviendo así el problema de la caducidad de 15 minutos), y emplean IA generativa para crear correos electrónicos hiperpersonalizados adaptados al rol de la víctima (ejecutivos, finanzas, fabricación). La cadena de ataque incluye múltiples redirecciones a través de dominios legítimos comprometidos y plataformas serverless de alta reputación (Vercel, Cloudflare Workers, AWS Lambda) para evadir la detección. Una vez obtenidos los tokens, los atacantes realizan reconocimiento con Microsoft Graph, crean reglas de bandeja de entrada maliciosas (con nombres que contienen solo caracteres especiales) para persistencia y exfiltración, y se centran en objetivos de alto valor, especialmente aquellos con roles financieros. Esta campaña demuestra un salto cualitativo en la sofisticación del phishing, combinando automatización, IA y abuso de protocolos legítimos para eludir MFA y las defensas tradicionales.
Vectores de Ataque / Métodos de Explotación
- Correos Electrónicos de Spearphishing con IA: Los atacantes utilizan inteligencia artificial generativa para crear correos electrónicos dirigidos y personalizados según el rol de la víctima, con temas como solicitudes de propuestas (RFP), facturas, flujos de trabajo de fabricación o "Acción requerida: Caducidad de la contraseña".
- Cadena de Redirecciones Multi-Etapa: Los correos contienen enlaces o archivos adjuntos que, al ser abiertos, inician una serie de redirecciones a través de dominios legítimos comprometidos y plataformas serverless de alta reputación (Vercel, Cloudflare Workers, AWS Lambda), evadiendo escáneres de URL y sandboxes.
- Página de Destino con Navegador-dentro-del-Navegador: La página final presenta una interfaz que simula una ventana de navegador legítima, mostrando una imagen borrosa, un botón de "Verificar identidad" que redirige a microsoft.com/devicelogin, y el código del dispositivo.
- Secuestro del Portapapeles: El script de la página copia automáticamente el código de dispositivo generado al portapapeles del usuario mediante la API
navigator.clipboard.writeText, facilitando que el usuario lo pegue en el portal legítimo. - Generación Dinámica de Códigos de Dispositivo: A diferencia de campañas estáticas anteriores donde el código se pregeneraba en el correo, esta campaña genera el código en el momento en que el usuario hace clic en el enlace, asegurando que la ventana de 15 minutos de validez comience justo cuando el usuario está listo para autenticarse.
- Sondeo en Tiempo Real: El script de la página entra en un estado de sondeo (cada 3-5 segundos) para monitorear si el usuario ha completado la autenticación, validando el estado a través del endpoint
/statedel atacante.
Técnicas, Tácticas y Procedimientos (TTPs) - MITRE ATT&CK
| Táctica (MITRE ATT&CK) | Técnica / Subtécnica | Descripción / Implementación |
|---|---|---|
| Reconnaissance (TA0043) | Gather Victim Identity Information (T1589) - Email Addresses (T1589.002) | Los atacantes verifican la validez de las cuentas objetivo mediante el endpoint GetCredentialType de Microsoft, 10-15 días antes del ataque. |
| Reconnaissance (TA0043) | Active Scanning (T1595) | Escaneo de perfiles públicos y directorios corporativos para identificar objetivos de alto valor (roles financieros, ejecutivos). |
| Resource Development (TA0042) | Acquire Infrastructure (T1583) - Domains (T1583.001) | Registro de dominios que suplantan servicios técnicos (graph-microsoft[.]com, portal-azure[.]com, office365-login[.]com) y múltiples subdominios aleatorios. |
| Resource Development (TA0042) | Compromise Infrastructure (T1584) | Compromiso de dominios legítimos para usarlos como redireccionadores en la cadena de phishing. |
| Initial Access (TA0001) | Phishing: Spearphishing Link (T1566.002) | Envío de correos electrónicos con enlaces maliciosos que inician la cadena de redirecciones hacia la página de phishing. |
| Execution (TA0002) | User Execution: Malicious Link (T1204.001) | El usuario hace clic en el enlace malicioso, iniciando la cadena de ataque. |
| Defense Evasion (TA0005) | Obfuscated Files or Information (T1027) | Uso de múltiples redirecciones a través de dominios legítimos y plataformas serverless para evadir detección. |
| Defense Evasion (TA0005) | Deobfuscate/Decode Files or Information (T1140) | Los scripts de la página maliciosa descifran y ejecutan lógica de backend compleja. |
| Defense Evasion (TA0005) | Virtualization/Sandbox Evasion (T1497) | La generación dinámica de códigos y el uso de plataformas de alta reputación dificultan el análisis en sandboxes. |
| Credential Access (TA0006) | Input Capture: Web Portal Capture (T1056.003) | Captura de códigos de dispositivo y tokens de autenticación mediante el abuso del flujo OAuth legítimo. |
| Credential Access (TA0006) | Steal Web Session Cookie (T1539) | Los tokens de acceso y actualización robados permiten el secuestro de sesión sin necesidad de contraseña. |
| Collection (TA0009) | Email Collection (T1114) - Remote Email Collection (T1114.002) | Exfiltración de correos electrónicos mediante reglas de bandeja de entrada maliciosas y acceso a través de Microsoft Graph. |
| Collection (TA0009) | Data Staged (T1074) | Almacenamiento temporal de datos exfiltrados antes de su transferencia final. |
| Command and Control (TA0011) | Application Layer Protocol (T1071) - Web Protocols (T1071.001) | Comunicación con infraestructura del atacante a través de HTTPS y APIs REST. |
| Command and Control (TA0011) | Web Service (T1102) - Dead Drop Resolver (T1102.001) | Uso de plataformas legítimas (Railway.com, Vercel, Cloudflare Workers) como infraestructura de C2 encubierta. |
| Persistence (TA0003) | Event Triggered Execution (T1546) | Creación de reglas de bandeja de entrada maliciosas (Inbox Rules) que redirigen u ocultan correos electrónicos. |
| Discovery (TA0007) | Account Discovery (T1087) - Cloud Account (T1087.004) | Reconocimiento con Microsoft Graph para mapear estructuras organizativas y permisos. |
| Exfiltration (TA0010) | Exfiltration Over Web Service (T1567) | Exfiltración de datos robados a través de servicios web legítimos. |
| Impact (TA0040) | Data Manipulation (T1565) | Manipulación de correos electrónicos mediante reglas de bandeja de entrada que redirigen comunicaciones. |
Flujo de Ataque (Cyber Kill Chain)
- Reconocimiento y Validación del Objetivo (10-15 días antes): El atacante verifica la validez de las cuentas objetivo mediante el endpoint GetCredentialType de Microsoft. Identifica perfiles de alto valor (finanzas, ejecutivos) mediante análisis de perfiles públicos y directorios corporativos.
- Armamento: El atacante configura la infraestructura de ataque: dominios de suplantación, redireccionadores en plataformas serverless (Vercel, Cloudflare Workers, AWS Lambda), y las páginas de phishing con scripts de automatización. Prepara los correos electrónicos personalizados con IA generativa.
- Entrega: Se envían correos electrónicos de spearphishing a las víctimas objetivo, con temas como facturas, solicitudes de propuestas o "Acción requerida: Caducidad de la contraseña".
- Explotación: El usuario hace clic en el enlace malicioso. Comienza una cadena de redirecciones a través de dominios legítimos comprometidos y plataformas serverless, evadiendo los escáneres de seguridad.
- Instalación (Generación Dinámica): Al llegar a la página de destino final, el script de la página realiza una solicitud POST al servidor del atacante, que actúa como proxy y genera un código de dispositivo válido (15 minutos) en tiempo real. El script copia automáticamente el código al portapapeles del usuario.
- Comando y Control (Sondeo): El script entra en estado de sondeo (cada 3-5 segundos), enviando consultas al endpoint
/statedel atacante para verificar si el usuario ha completado la autenticación. - Acción sobre Objetivos: El usuario pega el código en microsoft.com/devicelogin y completa la autenticación (con MFA si está configurada). El atacante recibe los tokens de acceso y actualización. Posteriormente: (a) realiza reconocimiento con Microsoft Graph, (b) crea reglas de bandeja de entrada maliciosas, (c) exfiltra correos electrónicos de objetivos de alto valor.
Infraestructura Utilizada
| Tipo | Indicador / Característica | Propósito |
|---|---|---|
| Plataformas de Automatización | Railway.com (rangos IP: 160.220.232.0, 160.220.234.0) | Alojar la lógica de backend (Node.js) y activar nodos de sondeo de corta duración. |
| Plataformas Serverless | Vercel (.vercel.app), Cloudflare Workers (.workers.dev), AWS Lambda | Alojar redireccionadores y páginas de phishing, evadiendo listas negras. |
| Dominios de Suplantación | graph-microsoft[.]com, portal-azure[.]com, office365-login[.]com | Imitar servicios legítimos de Microsoft. |
| Subdominios Aleatorios | a7b2-c9d4.office-verify[.]net (ejemplo) | Evitar bloqueos de dominio completo. |
| Servidores de Backend | HZ Hosting (rangos IP: 89.150.45.0, 185.81.113.0) | Alojar la lógica de generación de códigos y sondeo. |
| Portal Legítimo Abusado | microsoft.com/devicelogin | Punto de autenticación legítimo donde la víctima introduce el código. |
Objetivos y Sectores Afectados
- Objetivo Principal: Cuentas de organizaciones que utilizan Microsoft Entra ID (anteriormente Azure AD) para autenticación.
- Perfiles de Alto Valor: Usuarios con roles financieros, ejecutivos, administrativos.
- Temas de Señuelo: Solicitudes de propuestas (RFP), facturas, flujos de trabajo de fabricación, notificaciones de caducidad de contraseña, acceso a documentos, firma electrónica, notificaciones de correo de voz.
- Distribución Geográfica: Global (campaña generalizada detectada por Microsoft Defender).
- Tipo de Datos Comprometidos: Tokens de autenticación (acceso y actualización), correos electrónicos, estructura organizativa, permisos.
Impacto y Riesgo
- Nivel de Riesgo: Crítico para organizaciones que no han restringido el flujo de código de dispositivo o no tienen políticas de acceso condicional adecuadas.
- Impacto Potencial:
- Compromiso de Cuentas sin Robo de Contraseña: El atacante obtiene acceso completo a la cuenta sin necesidad de credenciales, evadiendo la MFA.
- Persistencia a Largo Plazo: Los tokens de actualización (refresh tokens) y el registro de nuevos dispositivos permiten al atacante mantener acceso incluso después de que la víctima cambie su contraseña.
- Exfiltración de Datos Sensibles: Robo de correos electrónicos financieros, facturas, correspondencia ejecutiva.
- Reconocimiento de la Estructura Organizativa: Mapeo de permisos y relaciones jerárquicas para futuros ataques.
- Movimiento Lateral: Uso de la cuenta comprometida para acceder a otros sistemas y aplicaciones.
- Daño Reputacional: Pérdida de confianza en la seguridad de la identidad corporativa.
- Evolución respecto a Storm-2372: Esta campaña es significativamente más sofisticada que la campaña anterior de febrero de 2025, con automatización de extremo a extremo, generación dinámica de códigos, IA generativa para señuelos, y abuso de plataformas serverless.
Recomendaciones de Mitigación
- Restringir o Bloquear el Flujo de Código de Dispositivo (M1030):
- Microsoft recomienda bloquear el flujo de código de dispositivo siempre que sea posible. Configurar políticas de acceso condicional de Microsoft Entra ID para deshabilitar este flujo para todos los usuarios o solo para aquellos que no lo necesiten.
- Si es necesario, configurar el flujo para que solo esté disponible para dispositivos y usuarios específicos y autorizados.
- Configurar Políticas de Riesgo de Inicio de Sesión (M1032):
- Implementar políticas de acceso condicional que evalúen el nivel de riesgo de inicio de sesión (bajo/medio/alto).
- Configurar respuestas automáticas: bloquear acceso, exigir reautenticación o cambiar contraseña para inicios de sesión riesgosos.
- Utilizar los informes de inicio de sesión de Risky de Microsoft Entra ID Protection para monitorear actividad anómala.
- Implementar Métodos de Autenticación Resistentes al Phishing (M1032):
- Utilizar claves de seguridad FIDO2 o Microsoft Authenticator con passkeys (claves de acceso).
- Evitar métodos MFA basados en telefonía (SMS, llamadas de voz) que son susceptibles a ataques de phishing y robo de SIM.
- Educación y Concientización del Usuario (M1017):
- Enseñar a los usuarios a identificar solicitudes de inicio de sesión inesperadas. Desde 2021, las interacciones de Microsoft Azure solicitan al usuario que confirme ("Cancelar" o "Continuar") que está iniciando sesión en la aplicación esperada.
- Advertir sobre mensajes "[EXTERNAL]" con enlaces sospechosos. No iniciar sesión en recursos proporcionados por remitentes desconocidos.
- Explicar el abuso del flujo de código de dispositivo: nunca introducir un código de dispositivo proporcionado por un tercero.
- Configurar Políticas Antiphishing y Safe Links (M1021):
- Configurar políticas antiphishing en Microsoft Defender para Office 365 para detectar remitentes falsificados, intentos de suplantación de identidad y técnicas engañosas.
- Activar Safe Links (Enlaces seguros) para analizar enlaces maliciosos en tiempo real y activar alertas de phishing con código de dispositivo de alta confianza.
Herramientas de Detección
- Microsoft Defender XDR: Detecta autenticación sospechosa de Azure mediante posible intento de phishing a través de código de dispositivo. Incluye detecciones específicas como "Compromiso de cuenta de usuario mediante phishing con código de dispositivo OAuth" y "Código de dispositivo sospechoso tras hacer clic en un enlace de un remitente desconocido".
- Microsoft Defender para Office 365: Ofrece protección previa a la entrega contra correos electrónicos de phishing con código de dispositivo.
- Microsoft Defender para Identidad: Detecta actividad anómala de autenticación de código de dispositivo OAuth.
- Microsoft Entra ID Protection: Identifica inicios de sesión desde direcciones IP anónimas (RiskEventType: anonymizedIPAddress) y utiliza inteligencia de amenazas (RiskEventType: investigationsThreatIntelligence).
- Microsoft Sentinel: Los clientes pueden usar analíticas de mapeo de TI y consultas personalizadas para detectar intentos de phishing y exfiltración de correo electrónico mediante Graph API.
- Caza Avanzada (Microsoft 365 Defender): Consultas KQL para validar códigos de error 50199 seguidos de éxito, autenticación desde rangos IP sospechosos, correlación de clics en URL con inicios de sesión riesgosos, y detección de reglas de bandeja de entrada con nombres que contienen solo caracteres especiales.
Referencias y Fuentes
- Microsoft Defender Security Research Team. (2026, 13 de abril). Dentro de una campaña de phishing de código de dispositivo con IA. (Artículo proporcionado por el usuario).
- Microsoft. (2025, febrero). *Storm-2372 device code phishing campaign*. (Campaña anterior mencionada).
- MITRE ATT&CK Framework. Enterprise Matrix. (Para mapeo de TTPs).
- OAuth 2.0 Device Authorization Grant (RFC 8628). (Estándar técnico abusado).
Historial de Revisiones
| Fecha | Versión | Autor | Cambios Realizados |
|---|---|---|---|
| 2026-04-13 | 1.0 | Fernando Vargas Hincapié | Creación inicial de la entrada basada en el análisis de Microsoft Defender. |
Indicadores de Compromiso (IOCs)
| Tipo | Valor |
|---|---|
| Rangos IP (Railway.com) | 160.220.232.0, 160.220.234.0 |
| Rangos IP (HZ Hosting) | 89.150.45.0, 185.81.113.0 |
| Plataformas Abusadas | Railway.com, Vercel (.vercel.app), Cloudflare Workers (.workers.dev), AWS Lambda |
| Dominios de Suplantación | graph-microsoft[.]com, portal-azure[.]com, office365-login[.]com |
| Patrón de Subdominios | a7b2-c9d4.office-verify[.]net (formato alfanumérico aleatorio) |
| Flujo de Autenticación Abusado | OAuth 2.0 Device Authorization Grant (microsoft.com/devicelogin) |
| Código de Error Clave | 50199 (código de dispositivo caducado o no encontrado, seguido de éxito 0) |
| API Abusadas | GetCredentialType (reconocimiento), Microsoft Graph (reconocimiento y exfiltración) |
| Reglas de Bandeja de Entrada Maliciosas | Nombres que contienen solo caracteres especiales: ^[!@#$%^&*()_+={[}\\]|\\:;""'<,>.?/~ -]+$` |
|
| Patrón Temporal | Reconocimiento 10-15 días antes del ataque; ventana de código de 15 minutos; sondeo cada 3-5 segundos |
| Comportamiento Anómalo | Autenticación de código de dispositivo desde rangos IP de Railway.com |
| Comportamiento Anómalo | Código de error 50199 seguido de éxito 0 en un intervalo de 5 minutos |
| Comportamiento Anómalo | Registro de dispositivos ("Device Registration Service") tras inicio de sesión con código de dispositivo |
| Comportamiento Anómalo | Creación de reglas de bandeja de entrada con nombres de solo caracteres especiales |
Etiquetas / Categorías
phishing device-code oauth evil-tokens storm-2372 microsoft-defender phishing-as-service phaas ai-phishing railway-com vercel cloudflare-workers aws-lambda graph-api entra-id conditional-access mfa-bypass token-theft inbox-rules ciberwiki microsoft-security device-code-phishing campaña-phishing automatizacion-phishing ia-phishing evil-tokens-campaign