Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( // Clients - Manages client connections Clients = &clientConns{ Connections: &map[int]*Client{}, mutex: &sync.RWMutex{}, } )
View Source
var (
// EventBroker - Distributes event messages
EventBroker = newBroker()
)
View Source
var ( // Hive - Manages sliver connections Hive = &SliverHive{ Slivers: &map[uint32]*Sliver{}, mutex: &sync.RWMutex{}, } )
View Source
var ( // Jobs - Holds pointers to all the current jobs Jobs = &jobs{ Active: &map[int]*Job{}, mutex: &sync.RWMutex{}, } )
View Source
var ( // Tunnels - Interating with duplex tunnels Tunnels = tunnels{ // contains filtered or unexported fields } )
Functions ¶
Types ¶
type Client ¶
type Client struct { ID int Operator string Certificate *x509.Certificate Send chan *sliverpb.Envelope Resp map[uint64]chan *sliverpb.Envelope // contains filtered or unexported fields }
Client - Single client connection
func GetClient ¶
func GetClient(certificate *x509.Certificate) *Client
GetClient - Create a new client object
func (*Client) ToProtobuf ¶
ToProtobuf - Get the protobuf version of the object
type Job ¶
type Job struct { ID int Name string Description string Protocol string Port uint16 JobCtrl chan bool }
Job - Manages background jobs
func (*Job) ToProtobuf ¶
ToProtobuf - Get the protobuf version of the object
type Sliver ¶
type Sliver struct { ID uint32 Name string Hostname string Username string UID string GID string Os string Arch string Transport string RemoteAddress string PID int32 Filename string LastCheckin *time.Time Send chan *sliverpb.Envelope Resp map[uint64]chan *sliverpb.Envelope RespMutex *sync.RWMutex ActiveC2 string }
Sliver implant
func (*Sliver) Request ¶
Request - Sends a protobuf request to the active sliver and returns the response
func (*Sliver) ToProtobuf ¶
ToProtobuf - Get the protobuf version of the object
type SliverHive ¶
SliverHive - Mananges the slivers, provides atomic access
func (*SliverHive) AddSliver ¶
func (h *SliverHive) AddSliver(sliver *Sliver)
AddSliver - Add a sliver to the hive (atomically)
func (*SliverHive) RemoveSliver ¶
func (h *SliverHive) RemoveSliver(sliver *Sliver)
RemoveSliver - Add a sliver to the hive (atomically)
func (*SliverHive) Sliver ¶
func (h *SliverHive) Sliver(sliverID uint32) *Sliver
Sliver - Get Sliver by ID
Click to show internal directories.
Click to hide internal directories.