Versions in this module Expand all Collapse all v1 v1.5.34 Feb 5, 2023 Changes in this version + const PivotTransportName + var Clients = &clients + var ErrDuplicateExternalBuilderName = errors.New("builder name must be unique, this name is already in use") + var ErrImplantTimeout = errors.New("implant timeout") + var ErrInvalidTunnelID = errors.New("invalid tunnel ID") + var ErrUnknownMessageType = errors.New("unknown message type") + var EventBroker = newBroker() + var Jobs = &jobs + var PivotSessions = &sync.Map + var Sessions = &sessions + var SocksTunnels = tcpTunnel + var Tunnels = tunnels + func AddBuilder(builder *clientpb.Builder) error + func AllBuilders() []*clientpb.Builder + func EnvelopeID() int64 + func GetBuilder(builderName string) *clientpb.Builder + func NewTunnelID() uint64 + func NextJobID() int + func RemoveBuilder(builderName string) + func StartEventAutomation() + type Client struct + ID int + Operator *clientpb.Operator + func NewClient(operatorName string) *Client + func (c *Client) ToProtobuf() *clientpb.Client + type Event struct + Beacon *models.Beacon + Client *Client + Data []byte + Err error + EventType string + Job *Job + Session *Session + type ImplantConnection struct + Cleanup func() + ID string + LastMessage time.Time + LastMessageMutex *sync.RWMutex + RemoteAddress string + Resp map[int64]chan *sliverpb.Envelope + RespMutex *sync.RWMutex + Send chan *sliverpb.Envelope + Transport string + func NewImplantConnection(transport string, remoteAddress string) *ImplantConnection + func (c *ImplantConnection) GetLastMessage() time.Time + func (c *ImplantConnection) RequestResend(data []byte) + func (c *ImplantConnection) UpdateLastMessage() + type Job struct + Description string + Domains []string + ID int + JobCtrl chan bool + Name string + PersistentID string + Port uint16 + Protocol string + func (j *Job) ToProtobuf() *clientpb.Job + type Pivot struct + CipherCtx *cryptography.CipherContext + ID string + ImmediateImplantConn *ImplantConnection + ImplantConn *ImplantConnection + OriginID int64 + Peers []*sliverpb.PivotPeer + func NewPivotSession(chain []*sliverpb.PivotPeer) *Pivot + func (p *Pivot) Start() + type PivotGraphEntry struct + Children map[int64]*PivotGraphEntry + Name string + PeerID int64 + SessionID string + func PivotGraph() []*PivotGraphEntry + func (e *PivotGraphEntry) AllChildren() []*PivotGraphEntry + func (e *PivotGraphEntry) FindEntryByPeerID(peerID int64) *PivotGraphEntry + func (e *PivotGraphEntry) Insert(input *PivotGraphEntry) + func (e *PivotGraphEntry) ToProtobuf() *clientpb.PivotGraphEntry + type Session struct + ActiveC2 string + Arch string + Burned bool + ConfigID string + Connection *ImplantConnection + Extensions []string + Filename string + FirstContact int64 + GID string + Hostname string + ID string + Locale string + Name string + OS string + PID int32 + PeerID int64 + PollTimeout int64 + ProxyURL string + ReconnectInterval int64 + UID string + UUID string + Username string + Version string + func NewSession(implantConn *ImplantConnection) *Session + func (s *Session) IsDead() bool + func (s *Session) LastCheckin() time.Time + func (s *Session) Request(msgType uint32, timeout time.Duration, data []byte) ([]byte, error) + func (s *Session) ToProtobuf() *clientpb.Session + type TcpTunnel struct + Client rpcpb.SliverRPC_SocksProxyServer + FromImplant chan *sliverpb.SocksData + FromImplantSequence uint64 + ID uint64 + SessionID string + ToImplantMux sync.Mutex + ToImplantSequence uint64 + type Tunnel struct + Client rpcpb.SliverRPC_TunnelDataServer + FromImplant chan *sliverpb.TunnelData + FromImplantSequence uint64 + ID uint64 + SessionID string + ToImplant chan []byte + ToImplantSequence uint64 + func NewTunnel(id uint64, sessionID string) *Tunnel + func (t *Tunnel) GetLastMessageTime() time.Time + func (t *Tunnel) SendDataFromImplant(tunnelData *sliverpb.TunnelData) v1.2.8-test Feb 5, 2023 v0 v0.0.5-alpha May 31, 2019