Azure KQL AAD

SigninLogs | where ResultType == "50126"

Busca en SigninLogs los inicios de sesión fallidos de Azure AD (ResultType 50126) para detectar sprays y fuerza bruta contra el tenant.

Ejecútala cuando quieras la vista de autenticación del tenant: el ResultType 50126 (credenciales incorrectas) de SigninLogs es el equivalente cloud del 4625 — y agrupado por IP o por usuario revela los sprays contra Azure AD, el vector de acceso inicial más común contra el cloud. La query base filtra los fallidos; ampliada con summarize por IPAddress o por UserPrincipalName, te da el patrón: una IP martilleando muchas cuentas es spray, una cuenta con muchos fallos desde una IP es fuerza bruta dirigida. Es la primera query del hunting de identidad en Sentinel, y la base de las reglas de spray de Microsoft.

No la uses como única fuente de logons: SigninLogs solo cubre Azure AD — los logons a recursos on-premise viven en SecurityEvent (068). El campo del resultado (ResultType 50126) distingue el fallo de credenciales de otros fallos (cuenta bloqueada 50057, MFA 500121): filtra por el código correcto o mezclarás ruido. Y ojo: el volumen de SigninLogs en tenants grandes es enorme y el coste de la query sin ventana temporal es alto — acota con TimeGenerated. Los sprays contra cuentas sin MFA o con MFA fatigue (el atacante insiste hasta que el usuario acepta) no siempre dejan el patrón de fallos: complementa con el 50125/500121 y con los logons exitosos posteriores.