APT29 (Cozy Bear): SVR, SolarWinds y Operaciones en la Nube
Perfil técnico de APT29 (Cozy Bear/Midnight Blizzard/Nobelium): SVR ruso. El grupo detrás de SolarWinds, ataques a cloud/Azure AD, herramientas (WellMess,.
APT29 es el grupo de espionaje del SVR ruso y el autor del ataque a la cadena de suministro más sofisticado de la historia
TL;DR: APT29 es un grupo de espionaje del SVR ruso especializado en infiltraciones sigilosas y ataques avanzados a entornos de nube. A diferencia de otros grupos, su operación SolarWinds demostró un nivel de élite Tier 1 al comprometer la cadena de suministro global de forma casi invisible. Se recomienda fortalecer la seguridad en Azure AD y monitorizar tokens SAML para mitigar sus sofisticadas tácticas de persistencia.
APT29 (Cozy Bear) pertenece al SVR (Sluzhba Vneshney Razvedki), el servicio de inteligencia exterior de Rusia. Mientras APT28 (GRU) es agresivo y a veces ruidoso, APT29 es paciente, meticuloso e invisible. Su operación contra SolarWinds demostró un nivel de sofisticación que redefinió lo que un APT puede hacer.
Ficha del grupo
| Campo | Detalle |
|---|---|
| MITRE ID | G0016 |
| Nombres | Cozy Bear, Midnight Blizzard, Nobelium, The Dukes, Dark Halo, UNC2452, Yttrium, BlueBravo |
| Atribución | SVR (Servicio de Inteligencia Exterior de Rusia) |
| País | Rusia |
| Motivación | Espionaje político, diplomático, tecnológico |
| Activo desde | 2008 (posiblemente 2006) |
| Nivel | Tier 1 (elite): supply chain, cloud-native, OPSEC excepcional |
| Sectores | Gobierno, diplomático, think tanks, tech/cloud, energía, salud (COVID vaccines) |
| Regiones | EEUU, Europa, OTAN, Ucrania |
Herramientas y malware
| Herramienta | Tipo | Nota |
|---|---|---|
| SUNBURST | Supply chain backdoor | Insertado en SolarWinds Orion (2020) |
| TEARDROP | Memory-only dropper | Cargador en memoria para Cobalt Strike post-SUNBURST |
| SUNSPOT | Build implant | Modificaba código fuente de Orion durante compilación |
| MagicWeb | AD FS backdoor | Manipula tokens SAML para acceso persistente a M365/Azure |
| FoggyWeb | AD FS backdoor | Exfiltra config de AD FS y descifra tokens |
| WellMess | Backdoor | Go/C++, usado contra investigadores de vacunas COVID |
| WellMail | Backdoor | Complemento de WellMess para exfiltración |
| EnvyScout | HTML smuggler | HTML attachment que reconstruye ISO/payload en navegador |
| BoomBox | Downloader | Descarga payloads desde Dropbox |
| NativeZone/VaporRage | Shellcode loader | Loaders en campañas 2021+ |
| GraphicalNeutrino | Backdoor | Usa Notion API como C2 (2023) |
Patrón evolutivo
2008-2015: The Dukes era (CozyDuke, MiniDuke, CosmicDuke)
→ Backdoors modulares, phishing dirigido
2016-2019: Transición (DNC, operaciones contra OTAN)
→ Phishing sofisticado, credential harvesting
2020: SolarWinds (SUNBURST/SUNSPOT)
→ Supply chain attack, nuevo paradigma
2021-2023: Cloud-native (MagicWeb, FoggyWeb, EnvyScout)
→ Ataques a Azure AD, M365, SAML token manipulation
2024-2026: Servicios legítimos como C2 (Notion, Teams, OneDrive)
→ C2 sobre APIs de servicios cloud legítimos
SolarWinds: anatomía del ataque más sofisticado
FASE 1: SUPPLY CHAIN COMPROMISE (oct 2019 - feb 2020)
APT29 accede al entorno de desarrollo de SolarWinds
Inserta SUNSPOT: modifica código fuente durante build
SUNBURST se compila en actualizaciones legítimas de Orion
FASE 2: DISTRIBUCIÓN (mar 2020 - dic 2020)
Actualización troyanizada distribuida a 18.000 organizaciones
SUNBURST se activa tras 12-14 días de latencia (anti-sandbox)
Verifica: no estar en sandbox, dominio de la víctima es interesante
FASE 3: SELECCIÓN DE TARGETS
De 18.000 organizaciones, APT29 selecciona menos de 100
Criterio: agencias gobierno US, tech companies, think tanks
Víctimas confirmadas: Treasury, State Dept, DHS, FireEye, Microsoft
FASE 4: POST-EXPLOTACIÓN
SUNBURST → descarga TEARDROP → Cobalt Strike beacon
Movimiento lateral dentro de la organización
Objetivo: acceso a email ejecutivos, documentos clasificados
FASE 5: CLOUD PIVOT
Desde AD on-prem → SAML token forge → acceso a M365/Azure
MagicWeb/FoggyWeb en AD FS para persistencia cloud
Lectura de emails sin tocar endpoints (cloud-to-cloud)
DETECCIÓN: dic 2020 por FireEye (13-14 meses después del inicio)
Técnicas ATT&CK principales
| Táctica | Técnica | ID | Uso específico |
|---|---|---|---|
| Initial Access | Supply Chain Compromise | T1195.002 | SolarWinds, 3CX-like |
| Initial Access | Phishing | T1566.001 | EnvyScout HTML smuggling |
| Execution | Cloud Admin Command | T1651 | Azure PowerShell, Graph API |
| Persistence | SAML Token Forge | T1606.002 | Golden SAML con MagicWeb |
| Persistence | AD FS Compromise | T1556.006 | FoggyWeb, MagicWeb |
| Credential Access | Steal Application Token | T1528 | OAuth app tokens |
| Defense Evasion | Use Alternate Auth Material | T1550.001 | Tokens SAML forjados |
| C2 | Web Service | T1102 | Dropbox, Notion, OneDrive como C2 |
| C2 | Application Layer Protocol | T1071.001 | HTTPS a Microsoft Graph API |
| Exfiltration | Over C2 Channel | T1041 | Datos via canal C2 existente |
Detección
Indicadores de operaciones cloud APT29
Señales en Azure AD/M365:
- Nuevas aplicaciones OAuth con permisos de lectura de email
- Modificaciones en AD FS signing certificates
- Service principals creados por usuarios no admin
- Consent grants para aplicaciones desconocidas
- Acceso a emails via Graph API desde IPs no corporativas
- SAML token anomalies (lifetime, claims)
Señales on-premise:
- Modificaciones en AD FS configuration database
- DLLs inesperadas cargadas por AD FS service
- Acceso a certificados de firma AD FS (private key export)
- Tráfico a servicios cloud (Dropbox, Notion, OneDrive) desde servidores
Prevención prioritaria
- Proteger AD FS: monitorizar cambios en configuración, firmas, y DLLs cargadas
- Conditional Access: policies que restrinjan acceso cloud por IP, dispositivo, riesgo
- Application consent: restringir quién puede aprobar OAuth apps
- SolarWinds/Orion: si usas, parchear y monitorizar con prioridad crítica
- SAML monitoring: detectar tokens con claims anómalos o lifetimes inusuales
- Cloud logs: habilitar Unified Audit Log en M365, Cloud App Security
APT29 vs APT28: comparativa
| Aspecto | APT29 (SVR) | APT28 (GRU) |
|---|---|---|
| Agencia | SVR (inteligencia exterior) | GRU (inteligencia militar) |
| Estilo | Sigiloso, paciente, invisible | Agresivo, rápido, a veces ruidoso |
| Sofisticación | Tier 1 (elite) | Tier 2 (avanzado) |
| Supply chain | Sí (SolarWinds) | No documentado |
| Cloud-native | Sí (Azure AD, M365, SAML) | Limitado |
| OPSEC | Excepcional (meses-años sin detección) | Bueno pero a veces descuidado |
| Dwell time | 6-18 meses | 1-6 meses |
| Operaciones públicas | Evita (prefiere no ser atribuido) | Algunas deliberadamente públicas (WADA, DNC leaks) |
| Herramientas | Custom, evolución constante | Custom + públicas |
Conclusión
APT29 representa el techo de lo que un APT puede lograr: comprometer cadenas de suministro de software global, operar en entornos cloud con maestría, y permanecer sin detectar durante más de un año. Para defensores, APT29 es el adversario que valida si tu seguridad cloud (AD FS, OAuth, SAML, Conditional Access) es real o es teatro. El siguiente perfil cubre APT41, el grupo chino que combina espionaje con cibercrimen.
Fuentes y referencias
- MITRE ATT&CK: APT29 (G0016)
- Microsoft: "Midnight Blizzard" threat profile
- Mandiant: "SolarWinds Supply Chain Attack" (2020)
- CISA: Alert AA21-008A (SolarWinds)
- CrowdStrike: "StellarParticle" campaign analysis
- Microsoft: "MagicWeb" and "FoggyWeb" technical analyses
Preguntas frecuentes
Artículos relacionados
APT28 (Fancy Bear): GRU Unit 26165, Herramientas y Campañas
Turla (Snake): 25 Años de Espionaje del FSB Ruso
ATT&CK para Cloud: Técnicas en IaaS y SaaS
Cloud Threats 2026: hallazgos clave de Wiz
Hunting de Exfiltracion de Datos: Detectar
Atribucion y niveles de confianza en CTI
Este contenido tiene fines exclusivamente educativos y de investigación en ciberseguridad defensiva. No se proporcionan binarios maliciosos ni payloads ejecutables. El uso indebido de esta información es responsabilidad exclusiva del usuario. Leer disclaimer completo.