agents

package
v0.0.0-...-5262aa1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 7, 2021 License: GPL-3.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CD

func CD(agentID uuid.UUID, Args []string) messages.UserMessage

CD is used to change the agent's current working directory

func CMD

func CMD(agentID uuid.UUID, Args []string) messages.UserMessage

CMD is used to send a command to the agent to run a command or execute a program Args[0] = "cmd" Args[1:] = program and arguments to be executed on the host OS of the running agent Used with `cmd` and `shell` commands as well as through "standard" modules

func ClearJobs

func ClearJobs(agentID uuid.UUID) messages.UserMessage

ClearJobs removes any jobs the queue that have been created, but NOT sent to the agent

func Download

func Download(agentID uuid.UUID, Args []string) messages.UserMessage

Download is used to download the file through the corresponding agent from the provided input file path Args[0] = download Args[1] = file path to download

func ExecuteAssembly

func ExecuteAssembly(agentID uuid.UUID, Args []string) messages.UserMessage

ExecuteAssembly calls the donut module to create shellcode from a .NET 4.0 assembly and then uses the CreateProcess module to create a job that executes the shellcode in a remote process

func ExecutePE

func ExecutePE(agentID uuid.UUID, Args []string) messages.UserMessage

ExecutePE calls the donut module to create shellcode from PE and then uses the CreateProcess module to create a job that executes the shellcode in a remote process

func ExecuteShellcode

func ExecuteShellcode(agentID uuid.UUID, Args []string) messages.UserMessage

ExecuteShellcode calls the corresponding shellcode module to create a job that executes the provided shellcode Args[0] = "execute-shellcode Args[1] = Shellcode execution method [self, remote, rtlcreateuserthread, userapc]

func GetAgentInfo

func GetAgentInfo(agentID uuid.UUID) ([][]string, messages.UserMessage)

GetAgentInfo returns rows of data about an Agent's configuration that can be displayed in a table

func GetAgentStatus

func GetAgentStatus(agentID uuid.UUID) (string, messages.UserMessage)

GetAgentStatus determines if the agent is active, delayed, or dead based on its last checkin time

func GetAgents

func GetAgents() (agentList []uuid.UUID)

GetAgents returns a list of existing Agent UUID values

func GetAgentsRows

func GetAgentsRows() (header []string, rows [][]string)

GetAgentsRows returns a row of data for every agent that includes information about it such as the Agent's GUID, platform, user, host, transport, and status

func GetJobsForAgent

func GetJobsForAgent(agentID uuid.UUID) ([][]string, messages.UserMessage)

GetJobsForAgent enumerates all jobs and their status

func InvokeAssembly

func InvokeAssembly(agentID uuid.UUID, Args []string) messages.UserMessage

InvokeAssembly executes an assembly that was previously loaded with the load-assembly command

func Kill

func Kill(agentID uuid.UUID, Args []string) messages.UserMessage

Kill instructs the agent to quit running

func LS

func LS(agentID uuid.UUID, Args []string) messages.UserMessage

LS uses native Go to list the directory

func ListAssemblies

func ListAssemblies(agentID uuid.UUID) messages.UserMessage

ListAssemblies instructs the agent to list all of the .NET assemblies that are currently loaded into the agent's process .NET assemblies are loaded with the LoadAssembly call

func LoadAssembly

func LoadAssembly(agentID uuid.UUID, Args []string) messages.UserMessage

LoadAssembly reads in a .NET assembly and sends it to the agent so it can be loaded into a CLR AppDomain for later execution

func LoadCLR

func LoadCLR(agentID uuid.UUID, Args []string) messages.UserMessage

LoadCLR loads the .NET Common Language Runtime (CLR) into the agent's process .NET assemblies can subsequently be loaded with the LoadAssembly call and executed with the InvokeAssembly call

func MEMFD

func MEMFD(agentID uuid.UUID, Args []string) messages.UserMessage

MEMFD run a linux executable from memory

func NSLOOKUP

func NSLOOKUP(agentID uuid.UUID, Args []string) messages.UserMessage

NSLOOKUP instructs the agent to perform a DNS query on the input

func PWD

func PWD(agentID uuid.UUID, Args []string) messages.UserMessage

PWD is used to print the Agent's current working directory

func Remove

func Remove(agentID uuid.UUID) messages.UserMessage

Remove deletes the agent from the server

func SetJA3

func SetJA3(agentID uuid.UUID, Args []string) messages.UserMessage

SetJA3 is used to change the Agent's JA3 signature

func SetKillDate

func SetKillDate(agentID uuid.UUID, Args []string) messages.UserMessage

SetKillDate configures the date and time that the agent will stop running

func SetMaxRetry

func SetMaxRetry(agentID uuid.UUID, Args []string) messages.UserMessage

SetMaxRetry configures the amount of times an Agent will try to checkin before it quits

func SetPadding

func SetPadding(agentID uuid.UUID, Args []string) messages.UserMessage

SetPadding configures the maxium size for the random amount of padding added to each message

func SetSkew

func SetSkew(agentID uuid.UUID, Args []string) messages.UserMessage

SetSkew configures the amount of skew an Agent uses to randomize checkin times

func SetSleep

func SetSleep(agentID uuid.UUID, Args []string) messages.UserMessage

SetSleep configures the Agent's sleep time between checkins

func SharpGen

func SharpGen(agentID uuid.UUID, Args []string) messages.UserMessage

SharpGen generates a .NET core assembly, converts it to shellcode with go-donut, and executes it in the spawnto process

func Upload

func Upload(agentID uuid.UUID, Args []string) messages.UserMessage

Upload transfers a file from the Merlin Server to the Agent

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL