Detect Path Interception by Search Order Hijacking in Elastic Security
Adversaries may execute their own malicious payloads by hijacking the search order Windows uses to find programs called without a full path. When an executable calls a program by name only (e.g., 'net user' rather than 'C:\Windows\System32\net.exe user'), Windows first searches the current directory of the calling program, then the directories in PATH. An adversary who places a binary named 'net.exe' or 'net.com' (PATHEXT ordering: .COM before .EXE) in the same directory as the calling application will have their binary executed. Empire and PowerSploit both include modules to discover and exploit search order hijacking vulnerabilities across the system.
MITRE ATT&CK
- Technique
- T1574 Hijack Execution Flow
- Sub-technique
- T1574.008 Path Interception by Search Order Hijacking
- Canonical reference
- https://attack.mitre.org/techniques/T1574/008/
Elastic Detection Query
process where event.type == "start"
and process.name : ("net.exe", "cmd.exe", "powershell.exe", "whoami.exe", "ipconfig.exe", "tasklist.exe")
and not process.executable : ("C:\\Windows\\*", "C:\\Windows\\SysWOW64\\*") Elastic EQL detection for Path Interception by Search Order Hijacking. Detects system binary names (net.exe, cmd.exe, powershell.exe, etc.) executing from non-system directories. Windows search order hijacking relies on a copy of a commonly-invoked binary being placed in
Data Sources
Required Tables
False Positives & Tuning
- Legitimate software installers that update components in TEMP during multi-step installation
- Enterprise deployment tools (SCCM, Intune) staging and modifying binaries in temp locations
- Self-updating applications that modify their own components before execution
- Antivirus software modifying installer binaries during scanning or remediation
Other platforms for T1574.008
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 1Create Fake Net.exe in Application Directory
Expected signal: Sysmon Event ID 11 (FileCreate): net.exe created in TEMP subdirectory. If subsequently executed: Sysmon Event ID 1 showing net.exe running from %TEMP%\vulnerable-app rather than System32.
- Test 2Search Order Hijacking via .COM Extension (PATHEXT)
Expected signal: Process creation events showing test.com executed instead of test.exe when called by name only. The CurrentDirectory in the process creation event shows the TEMP directory.
- Test 3PowerSploit Find-PathDLLHijack Discovery
Expected signal: Sysmon Event ID 1: powershell.exe with PATH enumeration command. Sysmon Event ID 11: temporary test files created and deleted in writable PATH directories. PowerShell ScriptBlock Log Event ID 4104 with the enumeration script.
References (4)
- https://attack.mitre.org/techniques/T1574/008/
- https://learn.microsoft.com/en-us/windows/win32/api/processthreadsapi/nf-processthreadsapi-createprocessa
- https://github.com/PowerShellMafia/PowerSploit/blob/master/Privesc/PowerUp.ps1
- https://github.com/redcanaryco/atomic-red-team/blob/master/atomics/T1574.008/T1574.008.md
Unlock Pro Content
Get the full detection package for T1574.008 including response playbook, investigation guide, and atomic red team tests.