rpc

package
v1.1.4 Latest Latest
Warning

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

Go to latest
Published: Apr 23, 2024 License: GPL-3.0 Imports: 9 Imported by: 0

README

gRPC Interfaces

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	MessageLevel_name = map[int32]string{
		0: "UNDEFINED",
		1: "INFO",
		2: "NOTE",
		3: "WARN",
		4: "DEBUG",
		5: "SUCCESS",
		6: "PLAIN",
	}
	MessageLevel_value = map[string]int32{
		"UNDEFINED": 0,
		"INFO":      1,
		"NOTE":      2,
		"WARN":      3,
		"DEBUG":     4,
		"SUCCESS":   5,
		"PLAIN":     6,
	}
)

Enum value maps for MessageLevel.

View Source
var File_pkg_rpc_rpc_proto protoreflect.FileDescriptor
View Source
var Merlin_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "rpc.Merlin",
	HandlerType: (*MerlinServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "Reconnect",
			Handler:    _Merlin_Reconnect_Handler,
		},
		{
			MethodName: "Register",
			Handler:    _Merlin_Register_Handler,
		},
		{
			MethodName: "Any",
			Handler:    _Merlin_Any_Handler,
		},
		{
			MethodName: "CD",
			Handler:    _Merlin_CD_Handler,
		},
		{
			MethodName: "CheckIn",
			Handler:    _Merlin_CheckIn_Handler,
		},
		{
			MethodName: "ClearJobs",
			Handler:    _Merlin_ClearJobs_Handler,
		},
		{
			MethodName: "ClearJobsCreated",
			Handler:    _Merlin_ClearJobsCreated_Handler,
		},
		{
			MethodName: "CMD",
			Handler:    _Merlin_CMD_Handler,
		},
		{
			MethodName: "Connect",
			Handler:    _Merlin_Connect_Handler,
		},
		{
			MethodName: "Download",
			Handler:    _Merlin_Download_Handler,
		},
		{
			MethodName: "ENV",
			Handler:    _Merlin_ENV_Handler,
		},
		{
			MethodName: "ExecuteAssembly",
			Handler:    _Merlin_ExecuteAssembly_Handler,
		},
		{
			MethodName: "ExecutePE",
			Handler:    _Merlin_ExecutePE_Handler,
		},
		{
			MethodName: "ExecuteShellcode",
			Handler:    _Merlin_ExecuteShellcode_Handler,
		},
		{
			MethodName: "Exit",
			Handler:    _Merlin_Exit_Handler,
		},
		{
			MethodName: "IFConfig",
			Handler:    _Merlin_IFConfig_Handler,
		},
		{
			MethodName: "InvokeAssembly",
			Handler:    _Merlin_InvokeAssembly_Handler,
		},
		{
			MethodName: "JA3",
			Handler:    _Merlin_JA3_Handler,
		},
		{
			MethodName: "KillDate",
			Handler:    _Merlin_KillDate_Handler,
		},
		{
			MethodName: "KillProcess",
			Handler:    _Merlin_KillProcess_Handler,
		},
		{
			MethodName: "LinkAgent",
			Handler:    _Merlin_LinkAgent_Handler,
		},
		{
			MethodName: "ListAssemblies",
			Handler:    _Merlin_ListAssemblies_Handler,
		},
		{
			MethodName: "Listener",
			Handler:    _Merlin_Listener_Handler,
		},
		{
			MethodName: "LoadAssembly",
			Handler:    _Merlin_LoadAssembly_Handler,
		},
		{
			MethodName: "LoadCLR",
			Handler:    _Merlin_LoadCLR_Handler,
		},
		{
			MethodName: "LS",
			Handler:    _Merlin_LS_Handler,
		},
		{
			MethodName: "MaxRetry",
			Handler:    _Merlin_MaxRetry_Handler,
		},
		{
			MethodName: "Memory",
			Handler:    _Merlin_Memory_Handler,
		},
		{
			MethodName: "MEMFD",
			Handler:    _Merlin_MEMFD_Handler,
		},
		{
			MethodName: "Netstat",
			Handler:    _Merlin_Netstat_Handler,
		},
		{
			MethodName: "Note",
			Handler:    _Merlin_Note_Handler,
		},
		{
			MethodName: "Nslookup",
			Handler:    _Merlin_Nslookup_Handler,
		},
		{
			MethodName: "Padding",
			Handler:    _Merlin_Padding_Handler,
		},
		{
			MethodName: "Parrot",
			Handler:    _Merlin_Parrot_Handler,
		},
		{
			MethodName: "Pipes",
			Handler:    _Merlin_Pipes_Handler,
		},
		{
			MethodName: "PS",
			Handler:    _Merlin_PS_Handler,
		},
		{
			MethodName: "PWD",
			Handler:    _Merlin_PWD_Handler,
		},
		{
			MethodName: "RM",
			Handler:    _Merlin_RM_Handler,
		},
		{
			MethodName: "RunAs",
			Handler:    _Merlin_RunAs_Handler,
		},
		{
			MethodName: "SecureDelete",
			Handler:    _Merlin_SecureDelete_Handler,
		},
		{
			MethodName: "SharpGen",
			Handler:    _Merlin_SharpGen_Handler,
		},
		{
			MethodName: "Skew",
			Handler:    _Merlin_Skew_Handler,
		},
		{
			MethodName: "Sleep",
			Handler:    _Merlin_Sleep_Handler,
		},
		{
			MethodName: "Socks",
			Handler:    _Merlin_Socks_Handler,
		},
		{
			MethodName: "SSH",
			Handler:    _Merlin_SSH_Handler,
		},
		{
			MethodName: "Token",
			Handler:    _Merlin_Token_Handler,
		},
		{
			MethodName: "Touch",
			Handler:    _Merlin_Touch_Handler,
		},
		{
			MethodName: "UnlinkAgent",
			Handler:    _Merlin_UnlinkAgent_Handler,
		},
		{
			MethodName: "Upload",
			Handler:    _Merlin_Upload_Handler,
		},
		{
			MethodName: "Uptime",
			Handler:    _Merlin_Uptime_Handler,
		},
		{
			MethodName: "Groups",
			Handler:    _Merlin_Groups_Handler,
		},
		{
			MethodName: "GroupAdd",
			Handler:    _Merlin_GroupAdd_Handler,
		},
		{
			MethodName: "GroupList",
			Handler:    _Merlin_GroupList_Handler,
		},
		{
			MethodName: "GroupListAll",
			Handler:    _Merlin_GroupListAll_Handler,
		},
		{
			MethodName: "GroupRemove",
			Handler:    _Merlin_GroupRemove_Handler,
		},
		{
			MethodName: "GetAgent",
			Handler:    _Merlin_GetAgent_Handler,
		},
		{
			MethodName: "GetAgents",
			Handler:    _Merlin_GetAgents_Handler,
		},
		{
			MethodName: "GetAgentLinks",
			Handler:    _Merlin_GetAgentLinks_Handler,
		},
		{
			MethodName: "GetAgentStatus",
			Handler:    _Merlin_GetAgentStatus_Handler,
		},
		{
			MethodName: "GetAgentRows",
			Handler:    _Merlin_GetAgentRows_Handler,
		},
		{
			MethodName: "Remove",
			Handler:    _Merlin_Remove_Handler,
		},
		{
			MethodName: "GetAllJobs",
			Handler:    _Merlin_GetAllJobs_Handler,
		},
		{
			MethodName: "GetAllActiveJobs",
			Handler:    _Merlin_GetAllActiveJobs_Handler,
		},
		{
			MethodName: "GetAgentJobs",
			Handler:    _Merlin_GetAgentJobs_Handler,
		},
		{
			MethodName: "GetAgentActiveJobs",
			Handler:    _Merlin_GetAgentActiveJobs_Handler,
		},
		{
			MethodName: "CreateListener",
			Handler:    _Merlin_CreateListener_Handler,
		},
		{
			MethodName: "GetListenerIDs",
			Handler:    _Merlin_GetListenerIDs_Handler,
		},
		{
			MethodName: "GetListeners",
			Handler:    _Merlin_GetListeners_Handler,
		},
		{
			MethodName: "GetListenerOptions",
			Handler:    _Merlin_GetListenerOptions_Handler,
		},
		{
			MethodName: "GetListenerDefaultOptions",
			Handler:    _Merlin_GetListenerDefaultOptions_Handler,
		},
		{
			MethodName: "GetListenerTypes",
			Handler:    _Merlin_GetListenerTypes_Handler,
		},
		{
			MethodName: "GetListenerStatus",
			Handler:    _Merlin_GetListenerStatus_Handler,
		},
		{
			MethodName: "RemoveListener",
			Handler:    _Merlin_RemoveListener_Handler,
		},
		{
			MethodName: "RestartListener",
			Handler:    _Merlin_RestartListener_Handler,
		},
		{
			MethodName: "SetListenerOption",
			Handler:    _Merlin_SetListenerOption_Handler,
		},
		{
			MethodName: "StartListener",
			Handler:    _Merlin_StartListener_Handler,
		},
		{
			MethodName: "StopListener",
			Handler:    _Merlin_StopListener_Handler,
		},
		{
			MethodName: "Servers",
			Handler:    _Merlin_Servers_Handler,
		},
		{
			MethodName: "GetModule",
			Handler:    _Merlin_GetModule_Handler,
		},
		{
			MethodName: "GetModuleList",
			Handler:    _Merlin_GetModuleList_Handler,
		},
		{
			MethodName: "RunModule",
			Handler:    _Merlin_RunModule_Handler,
		},
	},
	Streams: []grpc.StreamDesc{
		{
			StreamName:    "Listen",
			Handler:       _Merlin_Listen_Handler,
			ServerStreams: true,
		},
	},
	Metadata: "pkg/rpc/rpc.proto",
}

Merlin_ServiceDesc is the grpc.ServiceDesc for Merlin service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

Functions

func RegisterMerlinServer

func RegisterMerlinServer(s grpc.ServiceRegistrar, srv MerlinServer)

Types

type AgentCMD

type AgentCMD struct {
	ID        string   `protobuf:"bytes,1,opt,name=ID,proto3" json:"ID,omitempty"`
	Arguments []string `protobuf:"bytes,2,rep,name=arguments,proto3" json:"arguments,omitempty"`
	// contains filtered or unexported fields
}

func (*AgentCMD) Descriptor deprecated

func (*AgentCMD) Descriptor() ([]byte, []int)

Deprecated: Use AgentCMD.ProtoReflect.Descriptor instead.

func (*AgentCMD) GetArguments

func (x *AgentCMD) GetArguments() []string

func (*AgentCMD) GetID

func (x *AgentCMD) GetID() string

func (*AgentCMD) ProtoMessage

func (*AgentCMD) ProtoMessage()

func (*AgentCMD) ProtoReflect

func (x *AgentCMD) ProtoReflect() protoreflect.Message

func (*AgentCMD) Reset

func (x *AgentCMD) Reset()

func (*AgentCMD) String

func (x *AgentCMD) String() string

type AgentInfo

type AgentInfo struct {
	ID             string   `protobuf:"bytes,1,opt,name=ID,proto3" json:"ID,omitempty"`
	Alive          bool     `protobuf:"varint,2,opt,name=Alive,proto3" json:"Alive,omitempty"`
	Authenticated  bool     `protobuf:"varint,3,opt,name=Authenticated,proto3" json:"Authenticated,omitempty"`
	Build          *Build   `protobuf:"bytes,4,opt,name=Build,proto3" json:"Build,omitempty"`
	Host           *Host    `protobuf:"bytes,5,opt,name=Host,proto3" json:"Host,omitempty"`
	Process        *Process `protobuf:"bytes,6,opt,name=Process,proto3" json:"Process,omitempty"`
	Comms          *Comms   `protobuf:"bytes,7,opt,name=Comms,proto3" json:"Comms,omitempty"`
	InitialCheckin string   `protobuf:"bytes,8,opt,name=InitialCheckin,proto3" json:"InitialCheckin,omitempty"`
	LastCheckin    string   `protobuf:"bytes,9,opt,name=LastCheckin,proto3" json:"LastCheckin,omitempty"`
	Links          []string `protobuf:"bytes,10,rep,name=Links,proto3" json:"Links,omitempty"`
	Listener       string   `protobuf:"bytes,11,opt,name=Listener,proto3" json:"Listener,omitempty"`
	Note           string   `protobuf:"bytes,12,opt,name=Note,proto3" json:"Note,omitempty"`
	Status         string   `protobuf:"bytes,13,opt,name=Status,proto3" json:"Status,omitempty"`
	Groups         []string `protobuf:"bytes,14,rep,name=Groups,proto3" json:"Groups,omitempty"`
	// contains filtered or unexported fields
}

func (*AgentInfo) Descriptor deprecated

func (*AgentInfo) Descriptor() ([]byte, []int)

Deprecated: Use AgentInfo.ProtoReflect.Descriptor instead.

func (*AgentInfo) GetAlive

func (x *AgentInfo) GetAlive() bool

func (*AgentInfo) GetAuthenticated

func (x *AgentInfo) GetAuthenticated() bool

func (*AgentInfo) GetBuild

func (x *AgentInfo) GetBuild() *Build

func (*AgentInfo) GetComms

func (x *AgentInfo) GetComms() *Comms

func (*AgentInfo) GetGroups

func (x *AgentInfo) GetGroups() []string

func (*AgentInfo) GetHost

func (x *AgentInfo) GetHost() *Host

func (*AgentInfo) GetID

func (x *AgentInfo) GetID() string

func (*AgentInfo) GetInitialCheckin

func (x *AgentInfo) GetInitialCheckin() string

func (*AgentInfo) GetLastCheckin

func (x *AgentInfo) GetLastCheckin() string
func (x *AgentInfo) GetLinks() []string

func (*AgentInfo) GetListener

func (x *AgentInfo) GetListener() string

func (*AgentInfo) GetNote

func (x *AgentInfo) GetNote() string

func (*AgentInfo) GetProcess

func (x *AgentInfo) GetProcess() *Process

func (*AgentInfo) GetStatus

func (x *AgentInfo) GetStatus() string

func (*AgentInfo) ProtoMessage

func (*AgentInfo) ProtoMessage()

func (*AgentInfo) ProtoReflect

func (x *AgentInfo) ProtoReflect() protoreflect.Message

func (*AgentInfo) Reset

func (x *AgentInfo) Reset()

func (*AgentInfo) String

func (x *AgentInfo) String() string

type Build

type Build struct {
	Build   string `protobuf:"bytes,1,opt,name=Build,proto3" json:"Build,omitempty"`
	Version string `protobuf:"bytes,2,opt,name=Version,proto3" json:"Version,omitempty"`
	// contains filtered or unexported fields
}

func (*Build) Descriptor deprecated

func (*Build) Descriptor() ([]byte, []int)

Deprecated: Use Build.ProtoReflect.Descriptor instead.

func (*Build) GetBuild

func (x *Build) GetBuild() string

func (*Build) GetVersion

func (x *Build) GetVersion() string

func (*Build) ProtoMessage

func (*Build) ProtoMessage()

func (*Build) ProtoReflect

func (x *Build) ProtoReflect() protoreflect.Message

func (*Build) Reset

func (x *Build) Reset()

func (*Build) String

func (x *Build) String() string

type Comms

type Comms struct {
	Failed   int32  `protobuf:"varint,1,opt,name=Failed,proto3" json:"Failed,omitempty"`
	JA3      string `protobuf:"bytes,2,opt,name=JA3,proto3" json:"JA3,omitempty"`
	KillDate int64  `protobuf:"varint,3,opt,name=KillDate,proto3" json:"KillDate,omitempty"`
	Padding  int32  `protobuf:"varint,4,opt,name=Padding,proto3" json:"Padding,omitempty"`
	Protocol string `protobuf:"bytes,5,opt,name=Protocol,proto3" json:"Protocol,omitempty"`
	Retry    int32  `protobuf:"varint,6,opt,name=Retry,proto3" json:"Retry,omitempty"`
	Skew     int64  `protobuf:"varint,7,opt,name=Skew,proto3" json:"Skew,omitempty"`
	Wait     string `protobuf:"bytes,8,opt,name=Wait,proto3" json:"Wait,omitempty"`
	// contains filtered or unexported fields
}

func (*Comms) Descriptor deprecated

func (*Comms) Descriptor() ([]byte, []int)

Deprecated: Use Comms.ProtoReflect.Descriptor instead.

func (*Comms) GetFailed

func (x *Comms) GetFailed() int32

func (*Comms) GetJA3

func (x *Comms) GetJA3() string

func (*Comms) GetKillDate

func (x *Comms) GetKillDate() int64

func (*Comms) GetPadding

func (x *Comms) GetPadding() int32

func (*Comms) GetProtocol

func (x *Comms) GetProtocol() string

func (*Comms) GetRetry

func (x *Comms) GetRetry() int32

func (*Comms) GetSkew

func (x *Comms) GetSkew() int64

func (*Comms) GetWait

func (x *Comms) GetWait() string

func (*Comms) ProtoMessage

func (*Comms) ProtoMessage()

func (*Comms) ProtoReflect

func (x *Comms) ProtoReflect() protoreflect.Message

func (*Comms) Reset

func (x *Comms) Reset()

func (*Comms) String

func (x *Comms) String() string

type Group

type Group struct {
	Group   string `protobuf:"bytes,1,opt,name=Group,proto3" json:"Group,omitempty"`
	AgentID string `protobuf:"bytes,2,opt,name=AgentID,proto3" json:"AgentID,omitempty"`
	// contains filtered or unexported fields
}

func (*Group) Descriptor deprecated

func (*Group) Descriptor() ([]byte, []int)

Deprecated: Use Group.ProtoReflect.Descriptor instead.

func (*Group) GetAgentID

func (x *Group) GetAgentID() string

func (*Group) GetGroup

func (x *Group) GetGroup() string

func (*Group) ProtoMessage

func (*Group) ProtoMessage()

func (*Group) ProtoReflect

func (x *Group) ProtoReflect() protoreflect.Message

func (*Group) Reset

func (x *Group) Reset()

func (*Group) String

func (x *Group) String() string

type GroupMember

type GroupMember struct {
	Group   string   `protobuf:"bytes,1,opt,name=Group,proto3" json:"Group,omitempty"`
	Members []string `protobuf:"bytes,2,rep,name=Members,proto3" json:"Members,omitempty"`
	// contains filtered or unexported fields
}

func (*GroupMember) Descriptor deprecated

func (*GroupMember) Descriptor() ([]byte, []int)

Deprecated: Use GroupMember.ProtoReflect.Descriptor instead.

func (*GroupMember) GetGroup

func (x *GroupMember) GetGroup() string

func (*GroupMember) GetMembers

func (x *GroupMember) GetMembers() []string

func (*GroupMember) ProtoMessage

func (*GroupMember) ProtoMessage()

func (*GroupMember) ProtoReflect

func (x *GroupMember) ProtoReflect() protoreflect.Message

func (*GroupMember) Reset

func (x *GroupMember) Reset()

func (*GroupMember) String

func (x *GroupMember) String() string

type GroupMembers

type GroupMembers struct {
	Members []*GroupMember `protobuf:"bytes,1,rep,name=members,proto3" json:"members,omitempty"`
	// contains filtered or unexported fields
}

func (*GroupMembers) Descriptor deprecated

func (*GroupMembers) Descriptor() ([]byte, []int)

Deprecated: Use GroupMembers.ProtoReflect.Descriptor instead.

func (*GroupMembers) GetMembers

func (x *GroupMembers) GetMembers() []*GroupMember

func (*GroupMembers) ProtoMessage

func (*GroupMembers) ProtoMessage()

func (*GroupMembers) ProtoReflect

func (x *GroupMembers) ProtoReflect() protoreflect.Message

func (*GroupMembers) Reset

func (x *GroupMembers) Reset()

func (*GroupMembers) String

func (x *GroupMembers) String() string

type Host

type Host struct {
	Architecture string   `protobuf:"bytes,1,opt,name=Architecture,proto3" json:"Architecture,omitempty"`
	Name         string   `protobuf:"bytes,2,opt,name=Name,proto3" json:"Name,omitempty"`
	Platform     string   `protobuf:"bytes,3,opt,name=Platform,proto3" json:"Platform,omitempty"`
	IPs          []string `protobuf:"bytes,4,rep,name=IPs,proto3" json:"IPs,omitempty"`
	// contains filtered or unexported fields
}

func (*Host) Descriptor deprecated

func (*Host) Descriptor() ([]byte, []int)

Deprecated: Use Host.ProtoReflect.Descriptor instead.

func (*Host) GetArchitecture

func (x *Host) GetArchitecture() string

func (*Host) GetIPs

func (x *Host) GetIPs() []string

func (*Host) GetName

func (x *Host) GetName() string

func (*Host) GetPlatform

func (x *Host) GetPlatform() string

func (*Host) ProtoMessage

func (*Host) ProtoMessage()

func (*Host) ProtoReflect

func (x *Host) ProtoReflect() protoreflect.Message

func (*Host) Reset

func (x *Host) Reset()

func (*Host) String

func (x *Host) String() string

type ID

type ID struct {
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// contains filtered or unexported fields
}

func (*ID) Descriptor deprecated

func (*ID) Descriptor() ([]byte, []int)

Deprecated: Use ID.ProtoReflect.Descriptor instead.

func (*ID) GetId

func (x *ID) GetId() string

func (*ID) ProtoMessage

func (*ID) ProtoMessage()

func (*ID) ProtoReflect

func (x *ID) ProtoReflect() protoreflect.Message

func (*ID) Reset

func (x *ID) Reset()

func (*ID) String

func (x *ID) String() string

type Job

type Job struct {
	ID        string `protobuf:"bytes,1,opt,name=ID,proto3" json:"ID,omitempty"`
	AgentID   string `protobuf:"bytes,2,opt,name=AgentID,proto3" json:"AgentID,omitempty"`
	Command   string `protobuf:"bytes,3,opt,name=Command,proto3" json:"Command,omitempty"`
	Created   string `protobuf:"bytes,4,opt,name=Created,proto3" json:"Created,omitempty"`
	Completed string `protobuf:"bytes,5,opt,name=Completed,proto3" json:"Completed,omitempty"`
	Status    string `protobuf:"bytes,6,opt,name=Status,proto3" json:"Status,omitempty"`
	Sent      string `protobuf:"bytes,7,opt,name=Sent,proto3" json:"Sent,omitempty"`
	// contains filtered or unexported fields
}

func (*Job) Descriptor deprecated

func (*Job) Descriptor() ([]byte, []int)

Deprecated: Use Job.ProtoReflect.Descriptor instead.

func (*Job) GetAgentID

func (x *Job) GetAgentID() string

func (*Job) GetCommand

func (x *Job) GetCommand() string

func (*Job) GetCompleted

func (x *Job) GetCompleted() string

func (*Job) GetCreated

func (x *Job) GetCreated() string

func (*Job) GetID

func (x *Job) GetID() string

func (*Job) GetSent

func (x *Job) GetSent() string

func (*Job) GetStatus

func (x *Job) GetStatus() string

func (*Job) ProtoMessage

func (*Job) ProtoMessage()

func (*Job) ProtoReflect

func (x *Job) ProtoReflect() protoreflect.Message

func (*Job) Reset

func (x *Job) Reset()

func (*Job) String

func (x *Job) String() string

type Jobs

type Jobs struct {
	Jobs []*Job `protobuf:"bytes,1,rep,name=jobs,proto3" json:"jobs,omitempty"`
	// contains filtered or unexported fields
}

func (*Jobs) Descriptor deprecated

func (*Jobs) Descriptor() ([]byte, []int)

Deprecated: Use Jobs.ProtoReflect.Descriptor instead.

func (*Jobs) GetJobs

func (x *Jobs) GetJobs() []*Job

func (*Jobs) ProtoMessage

func (*Jobs) ProtoMessage()

func (*Jobs) ProtoReflect

func (x *Jobs) ProtoReflect() protoreflect.Message

func (*Jobs) Reset

func (x *Jobs) Reset()

func (*Jobs) String

func (x *Jobs) String() string

type Login added in v1.1.0

type Login struct {
	Username string `protobuf:"bytes,1,opt,name=username,proto3" json:"username,omitempty"`
	Password string `protobuf:"bytes,2,opt,name=password,proto3" json:"password,omitempty"`
	// contains filtered or unexported fields
}

func (*Login) Descriptor deprecated added in v1.1.0

func (*Login) Descriptor() ([]byte, []int)

Deprecated: Use Login.ProtoReflect.Descriptor instead.

func (*Login) GetPassword added in v1.1.0

func (x *Login) GetPassword() string

func (*Login) GetUsername added in v1.1.0

func (x *Login) GetUsername() string

func (*Login) ProtoMessage added in v1.1.0

func (*Login) ProtoMessage()

func (*Login) ProtoReflect added in v1.1.0

func (x *Login) ProtoReflect() protoreflect.Message

func (*Login) Reset added in v1.1.0

func (x *Login) Reset()

func (*Login) String added in v1.1.0

func (x *Login) String() string

type MerlinClient

type MerlinClient interface {
	Reconnect(ctx context.Context, in *ID, opts ...grpc.CallOption) (*ID, error)
	Register(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*ID, error)
	Listen(ctx context.Context, in *ID, opts ...grpc.CallOption) (Merlin_ListenClient, error)
	// Agent Commands
	Any(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	CD(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	CheckIn(ctx context.Context, in *ID, opts ...grpc.CallOption) (*Message, error)
	ClearJobs(ctx context.Context, in *ID, opts ...grpc.CallOption) (*Message, error)
	ClearJobsCreated(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*Message, error)
	CMD(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	Connect(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	Download(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	ENV(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	ExecuteAssembly(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	ExecutePE(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	ExecuteShellcode(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	Exit(ctx context.Context, in *ID, opts ...grpc.CallOption) (*Message, error)
	IFConfig(ctx context.Context, in *ID, opts ...grpc.CallOption) (*Message, error)
	InvokeAssembly(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	JA3(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	KillDate(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	KillProcess(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	LinkAgent(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	ListAssemblies(ctx context.Context, in *ID, opts ...grpc.CallOption) (*Message, error)
	Listener(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	LoadAssembly(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	LoadCLR(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	LS(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	MaxRetry(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	Memory(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	MEMFD(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	Netstat(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	Note(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	Nslookup(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	Padding(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	Parrot(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	Pipes(ctx context.Context, in *ID, opts ...grpc.CallOption) (*Message, error)
	PS(ctx context.Context, in *ID, opts ...grpc.CallOption) (*Message, error)
	PWD(ctx context.Context, in *ID, opts ...grpc.CallOption) (*Message, error)
	RM(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	RunAs(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	SecureDelete(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	SharpGen(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	Skew(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	Sleep(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	Socks(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	SSH(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	Token(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	Touch(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	UnlinkAgent(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	Upload(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	Uptime(ctx context.Context, in *ID, opts ...grpc.CallOption) (*Message, error)
	// Agent Service
	Groups(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*Slice, error)
	GroupAdd(ctx context.Context, in *Group, opts ...grpc.CallOption) (*Message, error)
	GroupList(ctx context.Context, in *ID, opts ...grpc.CallOption) (*Slice, error)
	GroupListAll(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*GroupMembers, error)
	GroupRemove(ctx context.Context, in *Group, opts ...grpc.CallOption) (*Message, error)
	GetAgent(ctx context.Context, in *ID, opts ...grpc.CallOption) (*AgentInfo, error)
	GetAgents(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*Slice, error)
	GetAgentLinks(ctx context.Context, in *ID, opts ...grpc.CallOption) (*Slice, error)
	GetAgentStatus(ctx context.Context, in *ID, opts ...grpc.CallOption) (*Message, error)
	GetAgentRows(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*TableData, error)
	Remove(ctx context.Context, in *ID, opts ...grpc.CallOption) (*Message, error)
	// Job Service
	GetAllJobs(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*Jobs, error)
	GetAllActiveJobs(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*Jobs, error)
	GetAgentJobs(ctx context.Context, in *ID, opts ...grpc.CallOption) (*Jobs, error)
	GetAgentActiveJobs(ctx context.Context, in *ID, opts ...grpc.CallOption) (*Jobs, error)
	// Listener
	CreateListener(ctx context.Context, in *Options, opts ...grpc.CallOption) (*Message, error)
	GetListenerIDs(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*Slice, error)
	GetListeners(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*TableData, error)
	GetListenerOptions(ctx context.Context, in *ID, opts ...grpc.CallOption) (*Options, error)
	GetListenerDefaultOptions(ctx context.Context, in *String, opts ...grpc.CallOption) (*Options, error)
	GetListenerTypes(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*Slice, error)
	GetListenerStatus(ctx context.Context, in *ID, opts ...grpc.CallOption) (*Message, error)
	RemoveListener(ctx context.Context, in *ID, opts ...grpc.CallOption) (*Message, error)
	RestartListener(ctx context.Context, in *ID, opts ...grpc.CallOption) (*Message, error)
	SetListenerOption(ctx context.Context, in *AgentCMD, opts ...grpc.CallOption) (*Message, error)
	StartListener(ctx context.Context, in *ID, opts ...grpc.CallOption) (*Message, error)
	StopListener(ctx context.Context, in *ID, opts ...grpc.CallOption) (*Message, error)
	Servers(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*Slice, error)
	GetModule(ctx context.Context, in *String, opts ...grpc.CallOption) (*Module, error)
	GetModuleList(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*Slice, error)
	RunModule(ctx context.Context, in *ModuleRun, opts ...grpc.CallOption) (*Messages, error)
}

MerlinClient is the client API for Merlin service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

func NewMerlinClient

func NewMerlinClient(cc grpc.ClientConnInterface) MerlinClient

type MerlinServer

type MerlinServer interface {
	Reconnect(context.Context, *ID) (*ID, error)
	Register(context.Context, *emptypb.Empty) (*ID, error)
	Listen(*ID, Merlin_ListenServer) error
	// Agent Commands
	Any(context.Context, *AgentCMD) (*Message, error)
	CD(context.Context, *AgentCMD) (*Message, error)
	CheckIn(context.Context, *ID) (*Message, error)
	ClearJobs(context.Context, *ID) (*Message, error)
	ClearJobsCreated(context.Context, *emptypb.Empty) (*Message, error)
	CMD(context.Context, *AgentCMD) (*Message, error)
	Connect(context.Context, *AgentCMD) (*Message, error)
	Download(context.Context, *AgentCMD) (*Message, error)
	ENV(context.Context, *AgentCMD) (*Message, error)
	ExecuteAssembly(context.Context, *AgentCMD) (*Message, error)
	ExecutePE(context.Context, *AgentCMD) (*Message, error)
	ExecuteShellcode(context.Context, *AgentCMD) (*Message, error)
	Exit(context.Context, *ID) (*Message, error)
	IFConfig(context.Context, *ID) (*Message, error)
	InvokeAssembly(context.Context, *AgentCMD) (*Message, error)
	JA3(context.Context, *AgentCMD) (*Message, error)
	KillDate(context.Context, *AgentCMD) (*Message, error)
	KillProcess(context.Context, *AgentCMD) (*Message, error)
	LinkAgent(context.Context, *AgentCMD) (*Message, error)
	ListAssemblies(context.Context, *ID) (*Message, error)
	Listener(context.Context, *AgentCMD) (*Message, error)
	LoadAssembly(context.Context, *AgentCMD) (*Message, error)
	LoadCLR(context.Context, *AgentCMD) (*Message, error)
	LS(context.Context, *AgentCMD) (*Message, error)
	MaxRetry(context.Context, *AgentCMD) (*Message, error)
	Memory(context.Context, *AgentCMD) (*Message, error)
	MEMFD(context.Context, *AgentCMD) (*Message, error)
	Netstat(context.Context, *AgentCMD) (*Message, error)
	Note(context.Context, *AgentCMD) (*Message, error)
	Nslookup(context.Context, *AgentCMD) (*Message, error)
	Padding(context.Context, *AgentCMD) (*Message, error)
	Parrot(context.Context, *AgentCMD) (*Message, error)
	Pipes(context.Context, *ID) (*Message, error)
	PS(context.Context, *ID) (*Message, error)
	PWD(context.Context, *ID) (*Message, error)
	RM(context.Context, *AgentCMD) (*Message, error)
	RunAs(context.Context, *AgentCMD) (*Message, error)
	SecureDelete(context.Context, *AgentCMD) (*Message, error)
	SharpGen(context.Context, *AgentCMD) (*Message, error)
	Skew(context.Context, *AgentCMD) (*Message, error)
	Sleep(context.Context, *AgentCMD) (*Message, error)
	Socks(context.Context, *AgentCMD) (*Message, error)
	SSH(context.Context, *AgentCMD) (*Message, error)
	Token(context.Context, *AgentCMD) (*Message, error)
	Touch(context.Context, *AgentCMD) (*Message, error)
	UnlinkAgent(context.Context, *AgentCMD) (*Message, error)
	Upload(context.Context, *AgentCMD) (*Message, error)
	Uptime(context.Context, *ID) (*Message, error)
	// Agent Service
	Groups(context.Context, *emptypb.Empty) (*Slice, error)
	GroupAdd(context.Context, *Group) (*Message, error)
	GroupList(context.Context, *ID) (*Slice, error)
	GroupListAll(context.Context, *emptypb.Empty) (*GroupMembers, error)
	GroupRemove(context.Context, *Group) (*Message, error)
	GetAgent(context.Context, *ID) (*AgentInfo, error)
	GetAgents(context.Context, *emptypb.Empty) (*Slice, error)
	GetAgentLinks(context.Context, *ID) (*Slice, error)
	GetAgentStatus(context.Context, *ID) (*Message, error)
	GetAgentRows(context.Context, *emptypb.Empty) (*TableData, error)
	Remove(context.Context, *ID) (*Message, error)
	// Job Service
	GetAllJobs(context.Context, *emptypb.Empty) (*Jobs, error)
	GetAllActiveJobs(context.Context, *emptypb.Empty) (*Jobs, error)
	GetAgentJobs(context.Context, *ID) (*Jobs, error)
	GetAgentActiveJobs(context.Context, *ID) (*Jobs, error)
	// Listener
	CreateListener(context.Context, *Options) (*Message, error)
	GetListenerIDs(context.Context, *emptypb.Empty) (*Slice, error)
	GetListeners(context.Context, *emptypb.Empty) (*TableData, error)
	GetListenerOptions(context.Context, *ID) (*Options, error)
	GetListenerDefaultOptions(context.Context, *String) (*Options, error)
	GetListenerTypes(context.Context, *emptypb.Empty) (*Slice, error)
	GetListenerStatus(context.Context, *ID) (*Message, error)
	RemoveListener(context.Context, *ID) (*Message, error)
	RestartListener(context.Context, *ID) (*Message, error)
	SetListenerOption(context.Context, *AgentCMD) (*Message, error)
	StartListener(context.Context, *ID) (*Message, error)
	StopListener(context.Context, *ID) (*Message, error)
	Servers(context.Context, *emptypb.Empty) (*Slice, error)
	GetModule(context.Context, *String) (*Module, error)
	GetModuleList(context.Context, *emptypb.Empty) (*Slice, error)
	RunModule(context.Context, *ModuleRun) (*Messages, error)
	// contains filtered or unexported methods
}

MerlinServer is the server API for Merlin service. All implementations must embed UnimplementedMerlinServer for forward compatibility

type Merlin_ListenClient

type Merlin_ListenClient interface {
	Recv() (*Message, error)
	grpc.ClientStream
}

type Merlin_ListenServer

type Merlin_ListenServer interface {
	Send(*Message) error
	grpc.ServerStream
}

type Message

type Message struct {
	Level     MessageLevel `protobuf:"varint,1,opt,name=level,proto3,enum=rpc.MessageLevel" json:"level,omitempty"`
	Message   string       `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	Timestamp string       `protobuf:"bytes,3,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	Error     bool         `protobuf:"varint,4,opt,name=error,proto3" json:"error,omitempty"`
	// contains filtered or unexported fields
}

func (*Message) Descriptor deprecated

func (*Message) Descriptor() ([]byte, []int)

Deprecated: Use Message.ProtoReflect.Descriptor instead.

func (*Message) GetError

func (x *Message) GetError() bool

func (*Message) GetLevel

func (x *Message) GetLevel() MessageLevel

func (*Message) GetMessage

func (x *Message) GetMessage() string

func (*Message) GetTimestamp

func (x *Message) GetTimestamp() string

func (*Message) ProtoMessage

func (*Message) ProtoMessage()

func (*Message) ProtoReflect

func (x *Message) ProtoReflect() protoreflect.Message

func (*Message) Reset

func (x *Message) Reset()

func (*Message) String

func (x *Message) String() string

type MessageLevel

type MessageLevel int32
const (
	MessageLevel_UNDEFINED MessageLevel = 0
	MessageLevel_INFO      MessageLevel = 1
	MessageLevel_NOTE      MessageLevel = 2
	MessageLevel_WARN      MessageLevel = 3
	MessageLevel_DEBUG     MessageLevel = 4
	MessageLevel_SUCCESS   MessageLevel = 5
	MessageLevel_PLAIN     MessageLevel = 6
)

func (MessageLevel) Descriptor

func (MessageLevel) Enum

func (x MessageLevel) Enum() *MessageLevel

func (MessageLevel) EnumDescriptor deprecated

func (MessageLevel) EnumDescriptor() ([]byte, []int)

Deprecated: Use MessageLevel.Descriptor instead.

func (MessageLevel) Number

func (MessageLevel) String

func (x MessageLevel) String() string

func (MessageLevel) Type

type Messages

type Messages struct {
	Messages []*Message `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"`
	// contains filtered or unexported fields
}

func (*Messages) Descriptor deprecated

func (*Messages) Descriptor() ([]byte, []int)

Deprecated: Use Messages.ProtoReflect.Descriptor instead.

func (*Messages) GetMessages

func (x *Messages) GetMessages() []*Message

func (*Messages) ProtoMessage

func (*Messages) ProtoMessage()

func (*Messages) ProtoReflect

func (x *Messages) ProtoReflect() protoreflect.Message

func (*Messages) Reset

func (x *Messages) Reset()

func (*Messages) String

func (x *Messages) String() string

type Module

type Module struct {
	ID           string          `protobuf:"bytes,1,opt,name=ID,proto3" json:"ID,omitempty"`
	Agent        string          `protobuf:"bytes,2,opt,name=Agent,proto3" json:"Agent,omitempty"`
	Name         string          `protobuf:"bytes,3,opt,name=Name,proto3" json:"Name,omitempty"`
	Extended     bool            `protobuf:"varint,4,opt,name=Extended,proto3" json:"Extended,omitempty"`
	Author       []string        `protobuf:"bytes,5,rep,name=Author,proto3" json:"Author,omitempty"`
	Credits      []string        `protobuf:"bytes,6,rep,name=Credits,proto3" json:"Credits,omitempty"`
	Path         []string        `protobuf:"bytes,7,rep,name=Path,proto3" json:"Path,omitempty"`
	Platform     string          `protobuf:"bytes,8,opt,name=Platform,proto3" json:"Platform,omitempty"`
	Arch         string          `protobuf:"bytes,9,opt,name=Arch,proto3" json:"Arch,omitempty"`
	Lang         string          `protobuf:"bytes,10,opt,name=Lang,proto3" json:"Lang,omitempty"`
	Priv         bool            `protobuf:"varint,11,opt,name=Priv,proto3" json:"Priv,omitempty"`
	Description  string          `protobuf:"bytes,12,opt,name=Description,proto3" json:"Description,omitempty"`
	Notes        string          `protobuf:"bytes,13,opt,name=Notes,proto3" json:"Notes,omitempty"`
	Commands     []string        `protobuf:"bytes,14,rep,name=Commands,proto3" json:"Commands,omitempty"`
	SourceRemote string          `protobuf:"bytes,15,opt,name=SourceRemote,proto3" json:"SourceRemote,omitempty"`
	SourceLocal  []string        `protobuf:"bytes,16,rep,name=SourceLocal,proto3" json:"SourceLocal,omitempty"`
	Options      []*ModuleOption `protobuf:"bytes,17,rep,name=Options,proto3" json:"Options,omitempty"`
	// contains filtered or unexported fields
}

func (*Module) Descriptor deprecated

func (*Module) Descriptor() ([]byte, []int)

Deprecated: Use Module.ProtoReflect.Descriptor instead.

func (*Module) GetAgent

func (x *Module) GetAgent() string

func (*Module) GetArch

func (x *Module) GetArch() string

func (*Module) GetAuthor

func (x *Module) GetAuthor() []string

func (*Module) GetCommands

func (x *Module) GetCommands() []string

func (*Module) GetCredits

func (x *Module) GetCredits() []string

func (*Module) GetDescription

func (x *Module) GetDescription() string

func (*Module) GetExtended

func (x *Module) GetExtended() bool

func (*Module) GetID

func (x *Module) GetID() string

func (*Module) GetLang

func (x *Module) GetLang() string

func (*Module) GetName

func (x *Module) GetName() string

func (*Module) GetNotes

func (x *Module) GetNotes() string

func (*Module) GetOptions

func (x *Module) GetOptions() []*ModuleOption

func (*Module) GetPath

func (x *Module) GetPath() []string

func (*Module) GetPlatform

func (x *Module) GetPlatform() string

func (*Module) GetPriv

func (x *Module) GetPriv() bool

func (*Module) GetSourceLocal

func (x *Module) GetSourceLocal() []string

func (*Module) GetSourceRemote

func (x *Module) GetSourceRemote() string

func (*Module) ProtoMessage

func (*Module) ProtoMessage()

func (*Module) ProtoReflect

func (x *Module) ProtoReflect() protoreflect.Message

func (*Module) Reset

func (x *Module) Reset()

func (*Module) String

func (x *Module) String() string

type ModuleOption

type ModuleOption struct {
	Name        string `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty"`
	Value       string `protobuf:"bytes,2,opt,name=Value,proto3" json:"Value,omitempty"`
	Required    bool   `protobuf:"varint,3,opt,name=Required,proto3" json:"Required,omitempty"`
	Flag        string `protobuf:"bytes,4,opt,name=Flag,proto3" json:"Flag,omitempty"`
	Description string `protobuf:"bytes,5,opt,name=Description,proto3" json:"Description,omitempty"`
	// contains filtered or unexported fields
}

func (*ModuleOption) Descriptor deprecated

func (*ModuleOption) Descriptor() ([]byte, []int)

Deprecated: Use ModuleOption.ProtoReflect.Descriptor instead.

func (*ModuleOption) GetDescription

func (x *ModuleOption) GetDescription() string

func (*ModuleOption) GetFlag

func (x *ModuleOption) GetFlag() string

func (*ModuleOption) GetName

func (x *ModuleOption) GetName() string

func (*ModuleOption) GetRequired

func (x *ModuleOption) GetRequired() bool

func (*ModuleOption) GetValue

func (x *ModuleOption) GetValue() string

func (*ModuleOption) ProtoMessage

func (*ModuleOption) ProtoMessage()

func (*ModuleOption) ProtoReflect

func (x *ModuleOption) ProtoReflect() protoreflect.Message

func (*ModuleOption) Reset

func (x *ModuleOption) Reset()

func (*ModuleOption) String

func (x *ModuleOption) String() string

type ModuleRun

type ModuleRun struct {
	Name     string          `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty"`
	Agent    string          `protobuf:"bytes,2,opt,name=Agent,proto3" json:"Agent,omitempty"`
	Platform string          `protobuf:"bytes,3,opt,name=Platform,proto3" json:"Platform,omitempty"`
	Options  []*ModuleOption `protobuf:"bytes,4,rep,name=Options,proto3" json:"Options,omitempty"`
	Extended bool            `protobuf:"varint,5,opt,name=Extended,proto3" json:"Extended,omitempty"`
	Commands []string        `protobuf:"bytes,6,rep,name=Commands,proto3" json:"Commands,omitempty"`
	// contains filtered or unexported fields
}

func (*ModuleRun) Descriptor deprecated

func (*ModuleRun) Descriptor() ([]byte, []int)

Deprecated: Use ModuleRun.ProtoReflect.Descriptor instead.

func (*ModuleRun) GetAgent

func (x *ModuleRun) GetAgent() string

func (*ModuleRun) GetCommands

func (x *ModuleRun) GetCommands() []string

func (*ModuleRun) GetExtended

func (x *ModuleRun) GetExtended() bool

func (*ModuleRun) GetName

func (x *ModuleRun) GetName() string

func (*ModuleRun) GetOptions

func (x *ModuleRun) GetOptions() []*ModuleOption

func (*ModuleRun) GetPlatform

func (x *ModuleRun) GetPlatform() string

func (*ModuleRun) ProtoMessage

func (*ModuleRun) ProtoMessage()

func (*ModuleRun) ProtoReflect

func (x *ModuleRun) ProtoReflect() protoreflect.Message

func (*ModuleRun) Reset

func (x *ModuleRun) Reset()

func (*ModuleRun) String

func (x *ModuleRun) String() string

type Options

type Options struct {
	Options map[string]string `` /* 155-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*Options) Descriptor deprecated

func (*Options) Descriptor() ([]byte, []int)

Deprecated: Use Options.ProtoReflect.Descriptor instead.

func (*Options) GetOptions

func (x *Options) GetOptions() map[string]string

func (*Options) ProtoMessage

func (*Options) ProtoMessage()

func (*Options) ProtoReflect

func (x *Options) ProtoReflect() protoreflect.Message

func (*Options) Reset

func (x *Options) Reset()

func (*Options) String

func (x *Options) String() string

type Process

type Process struct {
	ID             int32  `protobuf:"varint,1,opt,name=ID,proto3" json:"ID,omitempty"`
	IntegrityLevel int32  `protobuf:"varint,2,opt,name=IntegrityLevel,proto3" json:"IntegrityLevel,omitempty"`
	Name           string `protobuf:"bytes,3,opt,name=Name,proto3" json:"Name,omitempty"`
	UserGUID       string `protobuf:"bytes,4,opt,name=UserGUID,proto3" json:"UserGUID,omitempty"`
	Username       string `protobuf:"bytes,5,opt,name=Username,proto3" json:"Username,omitempty"`
	Domain         string `protobuf:"bytes,6,opt,name=Domain,proto3" json:"Domain,omitempty"`
	// contains filtered or unexported fields
}

func (*Process) Descriptor deprecated

func (*Process) Descriptor() ([]byte, []int)

Deprecated: Use Process.ProtoReflect.Descriptor instead.

func (*Process) GetDomain

func (x *Process) GetDomain() string

func (*Process) GetID

func (x *Process) GetID() int32

func (*Process) GetIntegrityLevel

func (x *Process) GetIntegrityLevel() int32

func (*Process) GetName

func (x *Process) GetName() string

func (*Process) GetUserGUID

func (x *Process) GetUserGUID() string

func (*Process) GetUsername

func (x *Process) GetUsername() string

func (*Process) ProtoMessage

func (*Process) ProtoMessage()

func (*Process) ProtoReflect

func (x *Process) ProtoReflect() protoreflect.Message

func (*Process) Reset

func (x *Process) Reset()

func (*Process) String

func (x *Process) String() string

type Slice

type Slice struct {
	Data []string `protobuf:"bytes,1,rep,name=data,proto3" json:"data,omitempty"`
	// contains filtered or unexported fields
}

func (*Slice) Descriptor deprecated

func (*Slice) Descriptor() ([]byte, []int)

Deprecated: Use Slice.ProtoReflect.Descriptor instead.

func (*Slice) GetData

func (x *Slice) GetData() []string

func (*Slice) ProtoMessage

func (*Slice) ProtoMessage()

func (*Slice) ProtoReflect

func (x *Slice) ProtoReflect() protoreflect.Message

func (*Slice) Reset

func (x *Slice) Reset()

func (*Slice) String

func (x *Slice) String() string

type String

type String struct {
	Data string `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
	// contains filtered or unexported fields
}

func (*String) Descriptor deprecated

func (*String) Descriptor() ([]byte, []int)

Deprecated: Use String.ProtoReflect.Descriptor instead.

func (*String) GetData

func (x *String) GetData() string

func (*String) ProtoMessage

func (*String) ProtoMessage()

func (*String) ProtoReflect

func (x *String) ProtoReflect() protoreflect.Message

func (*String) Reset

func (x *String) Reset()

func (*String) String

func (x *String) String() string

type TableData

type TableData struct {
	Header []string `protobuf:"bytes,1,rep,name=header,proto3" json:"header,omitempty"`
	// A list of lists of strings
	Rows []*TableRows `protobuf:"bytes,2,rep,name=rows,proto3" json:"rows,omitempty"`
	// contains filtered or unexported fields
}

func (*TableData) Descriptor deprecated

func (*TableData) Descriptor() ([]byte, []int)

Deprecated: Use TableData.ProtoReflect.Descriptor instead.

func (*TableData) GetHeader

func (x *TableData) GetHeader() []string

func (*TableData) GetRows

func (x *TableData) GetRows() []*TableRows

func (*TableData) ProtoMessage

func (*TableData) ProtoMessage()

func (*TableData) ProtoReflect

func (x *TableData) ProtoReflect() protoreflect.Message

func (*TableData) Reset

func (x *TableData) Reset()

func (*TableData) String

func (x *TableData) String() string

type TableRows

type TableRows struct {

	// A list/slice of strings
	Row []string `protobuf:"bytes,1,rep,name=row,proto3" json:"row,omitempty"`
	// contains filtered or unexported fields
}

func (*TableRows) Descriptor deprecated

func (*TableRows) Descriptor() ([]byte, []int)

Deprecated: Use TableRows.ProtoReflect.Descriptor instead.

func (*TableRows) GetRow

func (x *TableRows) GetRow() []string

func (*TableRows) ProtoMessage

func (*TableRows) ProtoMessage()

func (*TableRows) ProtoReflect

func (x *TableRows) ProtoReflect() protoreflect.Message

func (*TableRows) Reset

func (x *TableRows) Reset()

func (*TableRows) String

func (x *TableRows) String() string

type UnimplementedMerlinServer

type UnimplementedMerlinServer struct {
}

UnimplementedMerlinServer must be embedded to have forward compatible implementations.

func (UnimplementedMerlinServer) Any

func (UnimplementedMerlinServer) CD

func (UnimplementedMerlinServer) CMD

func (UnimplementedMerlinServer) CheckIn

func (UnimplementedMerlinServer) ClearJobs

func (UnimplementedMerlinServer) ClearJobsCreated

func (UnimplementedMerlinServer) Connect

func (UnimplementedMerlinServer) CreateListener

func (UnimplementedMerlinServer) Download

func (UnimplementedMerlinServer) ENV

func (UnimplementedMerlinServer) ExecuteAssembly

func (UnimplementedMerlinServer) ExecutePE

func (UnimplementedMerlinServer) ExecuteShellcode

func (UnimplementedMerlinServer) Exit

func (UnimplementedMerlinServer) GetAgent

func (UnimplementedMerlinServer) GetAgentActiveJobs

func (UnimplementedMerlinServer) GetAgentActiveJobs(context.Context, *ID) (*Jobs, error)

func (UnimplementedMerlinServer) GetAgentJobs

func (UnimplementedMerlinServer) GetAgentJobs(context.Context, *ID) (*Jobs, error)
func (UnimplementedMerlinServer) GetAgentLinks(context.Context, *ID) (*Slice, error)

func (UnimplementedMerlinServer) GetAgentRows

func (UnimplementedMerlinServer) GetAgentStatus

func (UnimplementedMerlinServer) GetAgentStatus(context.Context, *ID) (*Message, error)

func (UnimplementedMerlinServer) GetAgents

func (UnimplementedMerlinServer) GetAllActiveJobs

func (UnimplementedMerlinServer) GetAllJobs

func (UnimplementedMerlinServer) GetListenerDefaultOptions

func (UnimplementedMerlinServer) GetListenerDefaultOptions(context.Context, *String) (*Options, error)

func (UnimplementedMerlinServer) GetListenerIDs

func (UnimplementedMerlinServer) GetListenerOptions

func (UnimplementedMerlinServer) GetListenerOptions(context.Context, *ID) (*Options, error)

func (UnimplementedMerlinServer) GetListenerStatus

func (UnimplementedMerlinServer) GetListenerStatus(context.Context, *ID) (*Message, error)

func (UnimplementedMerlinServer) GetListenerTypes

func (UnimplementedMerlinServer) GetListeners

func (UnimplementedMerlinServer) GetModule

func (UnimplementedMerlinServer) GetModuleList

func (UnimplementedMerlinServer) GroupAdd

func (UnimplementedMerlinServer) GroupList

func (UnimplementedMerlinServer) GroupListAll

func (UnimplementedMerlinServer) GroupRemove

func (UnimplementedMerlinServer) Groups

func (UnimplementedMerlinServer) IFConfig

func (UnimplementedMerlinServer) InvokeAssembly

func (UnimplementedMerlinServer) JA3

func (UnimplementedMerlinServer) KillDate

func (UnimplementedMerlinServer) KillProcess

func (UnimplementedMerlinServer) LS

func (UnimplementedMerlinServer) LinkAgent

func (UnimplementedMerlinServer) ListAssemblies

func (UnimplementedMerlinServer) ListAssemblies(context.Context, *ID) (*Message, error)

func (UnimplementedMerlinServer) Listen

func (UnimplementedMerlinServer) Listener

func (UnimplementedMerlinServer) LoadAssembly

func (UnimplementedMerlinServer) LoadCLR

func (UnimplementedMerlinServer) MEMFD

func (UnimplementedMerlinServer) MaxRetry

func (UnimplementedMerlinServer) Memory

func (UnimplementedMerlinServer) Netstat

func (UnimplementedMerlinServer) Note

func (UnimplementedMerlinServer) Nslookup

func (UnimplementedMerlinServer) PS

func (UnimplementedMerlinServer) PWD

func (UnimplementedMerlinServer) Padding

func (UnimplementedMerlinServer) Parrot added in v1.1.0

func (UnimplementedMerlinServer) Pipes

func (UnimplementedMerlinServer) RM

func (UnimplementedMerlinServer) Reconnect

func (UnimplementedMerlinServer) Register

func (UnimplementedMerlinServer) Remove

func (UnimplementedMerlinServer) RemoveListener

func (UnimplementedMerlinServer) RemoveListener(context.Context, *ID) (*Message, error)

func (UnimplementedMerlinServer) RestartListener

func (UnimplementedMerlinServer) RestartListener(context.Context, *ID) (*Message, error)

func (UnimplementedMerlinServer) RunAs

func (UnimplementedMerlinServer) RunModule

func (UnimplementedMerlinServer) SSH

func (UnimplementedMerlinServer) SecureDelete

func (UnimplementedMerlinServer) Servers

func (UnimplementedMerlinServer) SetListenerOption

func (UnimplementedMerlinServer) SharpGen

func (UnimplementedMerlinServer) Skew

func (UnimplementedMerlinServer) Sleep

func (UnimplementedMerlinServer) Socks

func (UnimplementedMerlinServer) StartListener

func (UnimplementedMerlinServer) StopListener

func (UnimplementedMerlinServer) Token

func (UnimplementedMerlinServer) Touch

func (UnimplementedMerlinServer) UnlinkAgent

func (UnimplementedMerlinServer) Upload

func (UnimplementedMerlinServer) Uptime

type UnsafeMerlinServer

type UnsafeMerlinServer interface {
	// contains filtered or unexported methods
}

UnsafeMerlinServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to MerlinServer will result in compilation errors.

Jump to

Keyboard shortcuts

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