Skip to content
anavem.com logoanavem.com logo
ExplainerBeginnerWindows security auditing

Windows Event ID 4771: Kerberos Pre-Authentication Failed

What Event 4771 is, why domain controllers log it, how to decode its failure codes, and how to tell a mistyped password from a brute-force attack.
Level
Beginner
Reading time
24 min
Concept
Windows Event ID 4771 (Kerberos pre-authentication failed)
Last reviewed
July 12, 2026
Windows Event ID 4771 for a failed Kerberos pre-authentication attempt, with Active Directory, account logon, warning.
Event 4771 records a failed Kerberos pre-authentication on a domain controller, including the account, source address, and a failure code.View full image
Table of contents

Windows Event ID 4771 means Kerberos pre-authentication failed on a domain controller. A domain account tried to authenticate, and the Key Distribution Center, the service that hands out Kerberos tickets, turned it down. The most common reason by far is a wrong password. The event records the account name, the client IP address, the service involved, and a Failure Code that explains why the request was denied. It appears only on domain controllers, and only when Failure auditing is enabled for Kerberos authentication. A single 4771 is usually harmless, a mistyped password or a service still using an old one. A burst of them against one account can mean a brute-force attack. This guide explains what the event means, how to decode its failure codes, and how to tell noise from a real threat.

Key takeaways

  • Event 4771 is logged on domain controllers when Kerberos pre-authentication fails.
  • The Failure Code is the key field: 0x18 means a wrong password, the most common cause.
  • It only appears when Failure auditing is on for Audit Kerberos Authentication Service.
  • A single event is usually benign; many 0x18 failures fast can indicate a brute-force attack.
  • Read it with events 4768, 4776, and 4740 to find the cause and source of failures.

Quick explanation

In simple terms

Event 4771 is a note in the domain controller's Security log that says a domain account failed to sign in with Kerberos. Nearly always, it means the password was wrong.

Technical definition

Event 4771 is a Windows Security audit event, in the Audit Kerberos Authentication Service subcategory, that a domain controller logs when the KDC denies an AS-REQ because pre-authentication failed. It records the target account, service name (krbtgt), client address and port, ticket options, pre-authentication type, and a Kerberos failure code.

Analogy

Think of the KDC as a gatekeeper who checks a password before handing out a day pass. Event 4771 is the gatekeeper's note that says: someone asked for a pass under this name, gave the wrong password, and was turned away, and here is the reason.

Definition

Windows Event ID 4771 is a Security audit event that a domain controller logs when Kerberos pre-authentication fails. In plain terms, someone or something tried to sign in with a domain account and the domain controller rejected it, most often because the password was wrong.

Event ID 4771, Kerberos pre-authentication failed, is a Windows Security audit event. A domain controller writes it when the Key Distribution Center (KDC), the service that issues Kerberos tickets, rejects an initial ticket request because pre-authentication failed. Pre-authentication is the step where the client proves it knows the account password before the KDC issues a ticket.

This event fires only on domain controllers, under the Audit Kerberos Authentication Service subcategory of Account Logon. Because it records a failure, you only see it if Failure auditing is turned on for that subcategory. Each event names the account, the client IP address, the service (usually krbtgt), and a Failure Code that says why the request was denied.

The most common cause is a wrong password, shown by failure code 0x18. Other codes point to a disabled or locked account, an expired password, a clock that is too far out of sync, or a smart card problem. Per Microsoft, the event is not generated for accounts that have Kerberos pre-authentication disabled, which is itself a security concern known as AS-REP roasting exposure.

Event 4771 sits alongside related events: 4768 for a ticket request, 4772 for a failed ticket request, 4776 for NTLM credential checks, and 4740 for the lockout that repeated failures can trigger. Reading them together tells you what happened and where it came from.

Why it matters

Failed logons are both routine noise and an early attack signal. Event 4771 is where domain authentication failures surface, so it's central to investigating lockouts, tracking down stale credentials, and spotting password guessing against Active Directory.

Core concepts

What Kerberos pre-authentication is

Pre-authentication is the step where a client proves it knows the password before the KDC issues a ticket.

Kerberos is the default authentication protocol in Active Directory. Before the Key Distribution Center issues a Ticket Granting Ticket, it asks the client to prove it knows the account password. The client does this by sending an encrypted timestamp, encrypted with a key derived from the password.

The KDC decrypts that timestamp with the key it has stored for the account. If the two keys match, the password was right and pre-authentication succeeds. If they don't, or another account check fails, the KDC denies the request and logs Event 4771.

Example

A user types the wrong password, so the encrypted timestamp doesn't match, and 4771 is logged.

Why it matters — Pre-authentication is exactly the check that 4771 records failing, so understanding it explains the event.

It is logged only on domain controllers

Only domain controllers run the KDC, so only they generate Event 4771.

The KDC runs on domain controllers, so pre-authentication happens there and Event 4771 is written there. You won't find it on member servers or workstations. It lands in the Security log under the Audit Kerberos Authentication Service subcategory of Account Logon.

This is useful. Because all domain Kerberos authentication passes through domain controllers, watching 4771 across your DCs gives you one place to see failed domain logons, wherever the client sits.

Example

A workstation login with a bad password produces 4771 on the DC that handled the request, not on the workstation.

Why it matters — Knowing where to look saves time, and it explains why you collect this event from domain controllers.

The Failure Code tells you why

The Failure Code field is a Kerberos error code that gives the exact reason the request was denied.

Every 4771 carries a Failure Code, a hexadecimal Kerberos error from RFC 4120. It's the field that turns a generic failure into a diagnosis. The common ones are 0x18 for a wrong password, 0x12 for a revoked account, such as disabled or locked, 0x17 for an expired password, and 0x10 for a smart card or certificate problem.

Read the code first. It points you straight at the cause, so you don't waste time guessing whether you're chasing a typo, a stale service account, or something worth a closer look.

Example

A 4771 with Failure Code 0x18 means the password was wrong; 0x12 means the account is disabled or locked.

Why it matters — The Failure Code is the single most useful field for triaging the event quickly.

Account Name and Client Address identify who and where

These fields name the account that failed and the IP address the request came from.

Two fields answer who and where. Account Name is the domain account that failed to authenticate. Client Address is the IP address the request came from. Together they tell you which account is failing and which machine is driving it.

Watch for context. A client address of ::1 means the request was local to the domain controller. A public or unexpected IP is worth attention. And the address may be a gateway or VPN device rather than the end user's own machine.

Example

Repeated 4771 for one account from a single internal IP often points to a service or scheduled task using an old password.

Why it matters — These fields let you trace a failure back to its source, which is the first step in fixing lockouts.

You must enable Failure auditing to see it

Event 4771 appears only when Failure auditing is on for Audit Kerberos Authentication Service.

Because 4771 records a failure, it only appears when Failure auditing is enabled for the Audit Kerberos Authentication Service subcategory. On server editions, Success auditing is on by default, but Failure is not always on, so you may need to turn it on to capture 4771.

Set it through Group Policy under Advanced Audit Policy Configuration, in Account Logon, or with auditpol. Without Failure auditing, the failures still happen but leave no 4771 to investigate.

Example

Enabling Failure auditing for Audit Kerberos Authentication Service starts recording 4771 events on the DC.

Why it matters — If auditing isn't configured, you have a blind spot exactly where you most need visibility.

How it works

1

The client sends an initial ticket request

A client sends an Authentication Service request (AS-REQ) to the KDC on a domain controller, asking for a Ticket Granting Ticket for the account.

AS-REQ

Example — A user signs in, and their machine sends an AS-REQ to the domain controller.

2

The KDC asks for pre-authentication

If the first request lacks pre-authentication data, the KDC replies that pre-authentication is required. This is normal, by-design behavior, not an error.

Preauth required

Example — The KDC returns KDC_ERR_PREAUTH_REQUIRED, prompting the client to include proof of the password.

3

The client sends an encrypted timestamp

The client resends the request with pre-authentication data: a timestamp encrypted with a key derived from the account password (pre-authentication type PA-ENC-TIMESTAMP).

Encrypted timestamp

Example — The client encrypts the current time with the password-derived key and sends it.

4

The KDC validates the timestamp

The KDC decrypts the timestamp using the key it holds for the account and checks the account's state, such as whether it is enabled, unlocked, and has a current password.

Validate

Example — The KDC compares its stored key against the one used to encrypt the timestamp.

5

The KDC denies the request and logs 4771

If the timestamp doesn't validate or an account check fails, the KDC denies the request and writes Event 4771 with a failure code, if Failure auditing is enabled.

Deny + log

Example — A wrong password fails validation, so the KDC logs 4771 with Failure Code 0x18.

6

The admin reads the event

An administrator or SIEM reads the Account Name, Client Address, and Failure Code to work out what happened and where it came from, then correlates with related events.

Investigate

Example — The analyst sees code 0x18 from one IP repeated many times and investigates a possible attack.

Use cases

Investigate repeated logon failures for an account

AD admins, help desk

Find out why a specific domain account keeps failing to authenticate.

Filtering 4771 for one Account Name shows the failures come from a single server with code 0x18.

Benefit — Points to the exact cause and source instead of guesswork.

Track down the source of account lockouts

AD admins, MSPs

Identify the IP address driving the bad-password attempts behind a lockout.

A 4740 lockout plus 4771 events reveals a phone or scheduled task still using an old password.

Benefit — Turns a mysterious lockout into a specific machine to fix.

Detect password guessing and spraying

SOC analysts

Spot brute-force or password-spray activity against Active Directory accounts.

Many 0x18 failures across accounts from one external IP suggests a password-spray attempt.

Benefit — Provides an early warning of credential attacks.

Catch stale or disabled credentials in use

AD admins

Find services or devices still authenticating with revoked or expired credentials.

A 4771 with code 0x12 for a disabled service account shows something still tries to use it.

Benefit — Surfaces configuration debt before it causes outages.

Troubleshoot smart card logon problems

AD admins

Diagnose certificate and smart card issues at the domain controller.

A 4771 with code 0x10 and a smart card pre-auth type points to a certificate problem.

Benefit — Narrows smart card failures to a certificate or KDC configuration cause.

Benefits

Pinpoints the cause with a failure code

The failure code names the exact reason, from a wrong password to a disabled account.

Code 0x18 versus 0x12 immediately separates a typo from a revoked account.

Identifies the source IP

The client address shows where the failed request came from, key to fixing lockouts.

The client address leads you to the server running an old service credential.

Central visibility at the domain controller

Because domain Kerberos auth passes through DCs, one place shows failures across the domain.

Collecting 4771 from all DCs surfaces failures no matter which client caused them.

Feeds attack detection

Patterns in 4771, like many 0x18 failures fast, drive SIEM detections for credential attacks.

A rule alerts when one account gets dozens of 0x18 failures in a minute.

Speeds up lockout root-cause analysis

Paired with the lockout event, it turns a vague lockout into a specific machine and cause.

A 4740 plus 4771 trail resolves a recurring lockout in minutes.

Limitations

Only on domain controllers, only with Failure auditing

Medium

The event appears only on domain controllers, and only when Failure auditing is enabled for the Kerberos authentication subcategory.

Workaround — Enable Failure auditing via Advanced Audit Policy and collect logs from all domain controllers.

High volume and noise

Medium

On busy domain controllers, 4771 can be high volume. Benign typos and stale credentials mix with real threats, so raw counts mislead.

Workaround — Filter by failure code and account, and alert on rate and pattern, not single events.

Does not cover NTLM

Medium

NTLM authentication failures don't appear here. They show in event 4776 instead.

Workaround — Correlate 4771 with 4776 to cover both Kerberos and NTLM failures.

Client address can mislead

Low

The client address may be a NAT gateway, VPN concentrator, or proxy rather than the real device, and ::1 means local to the DC.

Workaround — Trace the address through network devices, and treat it as a lead, not a final answer.

Blind to pre-authentication-disabled accounts

Medium

Accounts set to not require Kerberos pre-authentication generate no 4771, which also exposes them to AS-REP roasting.

Workaround — Audit for accounts with pre-authentication disabled and enable it wherever possible.

Architecture

Event 4771 comes out of the Kerberos Authentication Service exchange between a client and a domain controller. The pieces are the client requesting a ticket, the KDC that checks the password, the Active Directory database that stores account keys and state, and the Security event log that records the result. A SIEM often collects the event for alerting.

Client

Sends the initial ticket request and the encrypted timestamp that proves the password.

A workstation or a service account requesting a ticket at logon.

KDC Authentication Service

Validates pre-authentication and decides whether to issue a ticket; logs 4771 on failure.

The KDC on a domain controller decrypting and checking the timestamp.

Active Directory database

Stores the account's key and state (enabled, locked, password expiry) used in the check.

The directory returns the account key the KDC uses to decrypt the timestamp.

Security event log

Records Event 4771 with the account, client address, and failure code when auditing is on.

The DC's Security log entry an admin opens in Event Viewer.

SIEM or Defender for Identity

Collects 4771 across domain controllers to correlate and alert on suspicious patterns.

A SIEM rule fires when many 0x18 failures hit one account quickly.

Data flow

The client sends an AS-REQ to the KDC on a domain controller. The KDC reads the account's key and state from Active Directory and validates the encrypted timestamp. If the check fails, the KDC denies the request and, when Failure auditing is enabled, writes Event 4771 to the Security log with the account name, client address, service name, and failure code. A SIEM can then collect and correlate the event.

Integrations: Event Viewer and Windows Event Forwarding, SIEM platforms such as Microsoft Sentinel, Microsoft Defender for Identity, Account lockout troubleshooting tools, Related events 4768, 4772, 4776, and 4740

Architecture limitations

The event captures Kerberos AS pre-authentication only. NTLM failures, service ticket problems, and accounts with pre-authentication disabled won't appear here, so 4771 alone is not a complete view of authentication failures.

Examples

A stuck password causing lockouts

A user is locked out several times a day for no obvious reason.

You filter 4771 for that account and find a steady stream of code 0x18 failures, all from one internal IP. That server runs a scheduled task with the user's old password. Updating the saved credential stops the lockouts. The failure code and client address did the work.

OutcomeThe recurring lockout is traced to one machine and fixed.

A possible password spray

Your SIEM flags a spike in Kerberos failures overnight.

Reviewing 4771, you see code 0x18 failures spread across many accounts, one attempt each, from a single external IP. That pattern, many accounts and few tries each, is classic password spraying. You block the source and force resets on any account that later succeeded.

OutcomeAn external credential attack is caught early from the event pattern.

A disabled service account still in use

You disabled an old service account but want to be sure nothing still needs it.

A 4771 with code 0x12, meaning the account is revoked, appears for that account from an application server. Something there still tries to authenticate with it. You find and update the app before fully removing the account, avoiding a broken service.

OutcomeA hidden dependency on the disabled account is found before it breaks anything.

Comparisons

Event 4771 vs Event 4768 vs Event 4768 (A Kerberos authentication ticket (TGT) was requested)

Both belong to the Audit Kerberos Authentication Service subcategory. Event 4768 records a ticket request, success or failure. Event 4771 records specifically that pre-authentication failed. They often relate to the same activity from different angles.

CriterionEvent 4771 vs Event 4768Event 4768 (A Kerberos authentication ticket (TGT) was requested)
What it recordsA failed pre-authenticationA ticket (TGT) request, success or failure
ResultAlways a failureCan be success or failure
Best useDiagnosing why auth failedTracking ticket requests and successful logons

When to choose — Use 4771 to see why authentication failed; use 4768 to track ticket requests overall.

Event 4771 vs Event 4776 vs Event 4776 (The computer attempted to validate the credentials for an account)

Event 4771 is a Kerberos failure; event 4776 is an NTLM credential validation, logged when NTLM is used. If Kerberos isn't in play, failures surface as 4776 instead, so you often need both.

CriterionEvent 4771 vs Event 4776Event 4776 (The computer attempted to validate the credentials for an account)
ProtocolKerberosNTLM
Where loggedDomain controllers (KDC)The authenticating DC or server

When to choose — Monitor both: 4771 for Kerberos failures and 4776 for NTLM failures.

Event 4771 vs Event 4740 vs Event 4740 (A user account was locked out)

Event 4771 is a single failed authentication; event 4740 is the lockout that repeated failures trigger. The 4740 tells you a lockout happened; the 4771 events tell you the source and reason.

CriterionEvent 4771 vs Event 4740Event 4740 (A user account was locked out)
What it marksOne failed authenticationThe account being locked out
Investigation roleShows source IP and failure codeConfirms the lockout occurred

When to choose — Start from the 4740 lockout, then use the 4771 events to find the source and cause.

Myths, corrected

Myth

Event 4771 always means an attack.

Correction

Most 4771 events are benign. A mistyped password, a phone with a saved old password, a service using a stale credential, or an expired password all generate it. Judge by the failure code, the account, and the rate, not by the event alone.

Why it happens: The word failed sounds alarming, so people assume the worst.

Myth

Event 4771 covers all failed logons.

Correction

It covers only Kerberos pre-authentication failures on domain controllers. NTLM failures are event 4776, and interactive or network logon failures on member servers are event 4625. You need several events for full coverage.

Why it happens: It's the most visible failure event, so it gets treated as the only one.

Myth

The Client Address is always the user's own PC.

Correction

The client address can be a NAT gateway, VPN concentrator, or reverse proxy, not the end device. A value of ::1 means the request was local to the domain controller. Treat the address as a lead to follow.

Why it happens: The field is labeled client address, so people read it as the literal endpoint.

Myth

No 4771 events means there are no failures.

Correction

You only see 4771 if Failure auditing is enabled for Kerberos authentication. And accounts set to not require pre-authentication generate none at all, which also exposes them to AS-REP roasting. Absence can mean a blind spot, not safety.

Why it happens: People assume auditing is on and complete by default.

Practical implications

For admins

Make 4771 part of lockout and logon-failure troubleshooting. Read the failure code first, then the account and client address. Enable Failure auditing for Kerberos authentication so the events are there when you need them.

For MSPs

Across client domains, standardize auditing and log collection so 4771 is available everywhere. It turns recurring lockout tickets into quick, repeatable investigations.

For business

Faster lockout resolution means less downtime and fewer help desk hours. Better detection of credential attacks reduces the risk and cost of a breach.

For security

Treat bursts of code 0x18 failures as a possible brute-force or spray signal, especially for high-value accounts or from external IPs. Alert on rate and pattern, and audit for accounts with pre-authentication disabled.

For end users

End users never see 4771 directly. For them it shows up as a failed sign-in or a locked account, which this event helps admins explain and fix.

Cost impact

The event itself is free with Windows auditing. The cost is log storage and the tuning needed to cut noise, usually well worth it for the visibility.

Operational impact

On busy domain controllers, 4771 can be high volume, so plan log capacity and filtering. Good handling shortens incident response and lockout troubleshooting.

Decision guide

Use when

  • A domain account keeps failing to authenticate and you need the cause
  • You're finding the source IP behind an account lockout
  • You're hunting password guessing or spraying against Active Directory
  • You're troubleshooting expired passwords or smart card logon on domain controllers

Avoid when

  • You're chasing NTLM failures (use event 4776)
  • You're diagnosing service ticket problems (use event 4769)
  • You want successful-logon tracking (use events 4768 and 4624)
  • The failure is a local logon on a member server (use event 4625)

Requirements

  • Domain controllers running the KDC
  • Failure auditing enabled for Audit Kerberos Authentication Service
  • Log collection or a SIEM to correlate across DCs
  • Familiarity with Kerberos failure codes

Alternatives

  • Event 4776 for NTLM credential failures
  • Event 4740 to confirm account lockouts
  • Event 4625 for logon failures on member servers
  • Microsoft Defender for Identity for built-in credential-attack detection
Use Event 4771 when you're investigating failed Kerberos logons, chasing account lockouts, or hunting credential attacks against Active Directory. For NTLM failures, use 4776; for service ticket problems, use 4769; for successful logons, use 4768 and 4624. Always enable Failure auditing first, or the event won't be there.

Related terms

Kerberos

The default authentication protocol in Active Directory, based on tickets issued by a KDC.

Key Distribution Center (KDC)

The service on a domain controller that authenticates accounts and issues Kerberos tickets.

Pre-authentication

The step where a client proves it knows the account password before the KDC issues a ticket.

Ticket Granting Ticket (TGT)

The initial Kerberos ticket a client uses to request service tickets, issued after successful authentication.

Event 4768

The audit event for a Kerberos ticket (TGT) request, success or failure.

Event 4740

The audit event logged when a user account is locked out after repeated failures.

Frequently asked questions

What does Windows Event ID 4771 mean?

It means Kerberos pre-authentication failed on a domain controller. An account tried to authenticate and the Key Distribution Center denied it, most often because the password was wrong. The event includes a failure code explaining exactly why.

What is the most common cause of Event 4771?

A wrong password, shown by failure code 0x18 (KDC_ERR_PREAUTH_FAILED). This covers typos, a device or service using an old saved password, and password guessing. The failure code tells you which.

Where is Event 4771 logged?

Only on domain controllers, in the Security log, under the Audit Kerberos Authentication Service subcategory of Account Logon. The KDC runs on domain controllers, so the event is written there, not on clients or member servers.

How do I enable Event 4771?

Turn on Failure auditing for Audit Kerberos Authentication Service. Set it through Group Policy under Advanced Audit Policy Configuration, in Account Logon, or with auditpol, then apply it to your domain controllers.

What does failure code 0x18 mean in Event 4771?

Failure code 0x18 is KDC_ERR_PREAUTH_FAILED, which means the pre-authentication information was invalid, in other words the wrong password was provided. It's the most common code in 4771.

What's the difference between Event 4771 and Event 4768?

Event 4768 records a Kerberos ticket (TGT) request, which can succeed or fail. Event 4771 records specifically that pre-authentication failed. Use 4771 to see why authentication failed and 4768 to track ticket requests overall.

Is Event 4771 a sign of an attack?

It can be, but most are benign. Watch the pattern: many 0x18 failures for one account in a short window can mean brute forcing, and single tries across many accounts from one IP can mean password spraying, especially from external addresses.

Why do I see Event 4771 for a disabled account?

A 4771 with failure code 0x12 (KDC_ERR_CLIENT_REVOKED) appears when a disabled, locked, or expired account is used. It usually means a service, device, or scheduled task is still trying to authenticate with that account.

Conclusion

Windows Event ID 4771 is logged on domain controllers when the KDC rejects an account's initial Kerberos request because pre-authentication failed. The Failure Code is the field that matters most: 0x18 for a wrong password, 0x12 for a revoked account, 0x17 for an expired password, and 0x10 for a smart card problem. The Account Name and Client Address tell you who failed and where from.

Treat a single event as routine and a pattern as a signal. Enable Failure auditing so the events exist, collect them from every domain controller, and read them with events 4768, 4776, and 4740 to see the full picture. Done well, 4771 turns confusing lockouts and quiet credential attacks into clear, traceable problems.

Main takeaway

Event 4771 is a failed Kerberos pre-authentication on a domain controller. Read the failure code and client address, and you know whether it's a typo, a stale credential, or an attack.

If you're acting on 4771, the natural next steps are a tutorial on tracing account lockouts with events 4740 and 4771, and an explainer on hardening Active Directory against password spraying and AS-REP roasting.

Reader reviews

Rate this articleBe the first to rate
No written reviews yetRate the article above, or be the first to share your experience.

Related articles