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.