CoCoineticBack to coinetic.io

Event ID 4776: the computer attempted to validate the credentials for an account

Event 4776 is written whenever a password is checked with NTLM – on the domain controller for domain accounts, or on the computer itself for local accounts. Where Kerberos is not used (local accounts, access by IP address, old devices, many attacks), this is where wrong passwords and guessing show up.

In short
  • What it is: an NTLM password check. Success or failure is in the Error Code.
  • Where: domain controller for domain accounts; the computer itself for local accounts.
  • Key fields: Logon Account, Source Workstation, Error Code.
  • Limit: it shows the workstation name, not the IP address – the matching 4625 on the target Server has the address.

1. Status codes

CodeMeaning
0x0Success
0xC000006AWrong password for an existing account
0xC0000064Account name does not exist
0xC0000234Account locked out
0xC0000072Account disabled
0xC000006FOutside allowed logon hours
0xC0000070Not allowed from this workstation
0xC0000071Password expired
0xC0000193Account expired
0xC0000224User must change password at next logon

Audit subcategory Credential Validation.

2. PowerShell: NTLM failures by account and workstation

function Get-EventFields($e) { $d = [ordered]@{}; ([xml]$e.ToXml()).Event.EventData.Data | ForEach-Object { $d[$_.Name] = $_.'#text' }; [pscustomobject]$d }
Get-WinEvent -FilterHashtable @{LogName='Security'; Id=4776; StartTime=(Get-Date).AddDays(-1)} -ErrorAction SilentlyContinue |
  ForEach-Object { Get-EventFields $_ } | Where-Object Status -ne '0x0' |
  Group-Object Status, TargetUserName, Workstation | Sort-Object Count -Descending | Select-Object -First 25 Count, Name

Many 0xC0000064 for different names from one workstation = someone guessing account names. Many 0xC000006A for one account = password guessing or an old saved password (a mapped drive, a phone, a service).

3. Finding the real source

4. Let Coinetic watch it for you

Coinetic works where most of these logons start – on the way in:

Protect this Server or PC in 5 minutes

Download Coinetic, install, done: it starts protecting at once. 30 days free with all features, no payment details. From $20 per computer per year.

Start the free 30-day trial →

More guides: all Coinetic guides.

Frequently asked

Why does a domain controller log 4776 for a logon at a member Server?

With NTLM the member Server passes the check to the domain controller, which validates the password and logs 4776.

Should NTLM be switched off?

Reducing NTLM is good practice, but switching it off breaks old devices and access by IP address. First audit NTLM use (the Restrict NTLM audit policies), then reduce it step by step.

Why is the workstation name empty?

Some clients and attack tools do not send it. Use the 4625 on the target Server to get the address.