Invoke-Script - Empire Module


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

Module Overview


Name: Invoke-Script
Module: powershell/management/invoke_script
Source code [1]: empire/server/modules/powershell/management/invoke_script.yaml
Source code [2]: empire/server/modules/powershell/management/invoke_script.py
MITRE ATT&CK: T1064
Language: PowerShell
Needs admin: No
OPSEC safe: Yes
Background: Yes

The invoke_script module runs a custom script. Useful for mass-taskings or script autoruns.

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

Agent
Agent to run module on.

ScriptCmd
Script command (Invoke-X) from file to run, along with any specified arguments.

Additional Module Options


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

ScriptPath
Full path to the PowerShell script.ps1 to run (on attacker machine).

Invoke_script Example Usage


Here's an example of how to use the invoke_script 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/management/invoke_script

 Author       @harmj0y                                                          
 Background   True                                                              
 Description  Run a custom script. Useful for mass-taskings or script autoruns. 
 Language     powershell                                                        
 Name         powershell/management/invoke_script                               
 NeedsAdmin   False                                                             
 OpsecSafe    True                                                              
 Techniques   http://attack.mitre.org/techniques/T1064                          


,Record Options------,----------,-------------------------------------,
| Name       | Value | Required | Description                         |
|------------|-------|----------|-------------------------------------|
| Agent      |       | True     | Agent to run module on.             |
|------------|-------|----------|-------------------------------------|
| ScriptCmd  |       | True     | Script command (Invoke-X) from file |
|            |       |          | to run, along with any specified    |
|            |       |          | arguments.                          |
|------------|-------|----------|-------------------------------------|
| ScriptPath |       | False    | Full path to the PowerShell         |
|            |       |          | script.ps1 to run (on attacker      |
|            |       |          | machine)                            |
'------------'-------'----------'-------------------------------------'

(Empire: usemodule/powershell/management/invoke_script) > set Agent Y4LHEV83
[*] Set Agent to Y4LHEV83
(Empire: usemodule/powershell/management/invoke_script) > set ScriptCmd value
[*] Set ScriptCmd to value
(Empire: usemodule/powershell/management/invoke_script) > 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.