When triaging security events in Windows environments, speed matters. Knowing which Event IDs are high signal can save a lot of time during investigation.
Here are 15 Event IDs worth keeping in your daily checklist, plus quick query examples.
Authentication and access
- 4624 – Successful logon
- 4625 – Failed logon
- 4768 – Kerberos TGT request
- 4769 – Kerberos service ticket request
- 4771 – Kerberos pre-authentication failed
- 4740 – User account locked out
Account and group changes
- 4720 – User account created
- 4726 – User account deleted
- 4732 – Member added to security-enabled local group
- 4733 – Member removed from security-enabled local group
Execution and system changes
- 4688 – A new process has been created
- 7045 – A service was installed
- 5140 – A network share object was accessed
- 1102 – The audit log was cleared
- 1116 – Malware detected (Defender)
Quick PowerShell queries
# Failed logons in last 12 hours
Get-WinEvent -FilterHashtable @{
LogName='Security'
Id=4625
StartTime=(Get-Date).AddHours(-12)
} | Select-Object TimeCreated, Id, Message -First 50
# Account lockouts in last 24 hours
Get-WinEvent -FilterHashtable @{
LogName='Security'
Id=4740
StartTime=(Get-Date).AddDays(-1)
} | Select-Object TimeCreated, Id, Message
# Process creation events (requires proper audit policy)
Get-WinEvent -FilterHashtable @{
LogName='Security'
Id=4688
StartTime=(Get-Date).AddHours(-6)
} | Select-Object TimeCreated, Id, Message -First 40
# Malware detections from Defender Operational log
Get-WinEvent -FilterHashtable @{
LogName='Microsoft-Windows-Windows Defender/Operational'
Id=1116
StartTime=(Get-Date).AddDays(-7)
} | Select-Object TimeCreated, Id, Message
Tip: Create saved filters for these IDs and review trends weekly instead of only during incidents.
Reminder: Run queries only where you are authorized.
