Suspicious Module Loaded by LSASS
Identifies LSASS loading an unsigned or untrusted DLL. Windows Security Support Provider (SSP) DLLs are loaded into LSSAS process at system start. Once loaded into the LSA, SSP DLLs have access to encrypted and plaintext passwords that are stored in Windows, such as any logged-on user's Domain password or smart card PINs.
Elastic rule (View on GitHub)
1[metadata]
2creation_date = "2022/12/28"
3integration = ["endpoint"]
4maturity = "production"
5updated_date = "2024/05/21"
6
7[rule]
8author = ["Elastic"]
9description = """
10Identifies LSASS loading an unsigned or untrusted DLL. Windows Security Support Provider (SSP) DLLs are loaded into
11LSSAS process at system start. Once loaded into the LSA, SSP DLLs have access to encrypted and plaintext passwords that
12are stored in Windows, such as any logged-on user's Domain password or smart card PINs.
13"""
14from = "now-9m"
15index = ["logs-endpoint.events.library-*"]
16language = "eql"
17license = "Elastic License v2"
18name = "Suspicious Module Loaded by LSASS"
19references = ["https://blog.xpnsec.com/exploring-mimikatz-part-2/", "https://github.com/jas502n/mimikat_ssp"]
20risk_score = 47
21rule_id = "3a6001a0-0939-4bbe-86f4-47d8faeb7b97"
22setup = """## Setup
23
24If enabling an EQL rule on a non-elastic-agent index (such as beats) for versions <8.2,
25events will not define `event.ingested` and default fallback for EQL rules was not added until version 8.2.
26Hence for this rule to work effectively, users will need to add a custom ingest pipeline to populate
27`event.ingested` to @timestamp.
28For more details on adding a custom ingest pipeline refer - https://www.elastic.co/guide/en/fleet/current/data-streams-pipeline-tutorial.html
29"""
30severity = "medium"
31tags = [
32 "Domain: Endpoint",
33 "OS: Windows",
34 "Use Case: Threat Detection",
35 "Tactic: Credential Access",
36 "Data Source: Elastic Defend",
37]
38timestamp_override = "event.ingested"
39type = "eql"
40
41query = '''
42library where host.os.type == "windows" and process.executable : "?:\\Windows\\System32\\lsass.exe" and
43 not (dll.code_signature.subject_name :
44 ("Microsoft Windows",
45 "Microsoft Corporation",
46 "Microsoft Windows Publisher",
47 "Microsoft Windows Software Compatibility Publisher",
48 "Microsoft Windows Hardware Compatibility Publisher",
49 "McAfee, Inc.",
50 "SecMaker AB",
51 "HID Global Corporation",
52 "HID Global",
53 "Apple Inc.",
54 "Citrix Systems, Inc.",
55 "Dell Inc",
56 "Hewlett-Packard Company",
57 "Symantec Corporation",
58 "National Instruments Corporation",
59 "DigitalPersona, Inc.",
60 "Novell, Inc.",
61 "gemalto",
62 "EasyAntiCheat Oy",
63 "Entrust Datacard Corporation",
64 "AuriStor, Inc.",
65 "LogMeIn, Inc.",
66 "VMware, Inc.",
67 "Istituto Poligrafico e Zecca dello Stato S.p.A.",
68 "Nubeva Technologies Ltd",
69 "Micro Focus (US), Inc.",
70 "Yubico AB",
71 "GEMALTO SA",
72 "Secure Endpoints, Inc.",
73 "Sophos Ltd",
74 "Morphisec Information Security 2014 Ltd",
75 "Entrust, Inc.",
76 "Nubeva Technologies Ltd",
77 "Micro Focus (US), Inc.",
78 "F5 Networks Inc",
79 "Bit4id",
80 "Thales DIS CPL USA, Inc.",
81 "Micro Focus International plc",
82 "HYPR Corp",
83 "Intel(R) Software Development Products",
84 "PGP Corporation",
85 "Parallels International GmbH",
86 "FrontRange Solutions Deutschland GmbH",
87 "SecureLink, Inc.",
88 "Tidexa OU",
89 "Amazon Web Services, Inc.",
90 "SentryBay Limited",
91 "Audinate Pty Ltd",
92 "CyberArk Software Ltd.",
93 "McAfeeSysPrep",
94 "NVIDIA Corporation PE Sign v2016",
95 "Trend Micro, Inc.",
96 "Fortinet Technologies (Canada) Inc.",
97 "Carbon Black, Inc.") and
98 dll.code_signature.status : ("trusted", "errorExpired", "errorCode_endpoint*", "errorChaining")) and
99
100 not dll.hash.sha256 :
101 ("811a03a5d7c03802676d2613d741be690b3461022ea925eb6b2651a5be740a4c",
102 "1181542d9cfd63fb00c76242567446513e6773ea37db6211545629ba2ecf26a1",
103 "ed6e735aa6233ed262f50f67585949712f1622751035db256811b4088c214ce3",
104 "26be2e4383728eebe191c0ab19706188f0e9592add2e0bf86b37442083ae5e12",
105 "9367e78b84ef30cf38ab27776605f2645e52e3f6e93369c674972b668a444faa",
106 "d46cc934765c5ecd53867070f540e8d6f7701e834831c51c2b0552aba871921b",
107 "0f77a3826d7a5cd0533990be0269d951a88a5c277bc47cff94553330b715ec61",
108 "4aca034d3d85a9e9127b5d7a10882c2ef4c3e0daa3329ae2ac1d0797398695fb",
109 "86031e69914d9d33c34c2f4ac4ae523cef855254d411f88ac26684265c981d95")
110'''
111
112
113[[rule.threat]]
114framework = "MITRE ATT&CK"
115[[rule.threat.technique]]
116id = "T1003"
117name = "OS Credential Dumping"
118reference = "https://attack.mitre.org/techniques/T1003/"
119[[rule.threat.technique.subtechnique]]
120id = "T1003.001"
121name = "LSASS Memory"
122reference = "https://attack.mitre.org/techniques/T1003/001/"
123
124
125
126[rule.threat.tactic]
127id = "TA0006"
128name = "Credential Access"
129reference = "https://attack.mitre.org/tactics/TA0006/"
References
Related rules
- Command Shell Activity Started via RunDLL32
- Credential Acquisition via Registry Hive Dumping
- Full User-Mode Dumps Enabled System-Wide
- Kerberos Traffic from Unusual Process
- Microsoft IIS Connection Strings Decryption