client

package
v1.0.10 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

View Source
var DefaultOptions = &Options{
	ServerURL:                "oast.pro,oast.live,oast.site,oast.online,oast.fun,oast.me",
	CorrelationIdLength:      settings.CorrelationIdLengthDefault,
	CorrelationIdNonceLength: settings.CorrelationIdNonceLengthDefault,
}

DefaultOptions is the default options for the interact client

Functions

func DescriptionQuery

func DescriptionQuery(options *Options, id string) ([]*communication.DescriptionEntry, error)

DescriptionQuery statelessly gets list of descriptions from server, does not require prior call to New

func InteractionQuery added in v1.0.7

func InteractionQuery(options *Options, id string) (*communication.PollResponse, error)

InteractionQuery statelessly gets list of interactions from server, does not require prior call to New

func SessionQuery

func SessionQuery(options *Options, from, to, desc string) ([]*communication.SessionEntry, error)

SessionQuery statelessly gets list of descriptions from server, does not require prior call to New

func SetDesc

func SetDesc(options *Options, payload string) error

SetDesc sets description for provided id

func SplitChunks

func SplitChunks(str string, chunkSize int) []string

Types

type Client

type Client struct {
	CorrelationIdNonceLength int
	// contains filtered or unexported fields
}

Client is a client for communicating with interactsh server instance.

func New

func New(options *Options) (*Client, error)

New creates a new client instance based on provided options

func (*Client) Close

func (c *Client) Close() error

Close closes the collaborator client and deregisters from the collaborator server if not explicitly asked by the user.

func (*Client) SaveSessionTo

func (c *Client) SaveSessionTo(filename string) error

func (*Client) StartPolling

func (c *Client) StartPolling(duration time.Duration, callback InteractionCallback)

StartPolling starts polling the server each duration and returns any events that may have been captured by the collaborator server.

func (*Client) StopPolling

func (c *Client) StopPolling()

StopPolling stops the polling to the interactsh server.

func (*Client) URL

func (c *Client) URL() string

URL returns a new URL that can be used for external interaction requests.

type InteractionCallback

type InteractionCallback func(interaction *communication.Interaction)

InteractionCallback is a callback function for a reported interaction

type Options

type Options struct {
	// ServerURL is the URL for the interactsh server.
	ServerURL string
	// Token if the server requires authentication
	Token string
	// DisableHTTPFallback determines if failed requests over https should not be retried over http
	DisableHTTPFallback bool
	// CorrelationIdLength of the preamble
	CorrelationIdLength int
	// CorrelationIdNonceLengthLength of the nonce
	CorrelationIdNonceLength int
	// HTTPClient use a custom http client
	HTTPClient *retryablehttp.Client
	// SessionInfo to resume an existing session
	SessionInfo *options.SessionInfo
	// Description of the session for future reference
	Description string
}

Options contains configuration options for interactsh client

Jump to

Keyboard shortcuts

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