azureblog.co.uk
← cd ~/events
// events/4625 · Sign-in

Event ID 4625An account failed to log on

Logged on the target computer for any failed logon. The Status and Sub Status fields carry an NTSTATUS code that explains why it failed.

LogSecurity
SourceMicrosoft-Windows-Security-Auditing
AreaSign-in

What to check

Read the Sub Status first, then check the Logon Type, Workstation Name and Source Network Address. Several 0xC0000064 events in a row can mean username enumeration; repeated 0xC000006A or 0xC000006D against service or admin accounts suggests password guessing.

Codes you'll see in this event

CodeMeaning
0xC000005ENo logon servers available to service the request. Usually an infrastructure or availability problem.
0xC0000064Misspelled or non-existent user name.
0xC000006ACorrect user name, wrong password.
0xC000006DBad user name or authentication information.
0xC000006FLogon outside the account's permitted hours.
0xC0000070Logon from a workstation the account is not allowed to use.
0xC0000072Account disabled by an administrator.
0xC000015BUser has not been granted the requested logon type (logon right) on this machine.
0xC0000192Netlogon service was not started.
0xC0000193Account has expired.
0xC0000234Account is locked out. The doc notes this is the typical Status value for the event.
0xC0000413Authentication firewall: the account is not allowed to authenticate to this machine.

Find it with PowerShell

Run on the machine that logs it, as an administrator.

powershell2 lines
Get-WinEvent -FilterHashtable @{ LogName = 'Security'; Id = 4625 } -MaxEvents 50 |
    Format-List TimeCreated, Id, Message

Hunt for it in Sentinel or Log Analytics

Security events land in the SecurityEvent table when you collect them with the Windows Security Events connector or a data collection rule.

kql5 lines
SecurityEvent
| where TimeGenerated > ago(7d)
| where EventID == 4625
| project TimeGenerated, Computer, Account, Activity
| order by TimeGenerated desc

Related Sign-in events

Search all 123 event IDs →