Critical RiskWindowsLegitimateCommonly Abused
lsass.exeEXE

lsass.exe Explained: Credential Theft Target or Legitimate Windows Process? [2026]

lsass.exe (Local Security Authority Subsystem Service) is the core Windows authentication process that stores user credentials in memory. It's the #1 target for credential dumping attacks because it contains NTLM hashes, Kerberos tickets, and sometimes plaintext passwords. Only ONE instance should exist at C:\Windows\System32\lsass.exe. Enable LSA Protection (PPL) and Credential Guard for maximum protection.

Risk Summary

lsass.exe is the single most valuable target for credential theft attacks. Once compromised, attackers can dump NTLM password hashes, Kerberos tickets, and cached credentials to enable lateral movement across your entire network. 87% of ransomware intrusions involve LSASS credential dumping within the first 4-6 hours.

Overview

What is lsass.exe?

lsass.exe (Local Security Authority Subsystem Service) is the core Windows authentication and credential management process. It is responsible for enforcing security policies, validating user logins, managing access tokens, and critically—storing credential materials in memory during user sessions.

From a security perspective, lsass.exe is the single most valuable target for credential theft attacks because it contains:

  • NTLM password hashes for any user with an active session
  • Kerberos tickets (TGTs and TGSs) for domain authentication
  • Plaintext passwords (in certain conditions or older systems)
  • Cached credentials for recently logged-in accounts
  • Service account passwords (sometimes in hashed form)

Core Functions

Authentication & Verification:

  • Validates local user credentials against the Security Accounts Manager (SAM) database
  • Validates domain credentials against Active Directory via NTLM or Kerberos
  • Verifies user identity during logon, service authentication, and network resource access

Token Creation:

  • Generates and issues access tokens that determine what resources users can access
  • Maintains token lifetime and permissions throughout the user session

Policy Enforcement:

  • Enforces security policies on the system
  • Manages user rights and permissions
  • Controls access to protected resources

Normal Behavior

Normal Behavior

Expected Process State

PropertyExpected Value
PathC:\Windows\System32\lsass.exe
Parentwininit.exe (or no parent)
InstancesONE (exactly one)
UserNT AUTHORITY\SYSTEM
ChildrenNone (typically)
Memory40-150 MB (varies by system/logins)
StartupSeconds after boot (Session 0)

Why Only One Instance

Unlike svchost.exe which runs multiple instances, lsass.exe should only have ONE instance running. Multiple lsass.exe processes is a critical indicator of compromise.

Normal Functions

  • Validating user credentials during login
  • Managing Kerberos ticket caching
  • Enforcing security policies
  • Generating and issuing access tokens
  • Storing credential materials in protected memory

Common Locations

C:\Windows\System32\lsass.exe

Suspicious Indicators

Legitimate vs Suspicious: Recognition Guide

LEGITIMATE: Normal lsass.exe

Path:        C:\Windows\System32\lsass.exe (ONLY location)
Signature:   Signed by Microsoft Corporation
Parent:      wininit.exe (or no parent process)
Instances:   ONE and ONLY ONE
User:        NT AUTHORITY\SYSTEM
Behavior:    No child processes
Memory:      40-150 MB (varies by system/logins)
Startup:     Seconds after boot (Session 0)
Protection:  Protected Process Light (PPL) on Windows 10+

SUSPICIOUS: Malware Indicators

Path:        C:\Users\...\AppData\...
             C:\ProgramData\lsass.exe
             C:\Windows\Temp\lsass.exe
             Any path NOT System32
Signature:   Unsigned, invalid, or different publisher
Parent:      explorer.exe, cmd.exe, powershell.exe, notepad.exe
Instances:   Multiple lsass.exe processes
User:        Running as standard user or different account
Behavior:    Spawning child processes
Misspelling: lsass.exe, lssass.exe, lsaass.exe (typosquatting)

Comparison Table

IndicatorLegitimateSuspiciousRisk Level
File PathC:\Windows\System32\lsass.exeAnywhere elseCritical
Digital SignatureMicrosoft Corporation, ValidUnsigned/Invalid/DifferentCritical
Parent Processwininit.exe or noneexplorer.exe, cmd.exe, otherCritical
Process Count1 (exactly one)Multiple instancesCritical
User ContextNT AUTHORITY\SYSTEMStandard userHigh
Child ProcessesNone (normal)Any child processHigh

Abuse Techniques

Credential Dumping Attack Techniques

Technique #1: Direct LSASS Memory Dump via Mimikatz (T1003.001)

Attack Flow: Attacker obtains admin privileges → Runs Mimikatz → Executes sekurlsa::logonPasswords → Mimikatz reads LSASS memory directly → Extracts NTLM hashes, Kerberos tickets, plaintext passwords

How It Works: Mimikatz uses Windows API calls (OpenProcess, ReadProcessMemory) to:

  1. Open a handle to lsass.exe with full access (GrantedAccess: 0x1F0FFF)
  2. Read process memory regions where credentials are stored
  3. Parse memory structures to extract credential material
  4. Display plaintext passwords or hashes directly to attacker

Detection Signals:

  • Sysmon Event ID 10: Process access to lsass.exe with suspicious GrantedAccess flags
  • EDR alerts on Mimikatz signature or behavior
  • Suspicious DLL loading: dbgcore.dll, dbghelp.dll, ntdll.dll

Technique #2: Memory Dump File + Offline Extraction

Attack Flow: Attacker creates memory dump of LSASS → Moves dump file to safe location → Extracts credentials offline using Mimikatz or Pypykatz → Avoids real-time EDR detection

Legitimate Tools Abused:

ToolLegitimate PurposeHow Abused
ProcDumpSystem diagnosticsDump LSASS memory
Task ManagerProcess managementCreate dump file
Comsvcs.dllComponent servicesMiniDump function for LSASS

Example Commands:

procdump -ma lsass.exe lsass.dmp
rundll32.exe C:\Windows\System32\comsvcs.dll, MiniDump <PID> lsass.dmp full

Technique #3: LSA Secrets Extraction via Registry

Attack Flow: Attacker gains admin on domain controller → Dumps SAM, SYSTEM, SECURITY registry hives → Extracts LSA secrets and cached credentials → Obtains service account passwords

Registry Hives Targeted:

HiveContainsAttack Value
SAMLocal user account hashesCompromise local systems
SYSTEMBoot key needed to decrypt SAMRequired for hash extraction
SECURITYLSA Secrets (service passwords)Service account compromise
NTDS.dit (DC only)All AD user hashesComplete domain takeover

Remediation Steps

LSASS Protection: Enabling LSA Protection & Credential Guard

Defense Layer #1: LSA Protection (PPL)

What It Does: Prevents even administrators from injecting code into LSASS or reading its memory.

Enable LSA Protection (Registry):

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" `
  -Name "RunAsPPL" -Value 1 -Type DWord
Restart-Computer

Verify LSA Protection is Active:

Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" -Name "RunAsPPL"
# Should return: RunAsPPL = 1

Defense Layer #2: Credential Guard (Virtualization-Based Security)

What It Does: Isolates credentials in a separate protected process (LSAIso.exe) using hardware virtualization.

Requirements:

  • Windows 10 (v1507+) or Windows 11
  • Secure Boot enabled
  • TPM 2.0 (optional, recommended)
  • Virtualization extensions enabled

Enable Credential Guard (Registry):

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" `
  -Name "LsaCfgFlags" -Value 1 -Type DWord
Restart-Computer

If LSASS Compromise Suspected

Immediate Response:

  1. Isolate affected system from network
  2. Preserve memory dump and process logs
  3. Alert incident response team
  4. Reset all passwords for users with active sessions
  5. Check all other systems for lateral movement
  6. Force domain-wide credential rotation if domain accounts compromised

Investigation Checklist

Investigation Checklist

  • Verify lsass.exe is located at C:\Windows\System32\lsass.exe
  • Confirm valid Microsoft Corporation digital signature
  • Check parent process is wininit.exe (or no parent)
  • Verify ONLY ONE lsass.exe process exists
  • Review Sysmon Event ID 10 for suspicious access patterns
  • Check for GrantedAccess flags: 0x1F0FFF, 0x1010, 0x1400
  • Search for memory dump files: lsass*.dmp, lsass*.tmp
  • Verify LSA Protection is enabled (RunAsPPL = 1)
  • Check Credential Guard status
  • Search for credential dumping tools: mimikatz, procdump, pypykatz
  • Review registry hive export operations
  • Check authentication anomalies post-incident
  • Document findings for incident report

MITRE ATT&CK Techniques

Last verified: January 18, 2026