Password Spraying
El password spraying invierte la fuerza bruta clásica: en vez de probar muchas contraseñas contra un usuario (lo que bloquea la cuenta), prueba una contraseña plausible contra muchos usuarios. Como las políticas de bloqueo cuentan intentos por cuenta, un intento por usuario cada cierto tiempo pasa por debajo del umbral. En un dominio con cientos de empleados, basta con que una persona use Empresa2025! o Verano2025 para conseguir un punto de apoyo.
Modelo de amenaza
Sección titulada «Modelo de amenaza»El atacante explota la estadística humana: en cualquier organización grande, alguien usa una contraseña débil que cumple la política de complejidad (Nombre+año+símbolo). Como solo necesita una válida y el spraying evita el bloqueo, el coste es bajísimo y el ruido, moderado. Requiere una lista de usuarios (de Enumeración de Active Directory) y conocer la política de bloqueo para no pasarse.
Prerrequisitos
Sección titulada «Prerrequisitos»- Lista de usuarios válidos (userenum por Kerberos, enum4linux, OSINT de nombres).
- Política de bloqueo (
net accounts,nxc ... --pass-pol): umbral de intentos y ventana de observación → define cuántos intentos y con qué espaciado.
Red Team
Sección titulada «Red Team»Construir las candidatas
Sección titulada «Construir las candidatas»Contraseñas que cumplen complejidad pero son adivinables:
Estación/mes + año + símbolo: Verano2025! Otoño2025! Enero2025!Empresa + año: Acme2025! Acme1234Base común: Password1 Welcome1 Changeme123Patrones de teclado: Qwerty123! Zaq12wsxAdemás: el nombre de usuario como contraseña, y contraseñas de description encontradas en enum.
Lanzar el spray (controlando el bloqueo)
Sección titulada «Lanzar el spray (controlando el bloqueo)»# NetExec contra SMB (respeta el umbral: 1 intento/usuario por ronda)nxc smb <DC> -u users.txt -p 'Verano2025!' --continue-on-success# Kerberos pre-auth (más sigiloso, no genera 4625 de SMB)kerbrute passwordspray -d dominio.local --dc <DC> users.txt 'Verano2025!'# LDAP/WinRM/MSSQL también válidos como superficienxc ldap <DC> -u users.txt -p 'Verano2025!'Regla de oro: un intento por cuenta y por ronda, y espera a que pase la ventana de observación del lockout antes de probar la siguiente contraseña. Mejor pocas contraseñas muy probables que muchas.
Sprays especiales
Sección titulada «Sprays especiales»- AS-REP roasting como spray: si hay cuentas sin preauth, obtienes hashes sin probar contraseñas (Ataques Kerberos).
- Spray contra servicios externos: OWA/Exchange, VPN, ADFS, portales O365 (MFA puede frenar, pero no siempre cubre todo).
- Reutilización: una contraseña crackeada de Responder/NTLM probada contra todos (credential stuffing interno).
Tras una validación
Sección titulada «Tras una validación»Un único [+] da credenciales de dominio → salto a enumeración completa (Enumeración de Active Directory/BloodHound), más spraying con esa contraseña en otros servicios, y búsqueda de dónde esa cuenta es admin local.
Herramientas
Sección titulada «Herramientas»- NetExec (nxc) — spray multiprotocolo (SMB/LDAP/WinRM/MSSQL/RDP) con control de bloqueo.
- kerbrute — spray por Kerberos pre-auth (rápido y más sigiloso).
- DomainPasswordSpray (PowerShell, desde dentro del dominio, autodescubre usuarios y política).
- MailSniper — spray contra OWA/Exchange externos.
Impacto
Sección titulada «Impacto»Acceso inicial o lateral con credenciales válidas de dominio, a menudo partiendo solo de una lista de nombres. Es uno de los vectores de entrada más comunes a AD y el inicio de incontables intrusiones reales.
Blue Team
Sección titulada «Blue Team»Detección
Sección titulada «Detección»- Muchos 4625 (fallos de logon) de una contraseña contra muchas cuentas en una ventana corta → firma clásica de spray.
- Kerberos: muchos 4768/4771 con pre-auth fallida desde un mismo origen.
- Logins exitosos (4624) desde IP/origen inusual tras una ráfaga de fallos; picos en OWA/VPN/ADFS.
Telemetría
Sección titulada «Telemetría»Correlaciona 4625/4771 por contraseña/origen en vez de por cuenta (el spray se diluye si miras solo por cuenta). SIEM con reglas de “N cuentas distintas, mismo origen, misma ventana”. Vigila logs de Exchange/VPN/ADFS.
Hardening
Sección titulada «Hardening»- MFA en todo lo expuesto (VPN, OWA, portales) — la mitigación de mayor impacto.
- Contraseñas fuertes y baneo de patrones comunes: Azure AD Password Protection / banned-password lists impiden
Empresa2025!. - Smart lockout y políticas de bloqueo bien calibradas; alertas en el umbral.
- Reduce la superficie de autenticación expuesta; deshabilita protocolos legacy (IMAP/POP/SMTP auth básica) que saltan MFA.
- Longitud mínima alta (passphrases), rotación sensata, y detección de reutilización.
Respuesta
Sección titulada «Respuesta»Resetea las cuentas comprometidas, fuerza MFA, investiga qué alcanzó la cuenta (sesiones, accesos), y busca spraying lateral con la misma contraseña en otros sistemas.
CVEs y casos reales
Sección titulada «CVEs y casos reales»- El password spraying no es un CVE: es TTP (MITRE T1110.003), de los más usados para acceso inicial.
- APT: Midnight Blizzard / Nobelium (2024) comprometió a Microsoft vía password spraying contra una cuenta legacy sin MFA — caso de referencia reciente.
- APT33, Lazarus, numerosos grupos emplean spraying contra O365/VPN como entrada documentada.
- Innumerables intrusiones de ransomware empiezan por spray contra RDP/VPN expuestos.
Checklist de prueba
Sección titulada «Checklist de prueba»- ¿Tienes lista de usuarios válidos y la política de bloqueo?
- Candidatas que cumplen complejidad (estación+año, empresa+año)
- Un intento/cuenta por ronda, respetando la ventana de lockout
- Spray por Kerberos (sigiloso) y por SMB/LDAP
- Username = password; contraseñas de descripciones
- Spray contra servicios externos (OWA/VPN/ADFS) — ¿MFA?
- Reutilización de una contraseña crackeada contra todos
- Blue: ¿detección por origen/contraseña y MFA desplegada?