Detect DLL in Elastic Security
Adversaries may abuse dynamic-link library (DLL) mechanisms to achieve persistence, privilege escalation, and defense evasion. Techniques include DLL search order hijacking (planting a malicious DLL earlier in the search path), DLL side-loading (placing a malicious DLL alongside a legitimate signed executable), phantom DLL hijacking (targeting references to non-existent DLLs), DLL substitution (replacing a valid DLL), and DLL redirection (using .manifest or .local files). Groups including Chimera, TONESHELL/Mustang Panda, Velvet Ant, APT41, and Aquatic Panda have extensively used these techniques to load malicious payloads under trusted process contexts.
MITRE ATT&CK
- Technique
- T1574 Hijack Execution Flow
- Sub-technique
- T1574.001 DLL
- Canonical reference
- https://attack.mitre.org/techniques/T1574/001/
Elastic Detection Query
sequence by host.id [process where event.type == "start" and (process.executable : ("C:\\Windows\\System32\\*", "C:\\Windows\\SysWOW64\\*", "C:\\Program Files\\*", "C:\\Program Files (x86)\\*") and process.token.integrity_level_name in ("high", "system"))] [library where event.type == "start" and (dll.path : ("*\\AppData\\Local\\Temp\\*", "*\\AppData\\Roaming\\*", "*\\ProgramData\\*", "*\\Users\\Public\\*", "*\\Windows\\Temp\\*")) and not dll.path : ("C:\\Windows\\System32\\*", "C:\\Windows\\SysWOW64\\*", "C:\\Program Files\\*", "C:\\Program Files (x86)\\*") and (dll.code_signature.trusted == false or dll.code_signature.exists == false or dll.code_signature.status != "trusted")] Detects DLL search order hijacking and side-loading by identifying image load events where a trusted, high-integrity process (from System32 or Program Files) loads a DLL from a suspicious writable path such as AppData, ProgramData, or Windows\Temp. Unsigned or invalidly signed DLLs loaded in this pattern are characteristic of T1574.001 abuse.
Data Sources
Required Tables
False Positives & Tuning
- Legitimate software installers that temporarily extract and load DLLs from AppData or Temp directories during installation or self-update routines
- Security tools and EDR agents that inject helper DLLs from non-standard paths as part of hooking or monitoring functionality
- Development and testing environments where developers run signed executables that load locally compiled DLLs from user-writable paths
Other platforms for T1574.001
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 1DLL Search Order Hijacking via Phantom DLL
Expected signal: Sysmon Event ID 11 (FileCreate): Target file path containing 'dll-hijack-test\cryptsp.dll'. Sysmon Event ID 7 (ImageLoad) if the DLL is loaded. Process creation events showing calc.exe running from a non-standard path.
- Test 2DLL Side-Loading with Legitimate Signed Binary
Expected signal: Sysmon Event ID 11 (FileCreate): Legitimate executable copied to TEMP directory. Sysmon Event ID 1 (Process Create): Process launched from TEMP instead of its legitimate System32 home. File creation events in the temp directory.
- Test 3DLL Redirection via .local File
Expected signal: Sysmon Event ID 11 (FileCreate): .local file created alongside a legitimate executable copy. The presence of [executable].local causes Windows to prioritize the application's directory for all DLL searches, enabling DLL hijacking of any DLL that calc.exe imports.
References (7)
- https://attack.mitre.org/techniques/T1574/001/
- https://unit42.paloaltonetworks.com/dll-hijacking-techniques/
- https://www.crowdstrike.com/en-us/blog/4-ways-adversaries-hijack-dlls/
- https://www.wietzebeukema.nl/blog/hijacking-dlls-in-windows
- https://www.hexacorn.com/blog/2013/12/08/beyond-good-ol-run-key-part-5/
- https://github.com/redcanaryco/atomic-red-team/blob/master/atomics/T1574.001/T1574.001.md
- https://learn.microsoft.com/en-us/windows/win32/dlls/dynamic-link-library-search-order
Unlock Pro Content
Get the full detection package for T1574.001 including response playbook, investigation guide, and atomic red team tests.