rpc

package
v1.15.16 Latest Latest
Warning

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

Go to latest
Published: Jun 9, 2022 License: GPL-3.0 Imports: 45 Imported by: 2

README

RPC

This package contains the RPC APIs. The RPC APIs are responsible for the majority of the server-side logic and are invoked either locally by the server console or remotely via a client binary connected via the transport package.

Documentation

Index

Constants

View Source
const (
	DEFAULT_CHARACTERISTICS = 0x40000040
	SECTION_NAME            = 8
)

Variables

View Source
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 only")
)
View Source
var (
	// ErrInvalidPort - Invalid TCP port number
	ErrInvalidPort = errors.New("invalid listener port")
)
View Source
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 NewServer

func NewServer() *Server

NewServer - Create new server instance

func (*Server) Backdoor

func (rpc *Server) Backdoor(ctx context.Context, req *sliverpb.BackdoorReq) (*sliverpb.Backdoor, error)

Backdoor - Inject a sliver payload in a file on the remote system

func (*Server) CallExtension added in v1.5.0

func (rpc *Server) CallExtension(ctx context.Context, req *sliverpb.CallExtensionReq) (*sliverpb.CallExtension, error)

CallExtension calls a specific export of the loaded extension

func (*Server) Canaries

func (rpc *Server) Canaries(ctx context.Context, _ *commonpb.Empty) (*clientpb.Canaries, error)

Canaries - List existing canaries

func (*Server) Cd

func (rpc *Server) Cd(ctx context.Context, req *sliverpb.CdReq) (*sliverpb.Pwd, error)

Cd - Change directory

func (*Server) CloseSession added in v1.5.0

func (rpc *Server) CloseSession(ctx context.Context, closeSession *sliverpb.CloseSession) (*commonpb.Empty, error)

CloseSession - Close an interactive session, but do not kill the remote process

func (*Server) CloseSocks added in v1.5.0

func (s *Server) CloseSocks(ctx context.Context, req *sliverpb.Socks) (*commonpb.Empty, error)

CloseSocks - Client requests we close a Socks

func (*Server) CloseTunnel

func (s *Server) CloseTunnel(ctx context.Context, req *sliverpb.Tunnel) (*commonpb.Empty, error)

CloseTunnel - Client requests we close a tunnel

func (*Server) CreateSocks added in v1.5.0

func (s *Server) CreateSocks(ctx context.Context, req *sliverpb.Socks) (*sliverpb.Socks, error)

CreateSocks5 - Create requests we close a Socks

func (*Server) CreateTunnel

func (s *Server) CreateTunnel(ctx context.Context, req *sliverpb.Tunnel) (*sliverpb.Tunnel, error)

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 added in v1.5.11

func (rpc *Server) CurrentTokenOwner(ctx context.Context, req *sliverpb.CurrentTokenOwnerReq) (*sliverpb.CurrentTokenOwner, error)

CurrentTokenOwner - Retrieve the thread token's owner

func (*Server) DeleteImplantBuild added in v1.2.0

func (rpc *Server) DeleteImplantBuild(ctx context.Context, req *clientpb.DeleteReq) (*commonpb.Empty, error)

DeleteImplantBuild - Delete an implant build

func (*Server) DeleteImplantProfile added in v1.2.0

func (rpc *Server) DeleteImplantProfile(ctx context.Context, req *clientpb.DeleteReq) (*commonpb.Empty, error)

DeleteImplantProfile - Delete an implant profile

func (*Server) Download

func (rpc *Server) Download(ctx context.Context, req *sliverpb.DownloadReq) (*sliverpb.Download, error)

Download - Download a file from the remote file system

func (*Server) Events

func (s *Server) Events(_ *commonpb.Empty, stream rpcpb.SliverRPC_EventsServer) error

Events - Stream events to client

func (*Server) Execute

func (rpc *Server) Execute(ctx context.Context, req *sliverpb.ExecuteReq) (*sliverpb.Execute, error)

Execute - Execute a remote process

func (*Server) ExecuteAssembly

func (rpc *Server) ExecuteAssembly(ctx context.Context, req *sliverpb.ExecuteAssemblyReq) (*sliverpb.ExecuteAssembly, error)

ExecuteAssembly - Execute a .NET assembly on the remote system in-memory (Windows only)

func (*Server) ExecuteToken added in v1.3.0

func (rpc *Server) ExecuteToken(ctx context.Context, req *sliverpb.ExecuteTokenReq) (*sliverpb.Execute, error)

ExecuteToken - Execute a remote process with 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) GenerateUniqueIP added in v1.4.9

func (rpc *Server) GenerateUniqueIP(ctx context.Context, _ *commonpb.Empty) (*clientpb.UniqueWGIP, error)

GenerateUniqueIP - Wrapper around generate.GenerateUniqueIP

func (*Server) GenerateWGClientConfig added in v1.4.11

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) GetBeacon added in v1.5.0

func (rpc *Server) GetBeacon(ctx context.Context, req *clientpb.Beacon) (*clientpb.Beacon, error)

GetBeacon - Get a list of beacons from the database

func (*Server) GetBeaconTaskContent added in v1.5.0

func (rpc *Server) GetBeaconTaskContent(ctx context.Context, req *clientpb.BeaconTask) (*clientpb.BeaconTask, error)

GetBeaconTaskContent - Get the content of a specific task

func (*Server) GetBeaconTasks added in v1.5.0

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 added in v1.5.0

func (rpc *Server) GetBeacons(ctx context.Context, req *commonpb.Empty) (*clientpb.Beacons, error)

GetBeacons - Get a list of beacons from the database

func (*Server) GetCompiler added in v1.4.18

func (rpc *Server) GetCompiler(ctx context.Context, _ *commonpb.Empty) (*clientpb.Compiler, error)

GetCompiler - Get information about the internal Go compiler and its configuration

func (*Server) GetEnv

func (rpc *Server) GetEnv(ctx context.Context, req *sliverpb.EnvReq) (*sliverpb.EnvInfo, error)

GetEnv - Retrieve the environment variables list from the current session

func (*Server) GetJobs

func (rpc *Server) GetJobs(ctx context.Context, _ *commonpb.Empty) (*clientpb.Jobs, error)

GetJobs - List jobs

func (*Server) GetOperators

func (s *Server) GetOperators(ctx context.Context, _ *commonpb.Empty) (*clientpb.Operators, error)

GetOperators - Get a list of operators

func (*Server) GetPrivs added in v1.4.21

func (rpc *Server) GetPrivs(ctx context.Context, req *sliverpb.GetPrivsReq) (*sliverpb.GetPrivs, error)

GetPrivs - gRPC interface to get privilege information from the current process

func (*Server) GetSessions

func (rpc *Server) GetSessions(ctx context.Context, _ *commonpb.Empty) (*clientpb.Sessions, error)

GetSessions - Get a list of sessions

func (*Server) GetSystem

func (rpc *Server) GetSystem(ctx context.Context, req *clientpb.GetSystemReq) (*sliverpb.GetSystem, error)

GetSystem - Attempt to get 'NT AUTHORITY/SYSTEM' access on a remote Windows system

func (*Server) GetVersion

func (rpc *Server) GetVersion(ctx context.Context, _ *commonpb.Empty) (*clientpb.Version, error)

GetVersion - Get the server version

func (*Server) HijackDLL added in v1.4.20

func (rpc *Server) HijackDLL(ctx context.Context, req *clientpb.DllHijackReq) (*clientpb.DllHijack, error)

HijackDLL - RPC call to automatically perform DLL hijacking attacks

func (*Server) Host added in v1.5.0

func (rpc *Server) Host(ctx context.Context, req *clientpb.Host) (*clientpb.Host, error)

Host - Host by ID

func (*Server) HostIOCRm added in v1.5.0

func (rpc *Server) HostIOCRm(ctx context.Context, req *clientpb.IOC) (*commonpb.Empty, error)

HostIOCRm - Remove a host from the database

func (*Server) HostRm added in v1.5.0

func (rpc *Server) HostRm(ctx context.Context, req *clientpb.Host) (*commonpb.Empty, error)

HostRm - Remove a host from the database

func (*Server) Hosts added in v1.5.0

func (rpc *Server) Hosts(ctx context.Context, _ *commonpb.Empty) (*clientpb.AllHosts, error)

Hosts - List all hosts

func (*Server) Ifconfig

func (rpc *Server) Ifconfig(ctx context.Context, req *sliverpb.IfconfigReq) (*sliverpb.Ifconfig, error)

Ifconfig - Get remote interface configurations

func (*Server) Impersonate

func (rpc *Server) Impersonate(ctx context.Context, req *sliverpb.ImpersonateReq) (*sliverpb.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) Kill added in v1.5.0

func (rpc *Server) Kill(ctx context.Context, kill *sliverpb.KillReq) (*commonpb.Empty, error)

Kill - Kill the implant proccess

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

func (rpc *Server) KillSession(ctx context.Context, kill *sliverpb.KillReq) (*commonpb.Empty, error)

KillSession - Kill a session

func (*Server) ListExtensions added in v1.5.0

func (rpc *Server) ListExtensions(ctx context.Context, req *sliverpb.ListExtensionsReq) (*sliverpb.ListExtensions, error)

ListExtensions lists the registered extensions

func (*Server) LootAdd added in v1.4.18

func (rpc *Server) LootAdd(ctx context.Context, lootReq *clientpb.Loot) (*clientpb.Loot, error)

LootAdd - Add loot

func (*Server) LootAll added in v1.4.18

func (rpc *Server) LootAll(ctx context.Context, _ *commonpb.Empty) (*clientpb.AllLoot, error)

LootAll - Get a list of all loot

func (*Server) LootAllOf added in v1.4.18

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 added in v1.4.18

func (rpc *Server) LootContent(ctx context.Context, lootReq *clientpb.Loot) (*clientpb.Loot, error)

LootContent - Get a list of all loot of a specific type

func (*Server) LootRm added in v1.4.18

func (rpc *Server) LootRm(ctx context.Context, lootReq *clientpb.Loot) (*commonpb.Empty, error)

LootRm - Remove loot

func (*Server) LootUpdate added in v1.4.18

func (rpc *Server) LootUpdate(ctx context.Context, lootReq *clientpb.Loot) (*clientpb.Loot, error)

LootUpdate - Update loot metadata

func (*Server) Ls

func (rpc *Server) Ls(ctx context.Context, req *sliverpb.LsReq) (*sliverpb.Ls, error)

Ls - List a directory

func (*Server) MakeToken

func (rpc *Server) MakeToken(ctx context.Context, req *sliverpb.MakeTokenReq) (*sliverpb.MakeToken, error)

MakeToken - Creates a new logon session to impersonate a user based on its credentials.

func (*Server) Migrate

func (rpc *Server) Migrate(ctx context.Context, req *clientpb.MigrateReq) (*sliverpb.Migrate, error)

Migrate - Migrate to a new process on the remote system (Windows only)

func (*Server) Mkdir

func (rpc *Server) Mkdir(ctx context.Context, req *sliverpb.MkdirReq) (*sliverpb.Mkdir, error)

Mkdir - Make a directory

func (*Server) MonitorStart added in v1.4.17

func (rpc *Server) MonitorStart(ctx context.Context, _ *commonpb.Empty) (*commonpb.Response, error)

func (*Server) MonitorStop added in v1.4.17

func (rpc *Server) MonitorStop(ctx context.Context, _ *commonpb.Empty) (*commonpb.Empty, error)

func (*Server) Msf

func (rpc *Server) Msf(ctx context.Context, req *clientpb.MSFReq) (*sliverpb.Task, error)

Msf - Helper function to execute MSF payloads on the remote system

func (*Server) MsfRemote

func (rpc *Server) MsfRemote(ctx context.Context, req *clientpb.MSFRemoteReq) (*sliverpb.Task, error)

MsfRemote - Inject an MSF payload into a remote process

func (*Server) MsfStage

func (rpc *Server) MsfStage(ctx context.Context, req *clientpb.MsfStagerReq) (*clientpb.MsfStager, error)

MsfStage - Generate a MSF compatible stage

func (*Server) Mv added in v1.5.10

func (rpc *Server) Mv(ctx context.Context, req *sliverpb.MvReq) (*sliverpb.Mv, error)

Mv - Move or rename a file

func (*Server) Netstat

func (rpc *Server) Netstat(ctx context.Context, req *sliverpb.NetstatReq) (*sliverpb.Netstat, error)

Netstat - List network connections on the remote system

func (*Server) OpenSession added in v1.5.0

func (rpc *Server) OpenSession(ctx context.Context, openSession *sliverpb.OpenSession) (*sliverpb.OpenSession, error)

OpenSession - Instruct beacon to open a new session on next checkin

func (*Server) Ping

func (rpc *Server) Ping(ctx context.Context, req *sliverpb.Ping) (*sliverpb.Ping, error)

Ping - Try to send a round trip message to the implant

func (*Server) PivotGraph added in v1.5.0

func (rpc *Server) PivotGraph(ctx context.Context, req *commonpb.Empty) (*clientpb.PivotGraph, error)

PivotGraph - Return the server's pivot graph

func (*Server) PivotSessionListeners added in v1.5.0

func (rpc *Server) PivotSessionListeners(ctx context.Context, req *sliverpb.PivotListenersReq) (*sliverpb.PivotListeners, error)

PivotSessionListeners - Get a list of all pivot listeners from an implant

func (*Server) PivotStartListener added in v1.5.0

func (rpc *Server) PivotStartListener(ctx context.Context, req *sliverpb.PivotStartListenerReq) (*sliverpb.PivotListener, error)

PivotStartListener - Instruct the implant to start a pivot listener

func (*Server) PivotStopListener added in v1.5.0

func (rpc *Server) PivotStopListener(ctx context.Context, req *sliverpb.PivotStopListenerReq) (*commonpb.Empty, error)

PivotStopListener - Instruct the implant to stop a pivot listener

func (*Server) Portfwd added in v1.4.12

func (s *Server) Portfwd(ctx context.Context, req *sliverpb.PortfwdReq) (*sliverpb.Portfwd, error)

Portfwd - Open an in-band port forward

func (*Server) ProcessDump

func (rpc *Server) ProcessDump(ctx context.Context, req *sliverpb.ProcessDumpReq) (*sliverpb.ProcessDump, error)

ProcessDump - Dump the memory of a remote process

func (*Server) Ps

func (rpc *Server) Ps(ctx context.Context, req *sliverpb.PsReq) (*sliverpb.Ps, error)

Ps - List the processes on the remote machine

func (*Server) Pwd

func (rpc *Server) Pwd(ctx context.Context, req *sliverpb.PwdReq) (*sliverpb.Pwd, error)

Pwd - Print working directory

func (*Server) Reconfigure added in v1.5.5

func (rpc *Server) Reconfigure(ctx context.Context, req *sliverpb.ReconfigureReq) (*sliverpb.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 added in v1.5.0

func (rpc *Server) RegisterExtension(ctx context.Context, req *sliverpb.RegisterExtensionReq) (*sliverpb.RegisterExtension, error)

RegisterExtension registers a new extension in the implant

func (*Server) RegistryCreateKey added in v1.4.4

func (rpc *Server) RegistryCreateKey(ctx context.Context, req *sliverpb.RegistryCreateKeyReq) (*sliverpb.RegistryCreateKey, error)

RegistryCreateKey - gRPC interface to create a registry key on a session

func (*Server) RegistryDeleteKey added in v1.5.0

func (rpc *Server) RegistryDeleteKey(ctx context.Context, req *sliverpb.RegistryDeleteKeyReq) (*sliverpb.RegistryDeleteKey, error)

RegistryDeleteKey - gRPC interface to delete a registry key on a session

func (*Server) RegistryListSubKeys added in v1.4.21

func (rpc *Server) RegistryListSubKeys(ctx context.Context, req *sliverpb.RegistrySubKeyListReq) (*sliverpb.RegistrySubKeyList, error)

RegistryListSubKeys - gRPC interface to list the sub keys of a registry key

func (*Server) RegistryListValues added in v1.4.21

func (rpc *Server) RegistryListValues(ctx context.Context, req *sliverpb.RegistryListValuesReq) (*sliverpb.RegistryValuesList, error)

RegistryListSubKeys - gRPC interface to list the sub keys of a registry key

func (*Server) RegistryRead added in v1.4.4

func (rpc *Server) RegistryRead(ctx context.Context, req *sliverpb.RegistryReadReq) (*sliverpb.RegistryRead, error)

RegistryRead - gRPC interface to read a registry key from a session

func (*Server) RegistryWrite added in v1.4.4

func (rpc *Server) RegistryWrite(ctx context.Context, req *sliverpb.RegistryWriteReq) (*sliverpb.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 *sliverpb.RemoveServiceReq) (*sliverpb.ServiceInfo, error)

RemoveService deletes a service from the remote system

func (*Server) Rename added in v1.5.5

func (rpc *Server) Rename(ctx context.Context, req *clientpb.RenameReq) (*commonpb.Empty, error)

Rename - Rename a beacon/session

func (*Server) RevToSelf

func (rpc *Server) RevToSelf(ctx context.Context, req *sliverpb.RevToSelfReq) (*sliverpb.RevToSelf, error)

RevToSelf - Revert process context to self

func (*Server) Rm

func (rpc *Server) Rm(ctx context.Context, req *sliverpb.RmReq) (*sliverpb.Rm, error)

Rm - Remove file or directory

func (*Server) RmBeacon added in v1.5.0

func (rpc *Server) RmBeacon(ctx context.Context, req *clientpb.Beacon) (*commonpb.Empty, error)

RmBeacon - Delete a beacon and any related tasks

func (*Server) RunAs

func (rpc *Server) RunAs(ctx context.Context, req *sliverpb.RunAsReq) (*sliverpb.RunAs, error)

RunAs - Run a remote process as a specific user

func (*Server) RunSSHCommand added in v1.4.18

func (rpc *Server) RunSSHCommand(ctx context.Context, req *sliverpb.SSHCommandReq) (*sliverpb.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 *sliverpb.ScreenshotReq) (*sliverpb.Screenshot, error)

Screenshot - Take a screenshot of the remote system

func (*Server) SetEnv added in v1.4.2

func (rpc *Server) SetEnv(ctx context.Context, req *sliverpb.SetEnvReq) (*sliverpb.SetEnv, error)

SetEnv - Set an environment variable

func (*Server) Shell

func (rpc *Server) Shell(ctx context.Context, req *sliverpb.ShellReq) (*sliverpb.Shell, error)

Shell - Open an interactive shell

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) Sideload

func (rpc *Server) Sideload(ctx context.Context, req *sliverpb.SideloadReq) (*sliverpb.Sideload, error)

Sideload - Sideload a DLL on the remote system (Windows only)

func (*Server) SocksProxy added in v1.5.0

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 *sliverpb.InvokeSpawnDllReq) (*sliverpb.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) StartService

func (rpc *Server) StartService(ctx context.Context, req *sliverpb.StartServiceReq) (*sliverpb.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 added in v1.4.9

func (rpc *Server) StartWGListener(ctx context.Context, req *clientpb.WGListenerReq) (*clientpb.WGListener, error)

StartWGListener - Start a Wireguard listener

func (*Server) StopService

func (rpc *Server) StopService(ctx context.Context, req *sliverpb.StopServiceReq) (*sliverpb.ServiceInfo, error)

StopService stops a remote service

func (*Server) Task

func (rpc *Server) Task(ctx context.Context, req *sliverpb.TaskReq) (*sliverpb.Task, error)

Task - Execute shellcode in-memory

func (*Server) Terminate

func (rpc *Server) Terminate(ctx context.Context, req *sliverpb.TerminateReq) (*sliverpb.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) UnsetEnv added in v1.4.15

func (rpc *Server) UnsetEnv(ctx context.Context, req *sliverpb.UnsetEnvReq) (*sliverpb.UnsetEnv, error)

UnsetEnv - Set an environment variable

func (*Server) Upload

func (rpc *Server) Upload(ctx context.Context, req *sliverpb.UploadReq) (*sliverpb.Upload, error)

Upload - Upload a file from the remote file system

func (*Server) WGListForwarders added in v1.4.12

func (rpc *Server) WGListForwarders(ctx context.Context, req *sliverpb.WGTCPForwardersReq) (*sliverpb.WGTCPForwarders, error)

WGAddForwarder - List wireguard forwarders

func (*Server) WGListSocksServers added in v1.4.12

func (rpc *Server) WGListSocksServers(ctx context.Context, req *sliverpb.WGSocksServersReq) (*sliverpb.WGSocksServers, error)

func (*Server) WGStartPortForward added in v1.4.12

func (rpc *Server) WGStartPortForward(ctx context.Context, req *sliverpb.WGPortForwardStartReq) (*sliverpb.WGPortForward, error)

WGStartPortForward - Start a port forward

func (*Server) WGStartSocks added in v1.4.12

func (rpc *Server) WGStartSocks(ctx context.Context, req *sliverpb.WGSocksStartReq) (*sliverpb.WGSocks, error)

WGAddForwarder - Add a TCP forwarder

func (*Server) WGStopPortForward added in v1.4.12

func (rpc *Server) WGStopPortForward(ctx context.Context, req *sliverpb.WGPortForwardStopReq) (*sliverpb.WGPortForward, error)

WGStopPortForward - Stop a port forward

func (*Server) WGStopSocks added in v1.4.12

func (rpc *Server) WGStopSocks(ctx context.Context, req *sliverpb.WGSocksStopReq) (*sliverpb.WGSocks, error)

WGStopForwarder - Stop a TCP forwarder

func (*Server) Website

func (rpc *Server) Website(ctx context.Context, req *clientpb.Website) (*clientpb.Website, error)

Website - Get one website

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 added in v1.2.0

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

func (*Server) Websites

func (rpc *Server) Websites(ctx context.Context, _ *commonpb.Empty) (*clientpb.Websites, error)

Websites - List existing websites

Jump to

Keyboard shortcuts

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