Documentation ¶
Index ¶
- Constants
- Variables
- type ExportDirectory
- type GenericRequest
- type GenericResponse
- type Server
- func (rpc *Server) Backdoor(ctx context.Context, req *glodpb.BackdoorReq) (*glodpb.Backdoor, error)
- func (rpc *Server) BuilderRegister(req *clientpb.Builder, stream rpcpb.SliverRPC_BuilderRegisterServer) error
- func (rpc *Server) BuilderTrigger(ctx context.Context, req *clientpb.Event) (*commonpb.Empty, error)
- func (rpc *Server) Builders(ctx context.Context, _ *commonpb.Empty) (*clientpb.Builders, error)
- func (rpc *Server) CallExtension(ctx context.Context, req *glodpb.CallExtensionReq) (*glodpb.CallExtension, error)
- func (rpc *Server) Canaries(ctx context.Context, _ *commonpb.Empty) (*clientpb.Canaries, error)
- func (rpc *Server) CancelBeaconTask(ctx context.Context, req *clientpb.BeaconTask) (*clientpb.BeaconTask, error)
- func (rpc *Server) Cd(ctx context.Context, req *glodpb.CdReq) (*glodpb.Pwd, error)
- func (rpc *Server) Chmod(ctx context.Context, req *glodpb.ChmodReq) (*glodpb.Chmod, error)
- func (rpc *Server) Chown(ctx context.Context, req *glodpb.ChownReq) (*glodpb.Chown, error)
- func (rpc *Server) Chtimes(ctx context.Context, req *glodpb.ChtimesReq) (*glodpb.Chtimes, error)
- func (rpc *Server) CloseSession(ctx context.Context, closeSession *glodpb.CloseSession) (*commonpb.Empty, error)
- func (s *Server) CloseSocks(ctx context.Context, req *glodpb.Socks) (*commonpb.Empty, error)
- func (s *Server) CloseTunnel(ctx context.Context, req *glodpb.Tunnel) (*commonpb.Empty, error)
- func (s *Server) CreateSocks(ctx context.Context, req *glodpb.Socks) (*glodpb.Socks, error)
- func (s *Server) CreateTunnel(ctx context.Context, req *glodpb.Tunnel) (*glodpb.Tunnel, error)
- func (rpc *Server) CurrentTokenOwner(ctx context.Context, req *glodpb.CurrentTokenOwnerReq) (*glodpb.CurrentTokenOwner, error)
- func (rpc *Server) DeleteImplantBuild(ctx context.Context, req *clientpb.DeleteReq) (*commonpb.Empty, error)
- func (rpc *Server) DeleteImplantProfile(ctx context.Context, req *clientpb.DeleteReq) (*commonpb.Empty, error)
- func (rpc *Server) Download(ctx context.Context, req *glodpb.DownloadReq) (*glodpb.Download, error)
- func (rpc *Server) Events(_ *commonpb.Empty, stream rpcpb.SliverRPC_EventsServer) error
- func (rpc *Server) Execute(ctx context.Context, req *glodpb.ExecuteReq) (*glodpb.Execute, error)
- func (rpc *Server) ExecuteAssembly(ctx context.Context, req *glodpb.ExecuteAssemblyReq) (*glodpb.ExecuteAssembly, error)
- func (rpc *Server) ExecuteWindows(ctx context.Context, req *glodpb.ExecuteWindowsReq) (*glodpb.Execute, error)
- func (rpc *Server) Generate(ctx context.Context, req *clientpb.GenerateReq) (*clientpb.Generate, error)
- func (rpc *Server) GenerateExternal(ctx context.Context, req *clientpb.ExternalGenerateReq) (*clientpb.ExternalImplantConfig, error)
- func (rpc *Server) GenerateExternalGetImplantConfig(ctx context.Context, req *clientpb.ImplantConfig) (*clientpb.ExternalImplantConfig, error)
- func (rpc *Server) GenerateExternalSaveBuild(ctx context.Context, req *clientpb.ExternalImplantBinary) (*commonpb.Empty, error)
- func (rpc *Server) GenerateUniqueIP(ctx context.Context, _ *commonpb.Empty) (*clientpb.UniqueWGIP, error)
- func (rpc *Server) GenerateWGClientConfig(ctx context.Context, _ *commonpb.Empty) (*clientpb.WGClientConfig, error)
- func (rpc *Server) GenericHandler(req GenericRequest, resp GenericResponse) error
- func (rpc *Server) GetBeacon(ctx context.Context, req *clientpb.Beacon) (*clientpb.Beacon, error)
- func (rpc *Server) GetBeaconTaskContent(ctx context.Context, req *clientpb.BeaconTask) (*clientpb.BeaconTask, error)
- func (rpc *Server) GetBeaconTasks(ctx context.Context, req *clientpb.Beacon) (*clientpb.BeaconTasks, error)
- func (rpc *Server) GetBeacons(ctx context.Context, req *commonpb.Empty) (*clientpb.Beacons, error)
- func (rpc *Server) GetCompiler(ctx context.Context, _ *commonpb.Empty) (*clientpb.Compiler, error)
- func (rpc *Server) GetEnv(ctx context.Context, req *glodpb.EnvReq) (*glodpb.EnvInfo, error)
- func (rpc *Server) GetJobs(ctx context.Context, _ *commonpb.Empty) (*clientpb.Jobs, error)
- func (s *Server) GetOperators(ctx context.Context, _ *commonpb.Empty) (*clientpb.Operators, error)
- func (rpc *Server) GetPrivs(ctx context.Context, req *glodpb.GetPrivsReq) (*glodpb.GetPrivs, error)
- func (rpc *Server) GetRportFwdListeners(ctx context.Context, req *glodpb.RportFwdListenersReq) (*glodpb.RportFwdListeners, error)
- func (rpc *Server) GetSessions(ctx context.Context, _ *commonpb.Empty) (*clientpb.Sessions, error)
- func (rpc *Server) GetSystem(ctx context.Context, req *clientpb.GetSystemReq) (*glodpb.GetSystem, error)
- func (rpc *Server) GetVersion(ctx context.Context, _ *commonpb.Empty) (*clientpb.Version, error)
- func (rpc *Server) HijackDLL(ctx context.Context, req *clientpb.DllHijackReq) (*clientpb.DllHijack, error)
- func (rpc *Server) Host(ctx context.Context, req *clientpb.Host) (*clientpb.Host, error)
- func (rpc *Server) HostIOCRm(ctx context.Context, req *clientpb.IOC) (*commonpb.Empty, error)
- func (rpc *Server) HostRm(ctx context.Context, req *clientpb.Host) (*commonpb.Empty, error)
- func (rpc *Server) Hosts(ctx context.Context, _ *commonpb.Empty) (*clientpb.AllHosts, error)
- func (rpc *Server) Ifconfig(ctx context.Context, req *glodpb.IfconfigReq) (*glodpb.Ifconfig, error)
- func (rpc *Server) Impersonate(ctx context.Context, req *glodpb.ImpersonateReq) (*glodpb.Impersonate, error)
- func (rpc *Server) ImplantBuilds(ctx context.Context, _ *commonpb.Empty) (*clientpb.ImplantBuilds, error)
- func (rpc *Server) ImplantProfiles(ctx context.Context, _ *commonpb.Empty) (*clientpb.ImplantProfiles, error)
- func (rpc *Server) Kill(ctx context.Context, kill *glodpb.KillReq) (*commonpb.Empty, error)
- func (rpc *Server) KillJob(ctx context.Context, kill *clientpb.KillJobReq) (*clientpb.KillJob, error)
- func (rpc *Server) KillSession(ctx context.Context, kill *glodpb.KillReq) (*commonpb.Empty, error)
- func (rpc *Server) ListExtensions(ctx context.Context, req *glodpb.ListExtensionsReq) (*glodpb.ListExtensions, error)
- func (rpc *Server) LootAdd(ctx context.Context, lootReq *clientpb.Loot) (*clientpb.Loot, error)
- func (rpc *Server) LootAll(ctx context.Context, _ *commonpb.Empty) (*clientpb.AllLoot, error)
- func (rpc *Server) LootAllOf(ctx context.Context, lootReq *clientpb.Loot) (*clientpb.AllLoot, error)
- func (rpc *Server) LootContent(ctx context.Context, lootReq *clientpb.Loot) (*clientpb.Loot, error)
- func (rpc *Server) LootRm(ctx context.Context, lootReq *clientpb.Loot) (*commonpb.Empty, error)
- func (rpc *Server) LootUpdate(ctx context.Context, lootReq *clientpb.Loot) (*clientpb.Loot, error)
- func (rpc *Server) Ls(ctx context.Context, req *glodpb.LsReq) (*glodpb.Ls, error)
- func (rpc *Server) MakeToken(ctx context.Context, req *glodpb.MakeTokenReq) (*glodpb.MakeToken, error)
- func (rpc *Server) MemfilesAdd(ctx context.Context, req *glodpb.MemfilesAddReq) (*glodpb.MemfilesAdd, error)
- func (rpc *Server) MemfilesList(ctx context.Context, req *glodpb.MemfilesListReq) (*glodpb.Ls, error)
- func (rpc *Server) MemfilesRm(ctx context.Context, req *glodpb.MemfilesRmReq) (*glodpb.MemfilesRm, error)
- func (rpc *Server) Migrate(ctx context.Context, req *clientpb.MigrateReq) (*glodpb.Migrate, error)
- func (rpc *Server) Mkdir(ctx context.Context, req *glodpb.MkdirReq) (*glodpb.Mkdir, error)
- func (rpc *Server) MonitorStart(ctx context.Context, _ *commonpb.Empty) (*commonpb.Response, error)
- func (rpc *Server) MonitorStop(ctx context.Context, _ *commonpb.Empty) (*commonpb.Empty, error)
- func (rpc *Server) Msf(ctx context.Context, req *clientpb.MSFReq) (*glodpb.Task, error)
- func (rpc *Server) MsfRemote(ctx context.Context, req *clientpb.MSFRemoteReq) (*glodpb.Task, error)
- func (rpc *Server) MsfStage(ctx context.Context, req *clientpb.MsfStagerReq) (*clientpb.MsfStager, error)
- func (rpc *Server) Mv(ctx context.Context, req *glodpb.MvReq) (*glodpb.Mv, error)
- func (rpc *Server) Netstat(ctx context.Context, req *glodpb.NetstatReq) (*glodpb.Netstat, error)
- func (rpc *Server) OpenSession(ctx context.Context, openSession *glodpb.OpenSession) (*glodpb.OpenSession, error)
- func (rpc *Server) Ping(ctx context.Context, req *glodpb.Ping) (*glodpb.Ping, error)
- func (rpc *Server) PivotGraph(ctx context.Context, req *commonpb.Empty) (*clientpb.PivotGraph, error)
- func (rpc *Server) PivotSessionListeners(ctx context.Context, req *glodpb.PivotListenersReq) (*glodpb.PivotListeners, error)
- func (rpc *Server) PivotStartListener(ctx context.Context, req *glodpb.PivotStartListenerReq) (*glodpb.PivotListener, error)
- func (rpc *Server) PivotStopListener(ctx context.Context, req *glodpb.PivotStopListenerReq) (*commonpb.Empty, error)
- func (s *Server) Portfwd(ctx context.Context, req *glodpb.PortfwdReq) (*glodpb.Portfwd, error)
- func (rpc *Server) ProcessDump(ctx context.Context, req *glodpb.ProcessDumpReq) (*glodpb.ProcessDump, error)
- func (rpc *Server) Ps(ctx context.Context, req *glodpb.PsReq) (*glodpb.Ps, error)
- func (rpc *Server) Pwd(ctx context.Context, req *glodpb.PwdReq) (*glodpb.Pwd, error)
- func (rpc *Server) Reconfigure(ctx context.Context, req *glodpb.ReconfigureReq) (*glodpb.Reconfigure, error)
- func (rpc *Server) Regenerate(ctx context.Context, req *clientpb.RegenerateReq) (*clientpb.Generate, error)
- func (rpc *Server) RegisterExtension(ctx context.Context, req *glodpb.RegisterExtensionReq) (*glodpb.RegisterExtension, error)
- func (rpc *Server) RegistryCreateKey(ctx context.Context, req *glodpb.RegistryCreateKeyReq) (*glodpb.RegistryCreateKey, error)
- func (rpc *Server) RegistryDeleteKey(ctx context.Context, req *glodpb.RegistryDeleteKeyReq) (*glodpb.RegistryDeleteKey, error)
- func (rpc *Server) RegistryListSubKeys(ctx context.Context, req *glodpb.RegistrySubKeyListReq) (*glodpb.RegistrySubKeyList, error)
- func (rpc *Server) RegistryListValues(ctx context.Context, req *glodpb.RegistryListValuesReq) (*glodpb.RegistryValuesList, error)
- func (rpc *Server) RegistryRead(ctx context.Context, req *glodpb.RegistryReadReq) (*glodpb.RegistryRead, error)
- func (rpc *Server) RegistryWrite(ctx context.Context, req *glodpb.RegistryWriteReq) (*glodpb.RegistryWrite, error)
- func (rpc *Server) RemoveService(ctx context.Context, req *glodpb.RemoveServiceReq) (*glodpb.ServiceInfo, error)
- func (rpc *Server) Rename(ctx context.Context, req *clientpb.RenameReq) (*commonpb.Empty, error)
- func (rpc *Server) RevToSelf(ctx context.Context, req *glodpb.RevToSelfReq) (*glodpb.RevToSelf, error)
- func (rpc *Server) Rm(ctx context.Context, req *glodpb.RmReq) (*glodpb.Rm, error)
- func (rpc *Server) RmBeacon(ctx context.Context, req *clientpb.Beacon) (*commonpb.Empty, error)
- func (rpc *Server) RunAs(ctx context.Context, req *glodpb.RunAsReq) (*glodpb.RunAs, error)
- func (rpc *Server) RunSSHCommand(ctx context.Context, req *glodpb.SSHCommandReq) (*glodpb.SSHCommand, error)
- func (rpc *Server) SaveImplantProfile(ctx context.Context, profile *clientpb.ImplantProfile) (*clientpb.ImplantProfile, error)
- func (rpc *Server) Screenshot(ctx context.Context, req *glodpb.ScreenshotReq) (*glodpb.Screenshot, error)
- func (rpc *Server) SetEnv(ctx context.Context, req *glodpb.SetEnvReq) (*glodpb.SetEnv, error)
- func (rpc *Server) Shell(ctx context.Context, req *glodpb.ShellReq) (*glodpb.Shell, error)
- func (rpc *Server) ShellcodeEncoder(ctx context.Context, req *clientpb.ShellcodeEncodeReq) (*clientpb.ShellcodeEncode, error)
- func (rpc *Server) ShellcodeEncoderMap(ctx context.Context, _ *commonpb.Empty) (*clientpb.ShellcodeEncoderMap, error)
- func (rpc *Server) ShellcodeRDI(ctx context.Context, req *clientpb.ShellcodeRDIReq) (*clientpb.ShellcodeRDI, error)
- func (rpc *Server) Sideload(ctx context.Context, req *glodpb.SideloadReq) (*glodpb.Sideload, error)
- func (s *Server) SocksProxy(stream rpcpb.SliverRPC_SocksProxyServer) error
- func (rpc *Server) SpawnDll(ctx context.Context, req *glodpb.InvokeSpawnDllReq) (*glodpb.SpawnDll, error)
- func (rpc *Server) StartDNSListener(ctx context.Context, req *clientpb.DNSListenerReq) (*clientpb.DNSListener, error)
- func (rpc *Server) StartHTTPListener(ctx context.Context, req *clientpb.HTTPListenerReq) (*clientpb.HTTPListener, error)
- func (rpc *Server) StartHTTPSListener(ctx context.Context, req *clientpb.HTTPListenerReq) (*clientpb.HTTPListener, error)
- func (rpc *Server) StartHTTPStagerListener(ctx context.Context, req *clientpb.StagerListenerReq) (*clientpb.StagerListener, error)
- func (rpc *Server) StartMTLSListener(ctx context.Context, req *clientpb.MTLSListenerReq) (*clientpb.MTLSListener, error)
- func (rpc *Server) StartRportFwdListener(ctx context.Context, req *glodpb.RportFwdStartListenerReq) (*glodpb.RportFwdListener, error)
- func (rpc *Server) StartService(ctx context.Context, req *glodpb.StartServiceReq) (*glodpb.ServiceInfo, error)
- func (rpc *Server) StartTCPStagerListener(ctx context.Context, req *clientpb.StagerListenerReq) (*clientpb.StagerListener, error)
- func (rpc *Server) StartWGListener(ctx context.Context, req *clientpb.WGListenerReq) (*clientpb.WGListener, error)
- func (rpc *Server) StopRportFwdListener(ctx context.Context, req *glodpb.RportFwdStopListenerReq) (*glodpb.RportFwdListener, error)
- func (rpc *Server) StopService(ctx context.Context, req *glodpb.StopServiceReq) (*glodpb.ServiceInfo, error)
- func (rpc *Server) Task(ctx context.Context, req *glodpb.TaskReq) (*glodpb.Task, error)
- func (rpc *Server) Terminate(ctx context.Context, req *glodpb.TerminateReq) (*glodpb.Terminate, error)
- func (s *Server) TunnelData(stream rpcpb.SliverRPC_TunnelDataServer) error
- func (rpc *Server) UnsetEnv(ctx context.Context, req *glodpb.UnsetEnvReq) (*glodpb.UnsetEnv, error)
- func (rpc *Server) Upload(ctx context.Context, req *glodpb.UploadReq) (*glodpb.Upload, error)
- func (rpc *Server) WGListForwarders(ctx context.Context, req *glodpb.WGTCPForwardersReq) (*glodpb.WGTCPForwarders, error)
- func (rpc *Server) WGListSocksServers(ctx context.Context, req *glodpb.WGSocksServersReq) (*glodpb.WGSocksServers, error)
- func (rpc *Server) WGStartPortForward(ctx context.Context, req *glodpb.WGPortForwardStartReq) (*glodpb.WGPortForward, error)
- func (rpc *Server) WGStartSocks(ctx context.Context, req *glodpb.WGSocksStartReq) (*glodpb.WGSocks, error)
- func (rpc *Server) WGStopPortForward(ctx context.Context, req *glodpb.WGPortForwardStopReq) (*glodpb.WGPortForward, error)
- func (rpc *Server) WGStopSocks(ctx context.Context, req *glodpb.WGSocksStopReq) (*glodpb.WGSocks, error)
- func (rpc *Server) Website(ctx context.Context, req *clientpb.Website) (*clientpb.Website, error)
- func (rpc *Server) WebsiteAddContent(ctx context.Context, req *clientpb.WebsiteAddContent) (*clientpb.Website, error)
- func (rpc *Server) WebsiteRemove(ctx context.Context, req *clientpb.Website) (*commonpb.Empty, error)
- func (rpc *Server) WebsiteRemoveContent(ctx context.Context, req *clientpb.WebsiteRemoveContent) (*clientpb.Website, error)
- func (rpc *Server) WebsiteUpdateContent(ctx context.Context, req *clientpb.WebsiteAddContent) (*clientpb.Website, error)
- func (rpc *Server) Websites(ctx context.Context, _ *commonpb.Empty) (*clientpb.Websites, error)
Constants ¶
const ( DEFAULT_CHARACTERISTICS = 0x40000040 SECTION_NAME = 8 )
Variables ¶
var ( // ErrInvalidBeaconID - Invalid Beacon ID in request ErrInvalidBeaconID = status.Error(codes.InvalidArgument, "Invalid beacon ID") // ErrInvalidBeaconTaskID - Invalid Beacon ID in request ErrInvalidBeaconTaskID = status.Error(codes.InvalidArgument, "Invalid beacon task ID") // ErrInvalidSessionID - Invalid Session ID in request ErrInvalidSessionID = status.Error(codes.InvalidArgument, "Invalid session ID") // ErrMissingRequestField - Returned when a request does not contain a commonpb.Request ErrMissingRequestField = status.Error(codes.InvalidArgument, "Missing session request field") // ErrAsyncNotSupported - Unsupported mode / command type ErrAsyncNotSupported = status.Error(codes.Unavailable, "Async not supported for this command") // ErrDatabaseFailure - Generic database failure error (real error is logged) ErrDatabaseFailure = status.Error(codes.Internal, "Database operation failed") // ErrInvalidName - Invalid name ErrInvalidName = status.Error(codes.InvalidArgument, "Invalid session name, alphanumerics and _-. only") // ErrBuildExists ErrBuildExists = status.Error(codes.AlreadyExists, "Build already exists") ErrInvalidBeaconTaskCancelState = status.Error(codes.InvalidArgument, fmt.Sprintf("Invalid task state, must be '%s' to cancel", models.PENDING)) )
var ( // ErrInvalidPort - Invalid TCP port number ErrInvalidPort = errors.New("invalid listener port") )
var ( // ErrTunnelInitFailure - Returned when a tunnel cannot be initialized ErrTunnelInitFailure = status.Error(codes.Internal, "Failed to initialize tunnel") )
Functions ¶
This section is empty.
Types ¶
type ExportDirectory ¶
type ExportDirectory struct { Characteristics uint32 TimeDateStamp uint32 MajorVersion uint16 MinorVersion uint16 Name uint32 Base uint32 NumberOfFunctions uint32 NumberOfNames uint32 AddressOfFunctions uint32 // RVA from base of image AddressOfNames uint32 // RVA from base of image AddressOfNameOrdinals uint32 // RVA from base of image }
ExportDirectory - stores the Export data
type GenericRequest ¶
type GenericRequest interface { Reset() String() string ProtoMessage() ProtoReflect() protoreflect.Message GetRequest() *commonpb.Request }
GenericRequest - Generic request interface to use with generic handlers
type GenericResponse ¶
type GenericResponse interface { Reset() String() string ProtoMessage() ProtoReflect() protoreflect.Message GetResponse() *commonpb.Response }
GenericResponse - Generic response interface to use with generic handlers
type Server ¶
type Server struct { // Magical methods to break backwards compatibility // Here be dragons: https://github.com/grpc/grpc-go/issues/3794 rpcpb.UnimplementedSliverRPCServer }
Server - gRPC server
func (*Server) BuilderRegister ¶
func (rpc *Server) BuilderRegister(req *clientpb.Builder, stream rpcpb.SliverRPC_BuilderRegisterServer) error
BuilderRegister
func (*Server) BuilderTrigger ¶
func (*Server) CallExtension ¶
func (rpc *Server) CallExtension(ctx context.Context, req *glodpb.CallExtensionReq) (*glodpb.CallExtension, error)
CallExtension calls a specific export of the loaded extension
func (*Server) CancelBeaconTask ¶
func (rpc *Server) CancelBeaconTask(ctx context.Context, req *clientpb.BeaconTask) (*clientpb.BeaconTask, error)
CancelBeaconTask - Cancel a beacon task
func (*Server) CloseSession ¶
func (rpc *Server) CloseSession(ctx context.Context, closeSession *glodpb.CloseSession) (*commonpb.Empty, error)
CloseSession - Close an interactive session, but do not kill the remote process
func (*Server) CloseSocks ¶
CloseSocks - Client requests we close a Socks
func (*Server) CloseTunnel ¶
CloseTunnel - Client requests we close a tunnel
func (*Server) CreateSocks ¶
CreateSocks5 - Create requests we close a Socks
func (*Server) CreateTunnel ¶
CreateTunnel - Create a new tunnel on the server, however based on only this request there's
no way to associate the tunnel with the correct client, so the client must send a zero-byte message over TunnelData to bind itself to the newly created tunnel.
func (*Server) CurrentTokenOwner ¶
func (rpc *Server) CurrentTokenOwner(ctx context.Context, req *glodpb.CurrentTokenOwnerReq) (*glodpb.CurrentTokenOwner, error)
CurrentTokenOwner - Retrieve the thread token's owner
func (*Server) DeleteImplantBuild ¶
func (rpc *Server) DeleteImplantBuild(ctx context.Context, req *clientpb.DeleteReq) (*commonpb.Empty, error)
DeleteImplantBuild - Delete an implant build
func (*Server) DeleteImplantProfile ¶
func (rpc *Server) DeleteImplantProfile(ctx context.Context, req *clientpb.DeleteReq) (*commonpb.Empty, error)
DeleteImplantProfile - Delete an implant profile
func (*Server) ExecuteAssembly ¶
func (rpc *Server) ExecuteAssembly(ctx context.Context, req *glodpb.ExecuteAssemblyReq) (*glodpb.ExecuteAssembly, error)
ExecuteAssembly - Execute a .NET assembly on the remote system in-memory (Windows only)
func (*Server) ExecuteWindows ¶
func (rpc *Server) ExecuteWindows(ctx context.Context, req *glodpb.ExecuteWindowsReq) (*glodpb.Execute, error)
ExecuteWindows - Execute a remote process with specific options (PPID, Token, windows only)
func (*Server) Generate ¶
func (rpc *Server) Generate(ctx context.Context, req *clientpb.GenerateReq) (*clientpb.Generate, error)
Generate - Generate a new implant
func (*Server) GenerateExternal ¶
func (rpc *Server) GenerateExternal(ctx context.Context, req *clientpb.ExternalGenerateReq) (*clientpb.ExternalImplantConfig, error)
Generate - Generate a new implant
func (*Server) GenerateExternalGetImplantConfig ¶
func (rpc *Server) GenerateExternalGetImplantConfig(ctx context.Context, req *clientpb.ImplantConfig) (*clientpb.ExternalImplantConfig, error)
func (*Server) GenerateExternalSaveBuild ¶
func (*Server) GenerateUniqueIP ¶
func (rpc *Server) GenerateUniqueIP(ctx context.Context, _ *commonpb.Empty) (*clientpb.UniqueWGIP, error)
GenerateUniqueIP - Wrapper around generate.GenerateUniqueIP
func (*Server) GenerateWGClientConfig ¶
func (rpc *Server) GenerateWGClientConfig(ctx context.Context, _ *commonpb.Empty) (*clientpb.WGClientConfig, error)
GenerateWGClientConfig - Generate a client config for a WG interface
func (*Server) GenericHandler ¶
func (rpc *Server) GenericHandler(req GenericRequest, resp GenericResponse) error
GenericHandler - Pass the request to the Sliver/Session
func (*Server) GetBeaconTaskContent ¶
func (rpc *Server) GetBeaconTaskContent(ctx context.Context, req *clientpb.BeaconTask) (*clientpb.BeaconTask, error)
GetBeaconTaskContent - Get the content of a specific task
func (*Server) GetBeaconTasks ¶
func (rpc *Server) GetBeaconTasks(ctx context.Context, req *clientpb.Beacon) (*clientpb.BeaconTasks, error)
GetBeaconTasks - Get a list of tasks for a specific beacon
func (*Server) GetBeacons ¶
GetBeacons - Get a list of beacons from the database
func (*Server) GetCompiler ¶
GetCompiler - Get information about the internal Go compiler and its configuration
func (*Server) GetOperators ¶
GetOperators - Get a list of operators
func (*Server) GetPrivs ¶
GetPrivs - gRPC interface to get privilege information from the current process
func (*Server) GetRportFwdListeners ¶
func (rpc *Server) GetRportFwdListeners(ctx context.Context, req *glodpb.RportFwdListenersReq) (*glodpb.RportFwdListeners, error)
GetRportFwdListeners - Get a list of all reverse port forwards listeners from an implant
func (*Server) GetSessions ¶
GetSessions - Get a list of sessions
func (*Server) GetSystem ¶
func (rpc *Server) GetSystem(ctx context.Context, req *clientpb.GetSystemReq) (*glodpb.GetSystem, error)
GetSystem - Attempt to get 'NT AUTHORITY/SYSTEM' access on a remote Windows system
func (*Server) GetVersion ¶
GetVersion - Get the server version
func (*Server) HijackDLL ¶
func (rpc *Server) HijackDLL(ctx context.Context, req *clientpb.DllHijackReq) (*clientpb.DllHijack, error)
HijackDLL - RPC call to automatically perform DLL hijacking attacks
func (*Server) Impersonate ¶
func (rpc *Server) Impersonate(ctx context.Context, req *glodpb.ImpersonateReq) (*glodpb.Impersonate, error)
Impersonate - Impersonate a remote user
func (*Server) ImplantBuilds ¶
func (rpc *Server) ImplantBuilds(ctx context.Context, _ *commonpb.Empty) (*clientpb.ImplantBuilds, error)
ImplantBuilds - List existing implant builds
func (*Server) ImplantProfiles ¶
func (rpc *Server) ImplantProfiles(ctx context.Context, _ *commonpb.Empty) (*clientpb.ImplantProfiles, error)
ImplantProfiles - List profiles
func (*Server) KillJob ¶
func (rpc *Server) KillJob(ctx context.Context, kill *clientpb.KillJobReq) (*clientpb.KillJob, error)
KillJob - Kill a server-side job
func (*Server) KillSession ¶
KillSession - Kill a session
func (*Server) ListExtensions ¶
func (rpc *Server) ListExtensions(ctx context.Context, req *glodpb.ListExtensionsReq) (*glodpb.ListExtensions, error)
ListExtensions lists the registered extensions
func (*Server) LootAllOf ¶
func (rpc *Server) LootAllOf(ctx context.Context, lootReq *clientpb.Loot) (*clientpb.AllLoot, error)
LootAllOf - Get a list of all loot of a specific type
func (*Server) LootContent ¶
LootContent - Get a list of all loot of a specific type
func (*Server) LootUpdate ¶
LootUpdate - Update loot metadata
func (*Server) MakeToken ¶
func (rpc *Server) MakeToken(ctx context.Context, req *glodpb.MakeTokenReq) (*glodpb.MakeToken, error)
MakeToken - Creates a new logon session to impersonate a user based on its credentials.
func (*Server) MemfilesAdd ¶
func (rpc *Server) MemfilesAdd(ctx context.Context, req *glodpb.MemfilesAddReq) (*glodpb.MemfilesAdd, error)
MemfilesAdd - Add memfile
func (*Server) MemfilesList ¶
func (rpc *Server) MemfilesList(ctx context.Context, req *glodpb.MemfilesListReq) (*glodpb.Ls, error)
MemfilesList - List memfiles
func (*Server) MemfilesRm ¶
func (rpc *Server) MemfilesRm(ctx context.Context, req *glodpb.MemfilesRmReq) (*glodpb.MemfilesRm, error)
MemfilesRm - Close memfile
func (*Server) MonitorStart ¶
func (*Server) MonitorStop ¶
func (*Server) MsfStage ¶
func (rpc *Server) MsfStage(ctx context.Context, req *clientpb.MsfStagerReq) (*clientpb.MsfStager, error)
MsfStage - Generate a MSF compatible stage
func (*Server) OpenSession ¶
func (rpc *Server) OpenSession(ctx context.Context, openSession *glodpb.OpenSession) (*glodpb.OpenSession, error)
OpenSession - Instruct beacon to open a new session on next checkin
func (*Server) PivotGraph ¶
func (rpc *Server) PivotGraph(ctx context.Context, req *commonpb.Empty) (*clientpb.PivotGraph, error)
PivotGraph - Return the server's pivot graph
func (*Server) PivotSessionListeners ¶
func (rpc *Server) PivotSessionListeners(ctx context.Context, req *glodpb.PivotListenersReq) (*glodpb.PivotListeners, error)
PivotSessionListeners - Get a list of all pivot listeners from an implant
func (*Server) PivotStartListener ¶
func (rpc *Server) PivotStartListener(ctx context.Context, req *glodpb.PivotStartListenerReq) (*glodpb.PivotListener, error)
PivotStartListener - Instruct the implant to start a pivot listener
func (*Server) PivotStopListener ¶
func (rpc *Server) PivotStopListener(ctx context.Context, req *glodpb.PivotStopListenerReq) (*commonpb.Empty, error)
PivotStopListener - Instruct the implant to stop a pivot listener
func (*Server) ProcessDump ¶
func (rpc *Server) ProcessDump(ctx context.Context, req *glodpb.ProcessDumpReq) (*glodpb.ProcessDump, error)
ProcessDump - Dump the memory of a remote process
func (*Server) Reconfigure ¶
func (rpc *Server) Reconfigure(ctx context.Context, req *glodpb.ReconfigureReq) (*glodpb.Reconfigure, error)
Reconfigure - Reconfigure a beacon/session
func (*Server) Regenerate ¶
func (rpc *Server) Regenerate(ctx context.Context, req *clientpb.RegenerateReq) (*clientpb.Generate, error)
Regenerate - Regenerate a previously generated implant
func (*Server) RegisterExtension ¶
func (rpc *Server) RegisterExtension(ctx context.Context, req *glodpb.RegisterExtensionReq) (*glodpb.RegisterExtension, error)
RegisterExtension registers a new extension in the implant
func (*Server) RegistryCreateKey ¶
func (rpc *Server) RegistryCreateKey(ctx context.Context, req *glodpb.RegistryCreateKeyReq) (*glodpb.RegistryCreateKey, error)
RegistryCreateKey - gRPC interface to create a registry key on a session
func (*Server) RegistryDeleteKey ¶
func (rpc *Server) RegistryDeleteKey(ctx context.Context, req *glodpb.RegistryDeleteKeyReq) (*glodpb.RegistryDeleteKey, error)
RegistryDeleteKey - gRPC interface to delete a registry key on a session
func (*Server) RegistryListSubKeys ¶
func (rpc *Server) RegistryListSubKeys(ctx context.Context, req *glodpb.RegistrySubKeyListReq) (*glodpb.RegistrySubKeyList, error)
RegistryListSubKeys - gRPC interface to list the sub keys of a registry key
func (*Server) RegistryListValues ¶
func (rpc *Server) RegistryListValues(ctx context.Context, req *glodpb.RegistryListValuesReq) (*glodpb.RegistryValuesList, error)
RegistryListSubKeys - gRPC interface to list the sub keys of a registry key
func (*Server) RegistryRead ¶
func (rpc *Server) RegistryRead(ctx context.Context, req *glodpb.RegistryReadReq) (*glodpb.RegistryRead, error)
RegistryRead - gRPC interface to read a registry key from a session
func (*Server) RegistryWrite ¶
func (rpc *Server) RegistryWrite(ctx context.Context, req *glodpb.RegistryWriteReq) (*glodpb.RegistryWrite, error)
RegistryWrite - gRPC interface to write to a registry key on a session
func (*Server) RemoveService ¶
func (rpc *Server) RemoveService(ctx context.Context, req *glodpb.RemoveServiceReq) (*glodpb.ServiceInfo, error)
RemoveService deletes a service from the remote system
func (*Server) RevToSelf ¶
func (rpc *Server) RevToSelf(ctx context.Context, req *glodpb.RevToSelfReq) (*glodpb.RevToSelf, error)
RevToSelf - Revert process context to self
func (*Server) RunSSHCommand ¶
func (rpc *Server) RunSSHCommand(ctx context.Context, req *glodpb.SSHCommandReq) (*glodpb.SSHCommand, error)
RunSSHCommand runs a SSH command using the client built into the implant
func (*Server) SaveImplantProfile ¶
func (rpc *Server) SaveImplantProfile(ctx context.Context, profile *clientpb.ImplantProfile) (*clientpb.ImplantProfile, error)
SaveImplantProfile - Save a new profile
func (*Server) Screenshot ¶
func (rpc *Server) Screenshot(ctx context.Context, req *glodpb.ScreenshotReq) (*glodpb.Screenshot, error)
Screenshot - Take a screenshot of the remote system
func (*Server) ShellcodeEncoder ¶
func (rpc *Server) ShellcodeEncoder(ctx context.Context, req *clientpb.ShellcodeEncodeReq) (*clientpb.ShellcodeEncode, error)
ShellcodeEncode - Encode a piece shellcode
func (*Server) ShellcodeEncoderMap ¶
func (rpc *Server) ShellcodeEncoderMap(ctx context.Context, _ *commonpb.Empty) (*clientpb.ShellcodeEncoderMap, error)
ShellcodeEncoderMap - Get a map of support shellcode encoders <human readable/enum>
func (*Server) ShellcodeRDI ¶
func (rpc *Server) ShellcodeRDI(ctx context.Context, req *clientpb.ShellcodeRDIReq) (*clientpb.ShellcodeRDI, error)
ShellcodeRDI - Generates a RDI shellcode from a given DLL
func (*Server) SocksProxy ¶
func (s *Server) SocksProxy(stream rpcpb.SliverRPC_SocksProxyServer) error
Socks - Open an in-band port forward
func (*Server) SpawnDll ¶
func (rpc *Server) SpawnDll(ctx context.Context, req *glodpb.InvokeSpawnDllReq) (*glodpb.SpawnDll, error)
SpawnDll - Spawn a DLL on the remote system (Windows only)
func (*Server) StartDNSListener ¶
func (rpc *Server) StartDNSListener(ctx context.Context, req *clientpb.DNSListenerReq) (*clientpb.DNSListener, error)
StartDNSListener - Start a DNS listener TODO: respect request's Host specification
func (*Server) StartHTTPListener ¶
func (rpc *Server) StartHTTPListener(ctx context.Context, req *clientpb.HTTPListenerReq) (*clientpb.HTTPListener, error)
StartHTTPListener - Start an HTTP listener
func (*Server) StartHTTPSListener ¶
func (rpc *Server) StartHTTPSListener(ctx context.Context, req *clientpb.HTTPListenerReq) (*clientpb.HTTPListener, error)
StartHTTPSListener - Start an HTTPS listener
func (*Server) StartHTTPStagerListener ¶
func (rpc *Server) StartHTTPStagerListener(ctx context.Context, req *clientpb.StagerListenerReq) (*clientpb.StagerListener, error)
StartHTTPStagerListener starts a HTTP(S) stager listener
func (*Server) StartMTLSListener ¶
func (rpc *Server) StartMTLSListener(ctx context.Context, req *clientpb.MTLSListenerReq) (*clientpb.MTLSListener, error)
StartMTLSListener - Start an MTLS listener
func (*Server) StartRportFwdListener ¶
func (rpc *Server) StartRportFwdListener(ctx context.Context, req *glodpb.RportFwdStartListenerReq) (*glodpb.RportFwdListener, error)
StartRportfwdListener - Instruct the implant to start a reverse port forward
func (*Server) StartService ¶
func (rpc *Server) StartService(ctx context.Context, req *glodpb.StartServiceReq) (*glodpb.ServiceInfo, error)
StartService creates and starts a Windows service on a remote host
func (*Server) StartTCPStagerListener ¶
func (rpc *Server) StartTCPStagerListener(ctx context.Context, req *clientpb.StagerListenerReq) (*clientpb.StagerListener, error)
StartTCPStagerListener starts a TCP stager listener
func (*Server) StartWGListener ¶
func (rpc *Server) StartWGListener(ctx context.Context, req *clientpb.WGListenerReq) (*clientpb.WGListener, error)
StartWGListener - Start a Wireguard listener
func (*Server) StopRportFwdListener ¶
func (rpc *Server) StopRportFwdListener(ctx context.Context, req *glodpb.RportFwdStopListenerReq) (*glodpb.RportFwdListener, error)
StopRportfwdListener - Instruct the implant to stop a reverse port forward
func (*Server) StopService ¶
func (rpc *Server) StopService(ctx context.Context, req *glodpb.StopServiceReq) (*glodpb.ServiceInfo, error)
StopService stops a remote service
func (*Server) Terminate ¶
func (rpc *Server) Terminate(ctx context.Context, req *glodpb.TerminateReq) (*glodpb.Terminate, error)
Terminate - Terminate a remote process
func (*Server) TunnelData ¶
func (s *Server) TunnelData(stream rpcpb.SliverRPC_TunnelDataServer) error
TunnelData - Streams tunnel data back and forth from the client<->server<->implant
func (*Server) WGListForwarders ¶
func (rpc *Server) WGListForwarders(ctx context.Context, req *glodpb.WGTCPForwardersReq) (*glodpb.WGTCPForwarders, error)
WGAddForwarder - List wireguard forwarders
func (*Server) WGListSocksServers ¶
func (rpc *Server) WGListSocksServers(ctx context.Context, req *glodpb.WGSocksServersReq) (*glodpb.WGSocksServers, error)
func (*Server) WGStartPortForward ¶
func (rpc *Server) WGStartPortForward(ctx context.Context, req *glodpb.WGPortForwardStartReq) (*glodpb.WGPortForward, error)
WGStartPortForward - Start a port forward
func (*Server) WGStartSocks ¶
func (rpc *Server) WGStartSocks(ctx context.Context, req *glodpb.WGSocksStartReq) (*glodpb.WGSocks, error)
WGAddForwarder - Add a TCP forwarder
func (*Server) WGStopPortForward ¶
func (rpc *Server) WGStopPortForward(ctx context.Context, req *glodpb.WGPortForwardStopReq) (*glodpb.WGPortForward, error)
WGStopPortForward - Stop a port forward
func (*Server) WGStopSocks ¶
func (rpc *Server) WGStopSocks(ctx context.Context, req *glodpb.WGSocksStopReq) (*glodpb.WGSocks, error)
WGStopForwarder - Stop a TCP forwarder
func (*Server) WebsiteAddContent ¶
func (rpc *Server) WebsiteAddContent(ctx context.Context, req *clientpb.WebsiteAddContent) (*clientpb.Website, error)
WebsiteAddContent - Add content to a website, the website is created if `name` does not exist
func (*Server) WebsiteRemove ¶
func (rpc *Server) WebsiteRemove(ctx context.Context, req *clientpb.Website) (*commonpb.Empty, error)
WebsiteRemove - Delete an entire website
func (*Server) WebsiteRemoveContent ¶
func (rpc *Server) WebsiteRemoveContent(ctx context.Context, req *clientpb.WebsiteRemoveContent) (*clientpb.Website, error)
WebsiteRemoveContent - Remove specific content from a website
func (*Server) WebsiteUpdateContent ¶
func (rpc *Server) WebsiteUpdateContent(ctx context.Context, req *clientpb.WebsiteAddContent) (*clientpb.Website, error)
WebsiteUpdateContent - Update specific content from a website, currently you can only the update Content-type field
Source Files ¶
- errors.go
- rpc-backdoor.go
- rpc-beacons.go
- rpc-env.go
- rpc-events.go
- rpc-execute.go
- rpc-extensions.go
- rpc-filesystem.go
- rpc-generate.go
- rpc-hijack.go
- rpc-hosts.go
- rpc-jobs.go
- rpc-kill.go
- rpc-loot.go
- rpc-monitor.go
- rpc-msf.go
- rpc-net.go
- rpc-operators.go
- rpc-ping.go
- rpc-pivots.go
- rpc-portfwd.go
- rpc-priv.go
- rpc-process.go
- rpc-reconfig.go
- rpc-registry.go
- rpc-rportfwd.go
- rpc-screenshot.go
- rpc-service.go
- rpc-sessions.go
- rpc-shell.go
- rpc-shellcode.go
- rpc-socks.go
- rpc-stager.go
- rpc-tasks.go
- rpc-tunnel.go
- rpc-website.go
- rpc-wg.go
- rpc.go