Get-SPN - Empire Module


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

Module Overview


Name: Get-SPN
Module: powershell/situational_awareness/network/get_spn
Source code [1]: empire/server/modules/powershell/situational_awareness/network/get_spn.yaml
Source code [2]: empire/server/data/module_source/situational_awareness/network/Get-SPN.ps1
MITRE ATT&CK: T1207
Language: PowerShell
Needs admin: No
OPSEC safe: Yes
Background: Yes

The get_spn module displays Service Principal Names (SPN) for domain accounts based on SPN service name, domain account, or domain group via LDAP queries.

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

Agent
Agent to run module on.

Additional Module Options


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

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.

Search
Search string for group, username, or service name. Wildcards accepted.
Default value: MSSQL*.

Type
'group', 'user', or 'service'.
Default value: service.

Get_spn Example Usage


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

 Author       @_nullbind                                                             
 Background   True                                                                   
 Comments     https://raw.githubusercontent.com/nullbind/Powershellery/master/Stable 
              -ish/Get-SPN/Get-SPN.psm1                                              
 Description  Displays Service Principal Names (SPN) for domain accounts based on    
              SPN service name, domain account, or domain group via LDAP queries.    
 Language     powershell                                                             
 Name         powershell/situational_awareness/network/get_spn                       
 NeedsAdmin   False                                                                  
 OpsecSafe    True                                                                   
 Techniques   http://attack.mitre.org/techniques/T1207                               


,Record Options--,------------,----------,-------------------------------------,
| Name           | Value      | Required | Description                         |
|----------------|------------|----------|-------------------------------------|
| Agent          |            | True     | Agent to run module on.             |
|----------------|------------|----------|-------------------------------------|
| OutputFunction | Out-String | False    | PowerShell's output function to use |
|                |            |          | ("Out-String", "ConvertTo-Json",    |
|                |            |          | "ConvertTo-Csv", "ConvertTo-Html",  |
|                |            |          | "ConvertTo-Xml").                   |
|----------------|------------|----------|-------------------------------------|
| Search         | MSSQL*     | False    | Search string for group, username,  |
|                |            |          | or service name. Wildcards          |
|                |            |          | accepted.                           |
|----------------|------------|----------|-------------------------------------|
| Type           | service    | False    | 'group', 'user', or 'service'       |
'----------------'------------'----------'-------------------------------------'

(Empire: usemodule/powershell/situational_awareness/network/get_spn) > set Agent Y4LHEV83
[*] Set Agent to Y4LHEV83
(Empire: usemodule/powershell/situational_awareness/network/get_spn) > 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.