runner

package
v0.1.18 Latest Latest
Warning

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

Go to latest
Published: Jul 2, 2025 License: BSD-2-Clause Imports: 22 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ContainsCloudProduct

func ContainsCloudProduct(s string) (bool, string, string)

func ContainsDatacenter added in v0.1.14

func ContainsDatacenter(s string) (bool, string, string)

func ContainsSaaS added in v0.1.13

func ContainsSaaS(s string) (bool, string, string)

Types

type DnsOverHttps

type DnsOverHttps struct {

	// Don't write HTML response content
	SkipSSLCheck bool

	// Proxy server to use
	Proxy string

	ProxyUser     string
	ProxyPassword string

	// UserAgent is the user-agent string to set for Chrome
	UserAgent string
	// Headers to add to every request
	Headers []string
}

DNS Over HTTPs related options

type Logging

type Logging struct {
	// Debug display debug level logging
	Debug bool
	// LogScanErrors log errors related to scanning
	LogScanErrors bool
	// Silence all logging
	Silence bool
}

Logging is log related options

type Options

type Options struct {
	// Logging is logging options
	Logging Logging
	// DNS Over HTTPs related options
	DnsOverHttps DnsOverHttps
	// Writer is output options
	Writer Writer
	// Scan is typically Scan options
	Scan Scan
	//
	DnsSuffix string

	//
	DnsServer   string
	DnsPort     int
	DnsProtocol string
	PrivateDns  bool

	Proxy *url.URL

	Quick                bool
	StoreTempAsWorkspace bool
	LocalWorkspace       bool
}

Options are global github.com/helviojunior/enumdnsenumdns options

func NewDefaultOptions

func NewDefaultOptions() *Options

NewDefaultOptions returns Options with some default values

type Recon added in v0.1.7

type Recon struct {

	// DNS FQDN to scan.
	Targets chan string

	//Running
	Running bool

	Domains []string
	// contains filtered or unexported fields
}

Runner is a runner that probes web targets using a driver

func NewRecon added in v0.1.7

func NewRecon(logger *slog.Logger, opts Options, writers []writers.Writer) (*Recon, error)

New gets a new Recon ready for probing. It's up to the caller to call Close() on the runner

func (*Recon) Close added in v0.1.7

func (run *Recon) Close()

func (*Recon) GetSOAName added in v0.1.7

func (run *Recon) GetSOAName(host string) (string, error)

func (*Recon) Probe added in v0.1.7

func (run *Recon) Probe(host string, customTypes *[]uint16) []*models.Result

func (*Recon) Reset added in v0.1.8

func (run *Recon) Reset()

func (*Recon) Run added in v0.1.7

func (run *Recon) Run(total int)

type Runner

type Runner struct {

	// DNS FQDN to scan.
	Targets chan string
	// contains filtered or unexported fields
}

Runner is a runner that probes web targets using a driver

func NewRunner

func NewRunner(logger *slog.Logger, opts Options, writers []writers.Writer) (*Runner, error)

New gets a new Runner ready for probing. It's up to the caller to call Close() on the runner

func (*Runner) AddSkiped

func (run *Runner) AddSkiped()

func (*Runner) Close

func (run *Runner) Close()

func (*Runner) GetLog added in v0.1.8

func (run *Runner) GetLog() *slog.Logger

func (*Runner) Probe

func (run *Runner) Probe(host string, searchOrder []uint16) []*models.Result

func (*Runner) Run

func (run *Runner) Run(total int) Status

type Scan

type Scan struct {
	// Threads (not really) are the number of goroutines to use.
	// More soecifically, its the go-rod page pool well use.
	Threads int
	// Timeout is the maximum time to wait for a page load before timing out.
	Timeout int
	// Number of seconds of delay between navigation and screenshotting
	Delay int
}

Scan is scanning related options

type Status

type Status struct {
	Total      int
	Complete   int
	Skiped     int
	Error      int
	Spin       string
	Running    bool
	IsTerminal bool
	// contains filtered or unexported fields
}

func (*Status) AddResult

func (st *Status) AddResult(result *models.Result)

func (*Status) Print

func (st *Status) Print()

type Writer

type Writer struct {
	UserPath    string
	Db          bool
	DbURI       string
	DbDebug     bool // enables verbose database logs
	Csv         bool
	CsvFile     string
	Jsonl       bool
	JsonlFile   string
	ELastic     bool
	ELasticURI  string
	Text        bool
	TextFile    string
	Stdout      bool
	None        bool
	NoControlDb bool
	CtrlDbURI   string
}

Writer options

Jump to

Keyboard shortcuts

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