manual

package
v0.0.0-...-bf5dde6 Latest Latest
Warning

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

Go to latest
Published: May 29, 2024 License: GPL-3.0 Imports: 21 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Fuzz

func Fuzz(input RequestFuzzOptions, taskID uint) (int, error)

func InsertPayloadIntoRawRequest

func InsertPayloadIntoRawRequest(raw string, point FuzzerInsertionPoint, payload string) string

func LaunchUserBrowser

func LaunchUserBrowser(workspaceID uint, initialURL string)

LaunchUserBrowser launches a browser in non headless mode and logs all network requests

Types

type FilesystemWordlistStorage

type FilesystemWordlistStorage struct {
	// contains filtered or unexported fields
}

func NewFilesystemWordlistStorage

func NewFilesystemWordlistStorage() *FilesystemWordlistStorage

func (*FilesystemWordlistStorage) GetWordlists

func (s *FilesystemWordlistStorage) GetWordlists() ([]Wordlist, error)

type FuzzerInsertionPoint

type FuzzerInsertionPoint struct {
	Start         int                   `json:"start"`
	End           int                   `json:"end"`
	OriginalValue string                `json:"originalValue"`
	PayloadGroups []FuzzerPayloadsGroup `json:"payloadGroups"`
}

type FuzzerPayloadsGroup

type FuzzerPayloadsGroup struct {
	Payloads   []string `json:"payloads"`
	Type       string   `json:"type"`
	Processors []string `` /* 156-byte string literal not displayed */
	Wordlist   string   `json:"wordlist,omitempty"`
}

type ReplayResult

type ReplayResult struct {
	Result *db.History `json:"result"`
}

func Replay

func Replay(input RequestReplayOptions) (ReplayResult, error)

type Request

type Request struct {
	URL         string              `json:"url" validate:"required"`
	URI         string              `json:"uri" validate:"omitempty"`
	Method      string              `json:"method" validate:"required"`
	Headers     map[string][]string `json:"headers" validate:"required"`
	Body        string              `json:"body" validate:"omitempty"`
	HTTPVersion string              `json:"http_version" validate:"omitempty"`
}

func ParseRawRequest

func ParseRawRequest(raw string, targetURL string) (*Request, error)

ParseRawRequest parses a raw HTTP request and returns a Request struct

type RequestFuzzOptions

type RequestFuzzOptions struct {
	URL             string                 `json:"url" validate:"required"`
	Raw             string                 `json:"raw" validate:"required"`
	InsertionPoints []FuzzerInsertionPoint `json:"insertion_points" validate:"required"`
	Session         db.PlaygroundSession   `json:"session" validate:"required"`
	Options         RequestOptions         `json:"options"`
}

type RequestOptions

type RequestOptions struct {
	FollowRedirects     bool `json:"follow_redirects"`
	MaxRedirects        int  `json:"max_redirects" validate:"min=0"`
	UpdateHostHeader    bool `json:"update_host_header"`
	UpdateContentLength bool `json:"update_content_length"`
}

func (*RequestOptions) ToRawHTTPOptions

func (o *RequestOptions) ToRawHTTPOptions() *rawhttp.Options

type RequestReplayOptions

type RequestReplayOptions struct {
	Request Request              `json:"request" validate:"required"`
	Session db.PlaygroundSession `json:"session" validate:"required"`
	Options RequestOptions       `json:"options"`
}

type Wordlist

type Wordlist struct {
	ID        string `json:"id"`
	Name      string `json:"name"`
	SizeBytes int64  `json:"size_bytes"`
	SizeHuman string `json:"size_human"`
}

type WordlistStorage

type WordlistStorage interface {
	GetWordlists() ([]Wordlist, error)
}

Jump to

Keyboard shortcuts

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