Get-GPOComputer - Empire Module


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

Module Overview


Name: Get-GPOComputer
Module: powershell/situational_awareness/network/powerview/get_gpo_computer
Source code [1]: empire/server/modules/powershell/situational_awareness/network/powerview/get_gpo_computer.yaml
Source code [2]: empire/server/modules/powershell/situational_awareness/network/powerview/get_gpo_computer.py
MITRE ATT&CK: T1484, S0194
Language: PowerShell
Needs admin: No
OPSEC safe: Yes
Background: Yes

The get_gpo_computer module takes a GPO GUID and returns the computers the GPO is applied to. (Note: This function was removed in PowerView. This now uses a combination of two CmdLets to achieve the same functionality).

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

Agent
Agent to run module on.

GUID
The GUID of the GPO to enumerate.

Additional Module Options


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

Domain
The domain to use for the query, defaults to the current domain.

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.

Server
Specifies an active directory server (domain controller) to bind to.

Get_gpo_computer Example Usage


Here's an example of how to use the get_gpo_computer 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/situational_awareness/network/powerview/get_gpo_computer

 Author       @harmj0y                                                            
              @byt3bl33d3r                                                        
 Background   True                                                                
 Comments     https://github.com/PowerShellMafia/PowerSploit/blob/dev/Recon/      
 Description  Takes a GPO GUID and returns the computers the GPO is applied to.   
              (Note: This function was removed in PowerView. This now uses a      
              combination of two CmdLets to achieve the same functionality)       
 Language     powershell                                                          
 Name         powershell/situational_awareness/network/powerview/get_gpo_computer 
 NeedsAdmin   False                                                               
 OpsecSafe    True                                                                
 Software     http://attack.mitre.org/software/S0194                              
 Techniques   http://attack.mitre.org/techniques/T1484                            


,Record Options--,------------,----------,-------------------------------------,
| Name           | Value      | Required | Description                         |
|----------------|------------|----------|-------------------------------------|
| Agent          |            | True     | Agent to run module on.             |
|----------------|------------|----------|-------------------------------------|
| Domain         |            | False    | The domain to use for the query,    |
|                |            |          | defaults to the current domain.     |
|----------------|------------|----------|-------------------------------------|
| GUID           |            | True     | The GUID of the GPO to enumerate.   |
|----------------|------------|----------|-------------------------------------|
| OutputFunction | Out-String | False    | PowerShell's output function to use |
|                |            |          | ("Out-String", "ConvertTo-Json",    |
|                |            |          | "ConvertTo-Csv", "ConvertTo-Html",  |
|                |            |          | "ConvertTo-Xml").                   |
|----------------|------------|----------|-------------------------------------|
| Server         |            | False    | Specifies an active directory       |
|                |            |          | server (domain controller) to bind  |
|                |            |          | to                                  |
'----------------'------------'----------'-------------------------------------'

(Empire: usemodule/powershell/situational_awareness/network/powerview/get_gpo_computer) > set Agent Y4LHEV83
[*] Set Agent to Y4LHEV83
(Empire: usemodule/powershell/situational_awareness/network/powerview/get_gpo_computer) > set GUID value
[*] Set GUID to value
(Empire: usemodule/powershell/situational_awareness/network/powerview/get_gpo_computer) > execute
[*] Tasked Y4LHEV83 to run Task 1
...

Now wait for the results to come.

Authors


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.