Documentation ¶
Index ¶
- func C2Generator(abort <-chan struct{}, temporaryC2 ...string) <-chan *url.URL
- func GetInterval() int64
- func GetJitter() int64
- func GetMaxConnectionErrors() int
- func GetReconnectInterval() time.Duration
- func SetInterval(newInterval int64)
- func SetJitter(newJitter int64)
- func SetReconnectInterval(interval int64)
- func StartBeaconLoop(abort <-chan struct{}) <-chan *Beacon
- func StartConnectionLoop(abort <-chan struct{}, temporaryC2 ...string) <-chan *Connection
- type Beacon
- type BeaconCleanup
- type BeaconClose
- type BeaconInit
- type BeaconRecv
- type BeaconSend
- type BeaconStart
- type Connection
- type Start
- type Stop
- type Tunnel
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func C2Generator ¶
C2Generator - Creates a stream of C2 URLs based on a connection strategy
func GetInterval ¶
func GetInterval() int64
GetInterval - Get the beacon interval {{if .Config.IsBeacon}}
func GetMaxConnectionErrors ¶
func GetMaxConnectionErrors() int
GetMaxConnectionErrors - Parse the max connection errors inserted at compile-time
func GetReconnectInterval ¶
GetReconnectInterval - Parse the reconnect interval inserted at compile-time
func SetInterval ¶
func SetInterval(newInterval int64)
SetInterval - Set the interval value dynamically
func SetReconnectInterval ¶
func SetReconnectInterval(interval int64)
SetReconnectInterval - Runtime set the running reconnect interval
func StartBeaconLoop ¶
func StartBeaconLoop(abort <-chan struct{}) <-chan *Beacon
StartBeaconLoop - Starts the beacon loop generator
func StartConnectionLoop ¶
func StartConnectionLoop(abort <-chan struct{}, temporaryC2 ...string) <-chan *Connection
StartConnectionLoop - Starts the main connection loop
Types ¶
type Beacon ¶
type Beacon struct { Init BeaconInit Start BeaconStart Send BeaconSend Recv BeaconRecv Close BeaconClose Cleanup BeaconCleanup ActiveC2 string ProxyURL string }
Beacon - Abstract connection to the server
type BeaconCleanup ¶
type BeaconCleanup func() error
type BeaconClose ¶
type BeaconClose func() error
type BeaconInit ¶
type BeaconInit func() error
type BeaconRecv ¶
type BeaconSend ¶
type BeaconStart ¶
type BeaconStart func() error
type Connection ¶
type Connection struct { Send chan *pb.Envelope Recv chan *pb.Envelope IsOpen bool Start Start Stop Stop // contains filtered or unexported fields }
func (*Connection) AddTunnel ¶
func (c *Connection) AddTunnel(tun *Tunnel)
AddTunnel - Add tunnel to mapping
func (*Connection) ProxyURL ¶
func (c *Connection) ProxyURL() string
ProxyURL - Get the c2 URL of the connection
func (*Connection) RemoveTunnel ¶
func (c *Connection) RemoveTunnel(ID uint64)
RemoveTunnel - Add tunnel to mapping
func (*Connection) ReqResend ¶
func (c *Connection) ReqResend(data []byte)
func (*Connection) Tunnel ¶
func (c *Connection) Tunnel(ID uint64) *Tunnel
Tunnel - Add tunnel to mapping
type Tunnel ¶
type Tunnel struct { ID uint64 // Reader io.ReadCloser Readers []io.ReadCloser Writer io.WriteCloser // contains filtered or unexported fields }
Tunnel - Duplex byte read/write
func NewTunnel ¶
func NewTunnel(id uint64, writer io.WriteCloser, readers ...io.ReadCloser) *Tunnel
func (*Tunnel) IncReadSequence ¶
func (c *Tunnel) IncReadSequence()
func (*Tunnel) IncWriteSequence ¶
func (c *Tunnel) IncWriteSequence()
func (*Tunnel) ReadSequence ¶
func (*Tunnel) WriteSequence ¶
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
drivers/win/wininet
Code generated by tools/defines.go; DO NOT EDIT.
|
Code generated by tools/defines.go; DO NOT EDIT. |