The Password Was Correct — But Nobody Had Typed It
The sign-in was successful.
The password was accepted.
The application opened.
The account belonged to a real employee.
There was just one problem.
The employee had been asleep when it happened.
Someone had authenticated as them — and the logs were about to tell Agent Foskett how.

A Successful Sign-in Is Not Proof of the Right Person.
The identity platform records authentication evidence. The investigator must establish who controlled the credentials and session.
The sign-in that did not belong
The account was familiar. The password-based authentication step had succeeded. The IP address and device context, however, did not match the employee’s normal pattern.
When contacted, the employee said they had not used the application that night.
“Interesting,” Agent Foskett muttered. “The password worked. That doesn’t tell us who used it.”
The case began with an inconsistency, not a verdict.
What the sign-in record actually said
Was a sign-in successful? The status and result code could answer that.
What authentication steps were recorded? The authentication details could help establish whether a password, passwordless method or another step was involved.
Was the person using the account its legitimate owner? That required corroboration beyond a successful sign-in.
A password step marked successful does not prove that the owner typed the password. A passwordless sign-in or an existing token should not be described as a fresh password entry without evidence.
Start with successful interactive sign-ins
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
let TargetUser = "alex@contoso.com";
SigninLogs
| where TimeGenerated > ago(7d)
| where UserPrincipalName =~ TargetUser
| where ResultType == "0"
| project TimeGenerated,
UserPrincipalName,
AppDisplayName,
IPAddress,
Location,
ClientAppUsed,
AuthenticationRequirement,
AuthenticationDetails,
ConditionalAccessStatus,
DeviceDetail,
CorrelationId
| order by TimeGenerated ascThe authentication detail mattered
AuthenticationDetails field can contain multiple steps with different methods, outcomes and processing details. Agent Foskett examined the original record rather than assuming every successful sign-in meant a newly typed password.For this fictional case, the relevant step was reported as a successful password authentication. That narrowed the possibilities, but did not establish how the credentials had been obtained.
Some authentication details can be incomplete or updated after initial log processing. They should be interpreted alongside the overall result and other evidence.
Expand the recorded authentication steps
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
let TargetUser = "alex@contoso.com";
SigninLogs
| where TimeGenerated > ago(7d)
| where UserPrincipalName =~ TargetUser
| mv-expand Step = AuthenticationDetails
| project TimeGenerated,
UserPrincipalName,
AppDisplayName,
IPAddress,
ResultType,
Method = tostring(Step.authenticationMethod),
StepSucceeded = tostring(Step.succeeded),
StepDetail = tostring(Step.authenticationStepResultDetail),
CorrelationId
| order by TimeGenerated ascThe IP address was unfamiliar — not automatically malicious
VPNs, proxies, travel and cloud-hosted egress can produce unexpected locations. A different country or ASN is a reason to investigate, not standalone proof of account takeover.
In this case, the unfamiliar network became more significant when combined with the employee’s statement and the subsequent activity.
Check what happened after authentication
Important: Non-interactive sign-in activity is not, by itself, evidence of stolen tokens. Legitimate applications also refresh and use tokens.
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
let TargetUser = "alex@contoso.com";
AADNonInteractiveUserSignInLogs
| where TimeGenerated > ago(7d)
| where UserPrincipalName =~ TargetUser
| project TimeGenerated,
UserPrincipalName,
AppDisplayName,
ResourceDisplayName,
IPAddress,
ResultType,
ClientAppUsed,
CorrelationId
| order by TimeGenerated ascThe second clue was the application activity
Agent Foskett aligned the application events with the sign-in time, IP address, user identity and available session identifiers. The sequence supported unauthorised use of the account, although the sign-in record alone could not prove the original theft mechanism.
“The door opened with a valid key,” he said. “Now we need to know who had the key.”
Do not confuse passwordless access with password theft
Agent Foskett checked the authentication method actually recorded for the event and did not label token refreshes as new password submissions.
If the logs showed passwordless authentication, the investigation would need to examine registered methods, devices and authentication-method changes instead. The technique must follow the evidence, not the headline.
Review Conditional Access in context
ConditionalAccessStatus provides a useful starting point, but policy details and the sign-in record must be reviewed together. A success result does not mean every possible security control was required or that the session was trustworthy.What Agent Foskett checked
What the evidence can and cannot prove
Sign-in records can establish the observed authentication flow, network context and application access. They do not independently prove the person behind the keyboard.
For this illustrative case, the combination of the employee’s denial, anomalous sign-in context and corroborating application activity justified treating the account as potentially compromised. The precise credential acquisition method remained unconfirmed.
Contain the account — and preserve the evidence
They also investigated how the password may have been exposed rather than assuming a reset alone resolved the root cause.
Response actions should be coordinated with the organisation’s incident-response procedures and the potential impact on legitimate access.
The lesson
The identity was recognised.
The authentication service had done what it was asked to do.
But authentication success is not the same as identity assurance.
A valid credential can be used by the wrong person — and a good investigation proves the distinction with correlated evidence.
Related investigations
Final thought
The system recognised the secret.
Agent Foskett wanted to know who controlled it.
The password was correct. The person behind it was the question.
The Logs Already Knew! 🔎

