messages

package
v0.0.0-...-3f53568 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 5, 2023 License: MIT Imports: 5 Imported by: 0

README

Messages

This contains the source file with all structs definitions for "messages" that are exchanged by the framework.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type C2Message

type C2Message struct {
	Message      interface{} `json:"message"`
	HMAC         string      `json:"hmac"`
	Type         string      `json:"type"`
	ListenerUUID uuid.UUID   `json:"uuid"`
	ListenerType string      `json:"ltype"`
}

A message from implant to listener

type Implant

type Implant struct {
	UUID          uuid.UUID     `json:"uuid"`
	CWD           string        `json:"cwd"`
	OS            string        `json:"os"`
	Arch          string        `json:"arch"`
	Jitter        int           `json:"jitter"`
	UserID        string        `json:"userid"`
	Hostname      string        `json:"hostname"`
	FailedCheckIn int           `json:"failedcheckin"`
	MaxRetry      int           `json:"maxretry"`
	PID           int           `json:"pid"`
	PPID          int           `json:"ppid"`
	Username      string        `json:"username"`
	SleepTime     time.Duration `json:"sleeptime"`
	ListenerUUID  uuid.UUID     `json:"luuid,omitempty"`
	Status        string        `json:"status"`
	KillDate      int64         `json:"killdate"`
	Type          string        `json:"type"`
}

Describes the implants details to be exchanged with the client

func (*Implant) PrintImplantInfo

func (implant *Implant) PrintImplantInfo()

Method to print implant's info

func (*Implant) PrintSysInfo

func (implant *Implant) PrintSysInfo()

Method to print system info for implant

type Listener

type Listener struct {
	Type    string    `json:"type"`
	UUID    uuid.UUID `json:"uuid,omitempty"`
	AESKey  string    `json:"aeskey,omitempty"`
	HMACKey string    `json:"hmackey,omitempty"`
}

A Listener message

type Login

type Login struct {
	Username string `json:"username"`
	Password string `json:"password"`
}

Login message

type Message

type Message struct {
	Message      interface{} `json:"message"`
	Type         string      `json:"type,omitempty"`
	ListenerUUID uuid.UUID   `json:"listener_uuid,omitempty"`
}

A default message type

type NewOperator

type NewOperator struct {
	AdminUsername string `json:"admin_username"`
	AdminPassword string `json:"admin_password"`
	NewUsername   string `json:"operator_username"`
	NewPassword   string `json:"operator_password"`
}

Admin can use this to register a new user

type Task

type Task struct {
	Type         string    `json:"type,omitempty"`
	UUID         uuid.UUID `json:"uuid,omitempty"`
	Args         []string  `json:"args,omitempty"`
	Result       string    `json:"result,omitempty"`
	ListenerUUID uuid.UUID `json:"luuid,omitempty"`
	ImplantUUID  uuid.UUID `json:"iuuid,omitempty"`
	Success      bool      `json:"success,omitempty"`
	Date         string    `json:"date,omitempty"`
}

A task for the implant

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL