Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RegisterFactory ¶
RegisterFactory registers a named C2 backend factory. Called from init() in each backend package.
Types ¶
type Backend ¶
type Backend interface {
Name() string
Setup(lhost string, lport int) error
GeneratePayload(targetOS, payloadType string) (string, error)
WaitForSession(timeout time.Duration) error
Shutdown() error
}
Backend is the interface for C2 integrations (built-in shell, Sliver, etc.).
type ImplantGenerator ¶
ImplantGenerator is an optional interface for backends that can produce raw implant binaries. The runner uses this to feed CmdStager delivery instead of single-shot payload commands.
type PayloadMap ¶ added in v0.1.4
PayloadMap is a map of payload names to generator functions.
type SessionBase ¶ added in v0.3.0
SessionBase provides default SessionHandler methods by wrapping a session.Manager. Embed in a listener to get Sessions, Interact, Kill, WaitForSession for free.
func (*SessionBase) Interact ¶ added in v0.3.0
func (b *SessionBase) Interact(id int) error
func (*SessionBase) Kill ¶ added in v0.3.0
func (b *SessionBase) Kill(id int) error
func (*SessionBase) Sessions ¶ added in v0.3.0
func (b *SessionBase) Sessions() []*session.Session
func (*SessionBase) ShutdownManager ¶ added in v0.3.0
func (b *SessionBase) ShutdownManager() error
func (*SessionBase) WaitForSession ¶ added in v0.3.0
func (b *SessionBase) WaitForSession(timeout time.Duration) error
type SessionHandler ¶
type SessionHandler interface {
Sessions() []*session.Session
Interact(id int) error
Kill(id int) error
}
SessionHandler is an optional interface for backends that support multiple concurrent sessions.
type Stager ¶
Stager is an optional interface for backends that stage implants over HTTP. Returns the staging URL; the runner builds the fetch command via pkg/payload.