Find-ProcessDLLHijack - Empire Module


This page contains detailed information about how to use the powershell/privesc/powerup/find_dllhijack Empire module. For list of all Empire modules, visit the Empire Module Library.

Module Overview


Name: Find-ProcessDLLHijack
Module: powershell/privesc/powerup/find_dllhijack
Source code [1]: empire/server/modules/powershell/privesc/powerup/find_dllhijack.yaml
Source code [2]: empire/server/data/module_source/privesc/PowerUp.ps1
MITRE ATT&CK: T1087, T1038, T1031, T1034, T1057, T1012, S0194
Language: PowerShell
Needs admin: No
OPSEC safe: Yes
Background: Yes

The find_dllhijack module finds generic .DLL hijacking opportunities.

This module runs in a foreground and is OPSEC unsafe as it writes on the disk and therefore could be detected by AV/EDR running on the target system.

Note that the find_dllhijack module does not need administrative privileges to work properly which means that a normal user can run this module.

Required Module Options


This is a list of options that are required by the find_dllhijack module:

Agent
Agent to run module on.

Additional Module Options


This is a list of additional options that are supported by the find_dllhijack module:

ExcludeOwned
Switch. Exclude processes the current user owns.

ExcludeProgramFiles
Switch. Exclude paths from C:\Program Files\* and C:\Program Files (x86)\*.

ExcludeWindows
Switch. Exclude paths from C:\Windows\* instead of just C:\Windows\System32\*.

OutputFunction
PowerShell's output function to use ("Out-String", "ConvertTo-Json", "ConvertTo-Csv", "ConvertTo-Html", "ConvertTo-Xml").
Default value: Out-String.
Suggested values: Out-String, ConvertTo-Json, ConvertTo-Csv, ConvertTo-Html, ConvertTo-Xml.

Find_dllhijack Example Usage


Here's an example of how to use the find_dllhijack module in the Empire client console:

[+] New agent Y4LHEV83 checked in
[*] Sending agent (stage 2) to Y4LHEV83 at 192.168.204.135
(empire usestager/windows/ducky) > usemodule powershell/privesc/powerup/find_dllhijack

 Author       @harmj0y                                                           
 Background   True                                                               
 Comments     https://github.com/PowerShellEmpire/PowerTools/tree/master/PowerUp 
 Description  Finds generic .DLL hijacking opportunities.                        
 Language     powershell                                                         
 Name         powershell/privesc/powerup/find_dllhijack                          
 NeedsAdmin   False                                                              
 OpsecSafe    True                                                               
 Software     http://attack.mitre.org/software/S0194                             
 Techniques   http://attack.mitre.org/techniques/T1087                           
              http://attack.mitre.org/techniques/T1038                           
              http://attack.mitre.org/techniques/T1031                           
              http://attack.mitre.org/techniques/T1034                           
              http://attack.mitre.org/techniques/T1057                           
              http://attack.mitre.org/techniques/T1012                           


,Record Options-------,------------,----------,-------------------------------------,
| Name                | Value      | Required | Description                         |
|---------------------|------------|----------|-------------------------------------|
| Agent               |            | True     | Agent to run module on.             |
|---------------------|------------|----------|-------------------------------------|
| ExcludeOwned        |            | False    | Switch. Exclude processes the       |
|                     |            |          | current user owns.                  |
|---------------------|------------|----------|-------------------------------------|
| ExcludeProgramFiles |            | False    | Switch. Exclude paths from          |
|                     |            |          | C:\Program Files\* and C:\Program   |
|                     |            |          | Files (x86)\*                       |
|---------------------|------------|----------|-------------------------------------|
| ExcludeWindows      |            | False    | Switch. Exclude paths from          |
|                     |            |          | C:\Windows\* instead of just        |
|                     |            |          | C:\Windows\System32\*               |
|---------------------|------------|----------|-------------------------------------|
| OutputFunction      | Out-String | False    | PowerShell's output function to use |
|                     |            |          | ("Out-String", "ConvertTo-Json",    |
|                     |            |          | "ConvertTo-Csv", "ConvertTo-Html",  |
|                     |            |          | "ConvertTo-Xml").                   |
'---------------------'------------'----------'-------------------------------------'

(Empire: usemodule/powershell/privesc/powerup/find_dllhijack) > set Agent Y4LHEV83
[*] Set Agent to Y4LHEV83
(Empire: usemodule/powershell/privesc/powerup/find_dllhijack) > execute
[*] Tasked Y4LHEV83 to run Task 1
...

Now wait for the results to come.

Author


References


See Also


Check also the following modules related to this module:

Version


This page has been created based on Empire version 4.1.3 (BC Security Fork).
Visit Empire Module Library for more modules.