- ¿Por qué es vital la detección por pulverización de contraseñas?
- Pulverización de contraseñas mediante preautenticación Kerberos
- Pulverización de contraseñas mediante intervalos de retardo aleatorios
- Detección de pulverización de contraseñas con Lightning IRP
- Otras recomendaciones para la detección por pulverización de contraseñas
- Recursos adicionales
La detección de la proliferación de contraseñas es una habilidad vital para todas las organizaciones. En un ataque de pulverización de contraseñas, el atacante intenta obtener acceso no autorizado probando unas pocas contraseñas comunes o débiles en muchas cuentas, en lugar de dirigirse a una sola cuenta con muchas contraseñas. La idea es probar varias contraseñas, con la esperanza de que algunos usuarios hayan elegido una contraseña débil.
En el contexto de Active Directory (AD), los ataques de pulverización de contraseñas son preocupantes porque cualquier usuario autenticado en un entorno AD puede utilizar LDAP para consultar cuentas. Esto permite a un atacante con privilegios mínimos intentar introducir contraseñas comunes o débiles en muchas cuentas sin activar las políticas de bloqueo de cuentas(Figura 1).
¿Por qué es vital la detección por pulverización de contraseñas?
Microsoft estima que los ataques de pulverización de contraseñas son responsables de más de un tercio de todos los casos de cuentas comprometidas, lo que pone de relieve la amenaza que este método supone para las organizaciones.
Los ataques de pulverización de contraseñas pueden generar tanto una cantidad significativa de actividad en los registros de eventos de seguridad de un controlador de dominio (DC) como un gran volumen de tráfico de red(Figura 2).
Numerosos inicios de sesión fallidos pueden resultar ruidosos. Por lo tanto, un atacante puede introducir un retardo entre los intentos en un ataque de pulverización de contraseñas(Figura 3). Dado que los registros de eventos de seguridad de los DC suelen generarse en cuestión de segundos, este retraso ayuda a que el ataque se mezcle con la actividad normal, reduciendo las posibilidades de detección.
Los registros en un DC muestran que las marcas de tiempo de estos intentos fallidos de inicio de sesión se producen a intervalos consistentes, causados por la introducción de un retraso de 10 segundos entre cada intento. Este desfase temporal hace que la actividad sea menos sospechosa que los múltiples intentos fallidos de inicio de sesión que se producen simultáneamente(Figura 4).
Pulverización de contraseñas mediante preautenticación Kerberos
La adición de un retraso hace que un ataque de pulverización de contraseñas sea menos sospechoso. Sin embargo, el ataque seguirá activando el evento Una cuenta no pudo iniciar sesión en el DC.
La preautenticación Kerberos puede dificultar la detección de la pulverización de contraseñas. Los intentos fallidos que utilizan dicha preautenticación no generan los eventos estándar de fallo de inicio de sesión en los registros de eventos de Seguridad. De este modo, el atacante puede adivinar contraseñas sin activar las alertas típicas asociadas a los intentos fallidos de inicio de sesión(Figura 5).
En este tipo de ataque, en lugar de ver los típicos eventos de Una cuenta no pudo iniciar sesión en los registros de eventos de Seguridad, observará eventos de Kerberos Pre-Autenticación fallida. Estos eventos incluyen el valor hexadecimal 0x18, que significa que se ha introducido una contraseña incorrecta(Figura 6).
Pulverización de contraseñas mediante intervalos de retardo aleatorios
Otra forma de dificultar la detección del espray de contraseñas es alterar los patrones predecibles que los sistemas de seguridad suelen vigilar(Figura 7). Esta aleatoriedad hace que el ataque se mezcle con el tráfico normal, lo que dificulta la detección y respuesta de los sistemas y equipos de seguridad.
Un ataque de pulverización de contraseñas con retrasos aleatorios sigue generando eventos de registro. Sin embargo, la sincronización irregular entre los intentos puede dificultar la detección del ataque de pulverización de contraseñas. En lugar de un patrón consistente, los registros muestran intentos de inicio de sesión distribuidos de forma impredecible, lo que hace que el ataque sea menos llamativo(Figura 8).
El mismo concepto puede aplicarse aleatorizando los intervalos de retardo durante un ataque de pulverización de contraseñas que utilice la preautenticación Kerberos. Dado que los eventos 4771 no suelen vigilarse de cerca, la introducción de retardos aleatorios dificulta aún más su detección(Figura 9).
Como en el ejemplo anterior, la aleatorización de los intervalos de retardo entre cada intento de inicio de sesión puede hacer que esta actividad parezca un comportamiento normal en los registros(Figura 10).
Detección de ataques de pulverización de contraseñas con Lightning Identity Runtime Protection
Identity Runtime Protection (IRP), una función de la plataforma Semperis Lighting, utiliza varios indicadores de patrones de ataque y detección de anomalías para supervisar y detectar ataques basados en identidades. Lightning IRP suele necesitar entre 7 y 10 días para aprender los patrones de un entorno mediante el análisis del comportamiento.
Figura 11 muestra Lightning IRP identificando exitosamente dos ataques de rociado de contraseñas. Basándose en estas alertas, puede determinar qué cuentas fueron atacadas y las puntuaciones de detección correspondientes.
La Figura 12 muestra la detección de pulverización de contraseñas IRP Lightning de un ataque que aleatorizó los intervalos de retardo para cada intento de pulverización de contraseñas a través de la preautenticación Kerberos. La puntuación de detección es baja en este caso porque el ataque fue diseñado para un mayor sigilo. Sin embargo, Lighting IRP fue capaz de detectar el comportamiento a pesar de que el tráfico estaba pensado para parecer típico y no hacer saltar las alarmas.
Realizar un ataque de pulverización de contraseñas sin aleatorizar los intervalos de retardo suele dar como resultado una mayor puntuación de detección, como se muestra en la Figura 13. Este método tiene más probabilidades de ser marcado con una puntuación de detección más alta (100% en este ejemplo) debido a su naturaleza predecible y ruidosa, lo que facilita la detección y categorización del pulverizado de contraseñas.
Recomendaciones adicionales para la detección de pulverizaciones con contraseña
Para reducir el riesgo de éxito de los ataques de pulverización de contraseñas, es importante aplicar políticas de contraseñas fuertes, incluyendo la implementación de mecanismos de bloqueo de cuentas (ya sea temporal o permanente) después de varios intentos de inicio de sesión fallidos consecutivos. Las organizaciones deben asegurarse de que estas políticas de contraseñas se aplican a través de una política de dominio predeterminada o políticas de contraseñas detalladas en Active Directory.
Las organizaciones que usan Entra ID P1 o que tienen la licencia apropiada de Enterprise Mobility + Security (EMS) o Microsoft 365 pueden lograr una capa adicional de protección desplegando Entra Password Protection o una solución similar para Active Directory. Esta herramienta evita de forma proactiva que los usuarios creen o utilicen contraseñas fáciles de adivinar o que hayan sido comprometidas en brechas anteriores. Integrando esta solución, las organizaciones pueden mejorar la probabilidad de detectar con éxito el espionaje de contraseñas.
La Figura 14 muestra un ejemplo en el que Entra ID Password Protection ha evitado que un usuario establezca una contraseña que no cumple con la política de contraseñas actual de la organización.
Recursos adicionales de detección de pulverización de contraseñas
- Cómo defenderse de los ataques de "pulverización" de contraseñas
- Detectar y prevenir los ataques basados en la identidad
- Política de contraseñas de Windows (Microsoft Learn)
- Protección de contraseñas de Microsoft Entra para servicios de dominio AD (Microsoft Learn)
- ropnop/kerbrute: Una herramienta para realizar Kerberos pre-auth bruteforcing (github.com)
- dafthack/DomainPasswordSpray: Una herramienta escrita en PowerShell para realizar un ataque de pulverización de contraseñas contra usuarios del dominio (github.com) Nota: Por defecto, esta herramienta genera automáticamente la lista de usuarios del dominio. ¡Ten mucho cuidado de no bloquear cuentas!
- Implementación de herramientas de seguridad modernas (MSEndpointMgr)