ID de evento de seguridad de Active Directory: referencia
Los ID de evento de seguridad de AD que merece la pena recopilar en los DC: inicio de sesión, Kerberos, NTLM, cuentas, grupos, directorio y AD CS, con campos clave.
El registro Security de un controlador de dominio puede anotar unos cuantos cientos de ID de evento distintos. Quizá cuarenta de ellos le digan algo útil sobre un ataque contra Active Directory, y un número mucho menor le dice qué ocurrió leído de forma aislada. Esta referencia enumera los eventos que importan en los DC y en los servidores de AD CS. Para cada uno indica la subcategoría de auditoría que lo genera, qué registra y los campos por los que filtrar al hacer threat hunting.
La guía pilar de auditoría y detección explica cómo habilitar la directiva de auditoría avanzada y las SACL. Esta página da por hecho que ese trabajo está hecho y se centra en leer el resultado. Todas las subcategorías se encuentran en Computer Configuration > Policies > Windows Settings > Security Settings > Advanced Audit Policy Configuration > Audit Policies.
Cómo leer esta referencia
Tres reglas ahorran tiempo:
- Importa dónde se registra el evento. Kerberos (4768, 4769, 4771) y la validación NTLM (4776) de cuentas de dominio se registran en el DC que gestionó la solicitud. Los eventos de inicio de sesión (4624, 4625) se registran en el equipo en el que el usuario inició sesión. Un inicio de sesión en un servidor de archivos genera un 4769 en un DC y un 4624 en el servidor de archivos.
- No se registra nada si la subcategoría no está habilitada. Los eventos de directorio necesitan además una SACL en el objeto.
- Filtre por campos, no por el texto del mensaje. Los mensajes de los eventos están localizados y cambian con el tiempo, pero los nombres de los campos XML (
TargetUserName,TicketEncryptionType,Status) son estables.
Consulta por ID y campo en un DC:
# Últimas 50 preautenticaciones Kerberos fallidas en este DC
Get-WinEvent -FilterHashtable @{ LogName = 'Security'; Id = 4771 } -MaxEvents 50 |
ForEach-Object {
$x = [xml]$_.ToXml()
[pscustomobject]@{
Time = $_.TimeCreated
Account = ($x.Event.EventData.Data | Where-Object Name -eq 'TargetUserName').'#text'
Client = ($x.Event.EventData.Data | Where-Object Name -eq 'IpAddress').'#text'
Code = ($x.Event.EventData.Data | Where-Object Name -eq 'Status').'#text'
}
}Eventos de inicio de sesión y de sesión
Subcategorías: Logon/Logoff > Audit Logon, Audit Special Logon, Audit Logoff, Audit Other Logon/Logoff Events.
| ID de evento | Registra | Qué buscar |
|---|---|---|
| 4624 | Inicio de sesión correcto | LogonType, IpAddress, AuthenticationPackageName, LogonProcessName. Cuentas privilegiadas que inician sesión en hosts que no son de Tier 0. |
| 4625 | Inicio de sesión fallido | Códigos Status / SubStatus (ver más abajo). Muchas cuentas fallando desde un mismo origen apuntan a password spraying. |
| 4634 / 4647 | Cierre de sesión / cierre de sesión iniciado por el usuario | Duración de la sesión. Poco valor por sí solo. |
| 4648 | Inicio de sesión con credenciales explícitas | runas, tareas programadas y herramientas que pasan credenciales alternativas. Credenciales de administrador escritas en estaciones de trabajo. |
| 4672 | Privilegios especiales asignados a un nuevo inicio de sesión | Identifica sesiones equivalentes a administrador. Correlacione su SubjectLogonId con el TargetLogonId del 4624 correspondiente. |
| 4964 | Grupos especiales asignados a un nuevo inicio de sesión | Solo se genera para los grupos que configure en el valor de registro SpecialGroups. Una forma barata de señalar los inicios de sesión de grupos de Tier 0. |
Tipos de inicio de sesión por los que filtrará: 2 interactivo, 3 red, 4 lote, 5 servicio, 7 desbloqueo, 8 red con texto no cifrado, 9 NewCredentials (runas /netonly, generado también por algunas herramientas de inyección de credenciales), 10 RemoteInteractive (RDP), 11 interactivo en caché.
Códigos de subestado habituales de 4625:
| Código | Significado |
|---|---|
| 0xC0000064 | El nombre de usuario no existe |
| 0xC000006A | Usuario correcto, contraseña incorrecta |
| 0xC0000234 | Cuenta bloqueada |
| 0xC0000072 | Cuenta deshabilitada |
| 0xC000006F | Inicio de sesión fuera del horario permitido |
| 0xC0000070 | Restricción de estación de trabajo |
| 0xC0000071 | Contraseña caducada |
| 0xC0000193 | Cuenta caducada |
| 0xC000015B | Tipo de inicio de sesión no concedido (asignación de derechos de usuario) |
Una ráfaga de 0xC000015B para cuentas de Tier 0 en estaciones de trabajo suele indicar que sus derechos de denegación de inicio de sesión por niveles funcionan como está previsto, y merece la pena seguir su tendencia.
Eventos de Kerberos
Subcategorías: Account Logon > Audit Kerberos Authentication Service (4768, 4771, 4772) y Audit Kerberos Service Ticket Operations (4769, 4770, 4773).
| ID de evento | Registra | Qué buscar |
|---|---|---|
| 4768 | Solicitud de TGT (AS-REQ) | PreAuthType 0 significa que no hay preautenticación, así que la cuenta es vulnerable a AS-REP roasting. TicketEncryptionType 0x17 significa RC4. Status 0x6 significa que la cuenta es desconocida (enumeración de usuarios). |
| 4769 | Solicitud de ticket de servicio (TGS-REQ) | TicketEncryptionType 0x17 para SPN de cuentas de usuario. Una cuenta que solicita rápidamente muchos valores distintos de ServiceName apunta a Kerberoasting. |
| 4770 | Ticket de servicio renovado | Poco valor. Útil para cronologías de sesión. |
| 4771 | Error de preautenticación | Status 0x18 es una contraseña incorrecta, 0x12 es cuenta deshabilitada, caducada o bloqueada, 0x25 es desfase de reloj. |
| 4772 / 4773 | Error en la solicitud de TGT / de ticket de servicio | Poco frecuentes. Investigue los picos. |
Valores de tipo de cifrado: 0x11 AES128, 0x12 AES256, 0x17 RC4-HMAC, 0x18 RC4-HMAC-EXP, 0x1 / 0x3 DES (no deberían aparecer nunca). El seguimiento de 0x17 en los eventos 4768 y 4769 es la forma de medir el avance hacia la deshabilitación de RC4. Las compilaciones más recientes añaden campos como las claves disponibles de la cuenta y el tipo de cifrado de la clave de sesión. Facilitan mucho esa medición, así que actualice sus analizadores para usarlos.
Un 4769 fallido con Status 0x1F (error en la comprobación de integridad del campo descifrado) puede indicar tickets falsificados o manipulados. Cuente con falsos positivos debidos a problemas de reloj y de confianzas, así que trátelos como pistas que investigar, no como veredictos.
Eventos de NTLM
Subcategoría: Account Logon > Audit Credential Validation.
| ID de evento | Registra | Qué buscar |
|---|---|---|
| 4776 | El DC intentó validar las credenciales de una cuenta (NTLM) | Status 0xC000006A contraseña incorrecta, 0xC0000064 usuario desconocido. El campo Workstation muestra el nombre de cliente declarado. Volumen de NTLM de las cuentas privilegiadas. |
| 4774 / 4775 | Cuenta asignada / no se pudo asignar para el inicio de sesión | Poco frecuentes. Investíguelos si aparecen. |
Para conocer el uso de NTLM por versión de protocolo y servidor de destino, habilite Network security: Restrict NTLM: Audit NTLM authentication in this domain (auditar la autenticación NTLM en este dominio) y lea el registro Microsoft-Windows-NTLM/Operational (8001 a 8004). Ese proceso se explica en auditar y restringir NTLM.
Eventos de administración de cuentas
Subcategorías: Account Management > Audit User Account Management, Audit Computer Account Management, Audit Security Group Management.
Usuarios
| ID de evento | Registra | Qué buscar |
|---|---|---|
| 4720 | Cuenta de usuario creada | Cuentas creadas fuera de su flujo de aprovisionamiento o por administradores inesperados. |
| 4722 / 4725 | Cuenta habilitada / deshabilitada | Cuentas inactivas que se vuelven a habilitar. |
| 4723 / 4724 | Intento de cambio / restablecimiento de contraseña | 4724 realizado sobre una cuenta privilegiada por una entidad de seguridad ajena al servicio de asistencia. |
| 4726 | Cuenta eliminada | Borrado de evidencias. |
| 4738 | Cuenta de usuario cambiada | Cambios en UserAccountControl (por ejemplo, «Don't require preauth» o «Trusted for delegation»), SidHistory, AllowedToDelegateTo. |
| 4740 | Cuenta bloqueada | Se registra en el emulador de PDC. CallerComputerName indica el origen. |
| 4765 / 4766 | Historial de SID agregado / error al agregarlo | Fuera de una migración, cualquier 4765 es crítico. Consulte la limpieza del historial de SID. |
| 4780 | ACL establecida en cuentas que son miembros de grupos de administradores | Actividad de SDProp. Consulte AdminSDHolder y SDProp. |
| 4794 | Intento de establecer la contraseña del administrador de DSRM | Debe coincidir con tickets de cambio. |
Grupos
| ID de evento | Registra | Ámbito |
|---|---|---|
| 4727 / 4730 / 4737 | Grupo de seguridad creado / eliminado / cambiado | Global |
| 4728 / 4729 | Miembro agregado / quitado | Global (Domain Admins) |
| 4731 / 4734 / 4735 | Grupo de seguridad creado / eliminado / cambiado | Local de dominio |
| 4732 / 4733 | Miembro agregado / quitado | Local de dominio (Administrators, Backup Operators) |
| 4754 / 4758 / 4755 | Grupo de seguridad creado / eliminado / cambiado | Universal |
| 4756 / 4757 | Miembro agregado / quitado | Universal (Enterprise Admins, Schema Admins) |
| 4764 | Tipo de grupo cambiado | Conversiones de distribución a seguridad |
| 4799 | Se enumeró la pertenencia a un grupo local | Reconocimiento contra grupos integrados |
Genere alertas en tiempo real para los eventos 4728, 4732 y 4756 cuyo destino sea cualquier grupo de Tier 0. Filtre por TargetSid y no por nombre, para que los grupos renombrados o localizados sigan coincidiendo.
Equipos
| ID de evento | Registra | Qué buscar |
|---|---|---|
| 4741 | Cuenta de equipo creada | Creaciones por usuarios que no son administradores (la cuota de cuentas de equipo en acción). |
| 4742 | Cuenta de equipo cambiada | ServicePrincipalNames, indicadores de delegación de UserAccountControl, cambios del nombre de host DNS. |
| 4743 | Cuenta de equipo eliminada | Eliminaciones inesperadas. |
Eventos del servicio de directorio
Subcategorías: DS Access > Audit Directory Service Access (4662) y Audit Directory Service Changes (5136 a 5141). Se requieren SACL.
| ID de evento | Registra | Qué buscar |
|---|---|---|
| 4662 | Se realizó una operación en un objeto | Properties con 1131f6aa-9c07-11d1-f79f-00c04fc2dcd2 o 1131f6ad-9c07-11d1-f79f-00c04fc2dcd2 desde un equipo que no es DC es DCSync. También las lecturas de objetos señuelo. |
| 5136 | Objeto modificado | AttributeLDAPDisplayName como member, nTSecurityDescriptor, gPLink, msDS-AllowedToActOnBehalfOfOtherIdentity, msDS-KeyCredentialLink, servicePrincipalName. |
| 5137 | Objeto creado | Nuevos objetos en OU de Tier 0, nuevas GPO (groupPolicyContainer). |
| 5138 | Objeto recuperado | Reactivación de cuentas que fueron privilegiadas. |
| 5139 | Objeto movido | Cuentas sacadas de las OU cubiertas por sus GPO o SACL. |
| 5141 | Objeto eliminado | GPO, OU o usuarios eliminados. |
5136 registra un evento por cada valor de atributo agregado o eliminado, con OperationType %%14674 (valor agregado) o %%14675 (valor eliminado). Un solo cambio de ACL genera un evento de eliminación para el descriptor antiguo y un evento de adición para el nuevo. Correlacione la pareja mediante OpCorrelationID.
Eventos útiles fuera del registro Security:
- Registro Directory Service, 2889: enlaces LDAP sin firma. Consulte firma LDAP y enlace de canal.
- Registro Directory Service, 2089: partición sin copia de seguridad dentro del intervalo de latencia de copia de seguridad.
- Registro System, 7045: nuevo servicio instalado en un DC.
Eventos de directiva, confianza e integridad del sistema
| ID de evento | Subcategoría | Registra |
|---|---|---|
| 4719 | Audit Audit Policy Change | Directiva de auditoría del sistema cambiada |
| 1102 | (siempre se registra) | Registro Security borrado |
| 4713 | Audit Authentication Policy Change | Directiva Kerberos cambiada |
| 4739 | Audit Authentication Policy Change | Directiva de dominio cambiada (contraseñas o bloqueo) |
| 4706 / 4707 | Audit Authentication Policy Change | Confianza con un dominio creada / eliminada |
| 4716 | Audit Authentication Policy Change | Información de dominio de confianza modificada (filtrado de SID, atributos) |
| 4697 | Audit Security System Extension | Servicio instalado |
| 4698 / 4702 | Audit Other Object Access Events | Tarea programada creada / actualizada |
| 4688 | Audit Process Creation | Proceso creado (habilite la captura de la línea de comandos) |
| 5145 | Audit Detailed File Share | Acceso a archivos de SYSVOL y NETLOGON |
Trate los eventos 1102, 4719 y cualquier 4706 en los DC como eventos que justifican avisar a alguien de guardia. Las apariciones legítimas son poco frecuentes y siempre deben coincidir con un ticket de cambio.
Eventos de AD CS
Subcategoría: Object Access > Audit Certification Services. La CA necesita además su propio filtro de auditoría, que se configura en el servidor de la CA:
certutil -setreg CA\AuditFilter 127
Restart-Service certsvc| ID de evento | Registra | Qué buscar |
|---|---|---|
| 4886 | Solicitud de certificado recibida | Volumen por solicitante. |
| 4887 | Solicitud de certificado aprobada y emitida | Requester distinto del nombre de sujeto o del SAN del certificado emitido (abuso de ESC1). |
| 4888 | Solicitud denegada | Sondeo de plantillas. |
| 4898 / 4899 / 4900 | Plantilla cargada / actualizada / seguridad de la plantilla actualizada | Modificaciones de plantillas fuera del control de cambios. |
| 4882 | Permisos de seguridad de la CA cambiados | Cambios en las ACL de la CA. |
En los DC, los eventos 39, 40 y 41 del registro System (Kerberos-Key-Distribution-Center) informan de asignaciones de certificados débiles. Se tratan en la asignación segura de certificados. El panorama general de las plantillas está en el hardening de AD CS.
Errores habituales
- Sorpresas de volumen. 4624 de tipo 3, 4634, 4769 y 4662 dominan el volumen de registros de los DC. Reenvíelos igualmente, pero configure tamaños del registro Security suficientemente grandes (varios GB en los DC con mucha actividad) para que los registros locales cubran al menos unos días si la canalización de reenvío se detiene.
- Confusión entre 4771 y 4625. Los errores de Kerberos no generan un 4625 en el DC. Una detección de password spraying basada solo en 4625 no ve la mayoría de los ataques a escala de dominio.
- Nombres localizados. Los nombres de los grupos en los eventos están localizados en los DC que no están en inglés. Busque coincidencias por SID: los RID de dominio conocidos (512 Domain Admins, 519 Enterprise Admins, 518 Schema Admins) y el SID integrado
S-1-5-32-544(Administrators), que no lleva prefijo de dominio. - Directiva de auditoría mixta. Si la configuración de categorías heredada se aplica junto con la directiva de auditoría avanzada sin habilitar Audit: Force audit policy subcategory settings, los eventos dejan de registrarse sin avisar.
- Crecimiento descontrolado de las SACL. Una SACL para Everyone que audite la lectura de todas las propiedades en la raíz del dominio inundará el registro. Limite la auditoría de lectura a los señuelos y la auditoría de escritura a los objetos de Tier 0.
- Desfase de reloj. Correlacionar un 4768 en un DC con un 4624 en un servidor solo funciona si la sincronización horaria es correcta en todo el dominio.
Lecturas relacionadas: saque estos eventos de los DC con Windows Event Forwarding, convierta unos cuantos de ellos en alertas prácticamente sin falsos positivos con honeytokens y explore el resto del área de auditoría, registro y detección.
Preguntas frecuentes
¿Por qué no veo los eventos 4662 o 5136 aunque la auditoría esté habilitada?
Ambos eventos necesitan dos cosas: la subcategoría Directory Service Access o Directory Service Changes habilitada en los controladores de dominio y una SACL en el objeto al que se accede o que se modifica. La directiva de auditoría por sí sola decide qué categorías se registran; la SACL decide qué objetos y operaciones generan eventos. Si falta cualquiera de las dos, no obtiene nada. Compruebe la directiva efectiva con auditpol /get /category:* y la pestaña Auditoría del objeto o su propiedad Audit de Get-Acl.
¿Qué registro anota un inicio de sesión Kerberos fallido por contraseña incorrecta?
El controlador de dominio que gestionó la solicitud registra el evento 4771 con el código de error 0x18 cuando la preautenticación Kerberos falla por una contraseña incorrecta. Los errores de NTLM aparecen, en cambio, como el evento 4776 con el error 0xC000006A. La estación de trabajo o el servidor en el que el usuario intentó iniciar sesión registra el 4625 localmente. Para ver un password spraying en todo el dominio necesita los eventos 4771 y 4776 de todos los DC, no solo del emulador de PDC.
¿Los ID de evento son los mismos en Windows Server 2016, 2019, 2022 y 2025?
Los ID y su significado son estables entre estas versiones, y por eso el contenido de SIEM escrito hace años sigue funcionando. Lo que cambia es el conjunto de campos de algunos eventos. Las actualizaciones acumulativas recientes han añadido campos a los eventos Kerberos 4768 y 4769, como las claves disponibles de la cuenta y el tipo de cifrado de la clave de sesión, para ayudar a localizar el uso de RC4. Analice los eventos por nombre de campo y no por posición para que los campos nuevos no rompan las detecciones.
ID de evento de seguridad de Active Directory: referencia