Detect Cached Domain Credentials in CrowdStrike LogScale
Adversaries access cached domain credentials (DCC2/MS-Cache v2) stored locally for offline authentication when domain controllers are unavailable. On Windows, these are stored as MSCACHE v2 (PBKDF2-derived) hashes in HKLM\SECURITY\Cache and cannot be used for pass-the-hash but can be cracked offline. Linux systems using SSSD store cached credentials at /var/lib/sss/db/cache.[domain].ldb. Tools include Mimikatz (lsadump::cache), LaZagne, Cachedump, and Quarks PwDump. Used by Okrum, APT33, OilRig, Leafminer, MuddyWater.
MITRE ATT&CK
- Tactic
- Credential Access
- Technique
- T1003 OS Credential Dumping
- Sub-technique
- T1003.005 Cached Domain Credentials
- Canonical reference
- https://attack.mitre.org/techniques/T1003/005/
LogScale Detection Query
// T1003.005 - Cached Domain Credentials Detection
// Pattern 1: Known credential dumping tool execution
#event_simpleName = ProcessRollup2
| CommandLine = /(?i)(lsadump::cache|cachedump|mscache|ms-cache)/ OR ImageFileName = /(?i)(lazagne|cachedump|fgdump|gsecdump)\.exe/
| eval DetectionType = "CredDumpTool"
| table _time, ComputerName, UserName, ImageFileName, CommandLine, DetectionType
// Pattern 2: Registry access to LSA cache hive by suspicious processes
| union
[ #event_simpleName = RegGenericValueUpdate OR #event_simpleName = RegValueUpdate
| RegObjectName = /\\SECURITY\\Cache|\\SECURITY\\Policy\\Secrets\\NL\$/
| ImageFileName != /(?i)(lsass|svchost|services)\.exe$/
| eval DetectionType = "LSARegistryAccess"
| table _time, ComputerName, UserName, ImageFileName, RegObjectName, DetectionType ]
// Pattern 3: File access to SSSD credential cache (Linux endpoints)
| union
[ #event_simpleName = SyntheticProcessRollup2 OR #event_simpleName = PlatformEvent
| TargetFileName = /\/var\/lib\/sss\/db\/|\/var\/opt\/quest\/vas\/authcache\//
| ImageFileName != /sssd/
| eval DetectionType = "SSSDCacheAccess"
| table _time, ComputerName, UserName, ImageFileName, TargetFileName, DetectionType ]
| groupBy([ComputerName, UserName, DetectionType], function=[collect([ImageFileName, CommandLine, RegObjectName, TargetFileName]), count(as=EventCount)])
| sort -EventCount CrowdStrike LogScale (Falcon) query detecting T1003.005 across three detection patterns: process execution matching known credential dumping tool signatures (Mimikatz, LaZagne, Cachedump, fgdump, gsecdump), registry write/update events targeting the LSA cache and NL$ secrets by non-system processes, and file events against Linux SSSD credential cache locations. Results are aggregated by host and user for analyst triage.
Data Sources
Required Tables
False Positives & Tuning
- CrowdStrike Falcon's own sensor performing registry integrity checks on LSA hive — the sensor process itself may query SECURITY\Cache during behavioral monitoring; Falcon's own exclusions should handle this
- Active Directory migration tools (ADMT, Quest Migration Manager) that legitimately read cached credential counts from SECURITY\Cache to validate domain migration readiness
- Helpdesk or IT automation scripts using gsecdump or similar tools during authorized password reset or credential verification workflows — correlate with IT ticketing system
Other platforms for T1003.005
Testing Methodology
Validate this detection against 3 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.
- Test 1Mimikatz Cached Domain Credentials Dump
Expected signal: Sysmon Event ID 1: Process Create for mimikatz.exe with 'lsadump::cache' in CommandLine. Sysmon Event ID 12/13: Registry access to HKLM\SECURITY\Cache by mimikatz.exe. Security Event ID 4688 for mimikatz.exe.
- Test 2Check Cached Credential Count via Registry
Expected signal: Sysmon Event ID 12: Registry Key Opened for HKLM\SECURITY\Cache (if Sysmon is configured to log registry reads). Security Event ID 4656/4663 if registry auditing is enabled. Process Create for reg.exe.
- Test 3Linux SSSD Cache Access Simulation
Expected signal: Linux auditd events for file access on /var/lib/sss/db/ by non-sssd processes. Syslog entries for file access audit events. Process creation events for ls, file, and stat commands.
References (6)
- https://attack.mitre.org/techniques/T1003/005/
- https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2012-r2-and-2012/hh994565
- https://ired.team/offensive-security/credential-access-and-credential-dumping/dumping-and-cracking-mscash-cached-domain-credentials
- https://passlib.readthedocs.io/en/stable/lib/passlib.hash.msdcc2.html
- https://labs.portcullis.co.uk/download/eu-18-Wadhwa-Brown-Where-2-worlds-collide-Bringing-Mimikatz-et-al-to-UNIX.pdf
- https://github.com/redcanaryco/atomic-red-team/blob/master/atomics/T1003.005/T1003.005.md
Unlock Pro Content
Get the full detection package for T1003.005 including response playbook, investigation guide, and atomic red team tests.