Help us shape the future of Go! Take the 2026 Go Developer Survey

agent

package
v0.0.2 Latest Latest
Warning

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

Go to latest
Published: Nov 27, 2024 License: MIT Imports: 23 Imported by: 0

Documentation

Overview

Package passive provides capability for doing domain enumeration

Index

Constants

This section is empty.

Variables

View Source
var AllSources = map[string]source.Source{
	"bufferover":     &bufferover.Source{},
	"censys":         &censys.Source{},
	"dnsrepo":        &dnsrepo.Source{},
	"netlas":         &netlas.Source{},
	"waybackarchive": &waybackarchive.Source{},
	"whoisxmlapi":    &whoisxmlapi.Source{},
	"crtsh":          &crtsh.Source{},
	"dnsx":           &dnsxSrc.Source{},
	"whoxy":          &whoxy.Source{},
}

Functions

func ContainsAny

func ContainsAny[T comparable](s1, s2 []T) bool

ContainsAny checks if any of the elements in s2 are in s1

Types

type Agent

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

Agent is a struct for running domain enumeration against a given host. It wraps subscraping package and provides a layer to build upon.

func New

func New(sourceNames, excludedSourceNames []string, useAllSources bool, discoveryMode source.DiscoveryMode) *Agent

New creates a new agent for domain discovery

func (*Agent) EnumerateQueries

func (a *Agent) EnumerateQueries(query string, proxy string, rateLimit int, timeout int, maxEnumTime time.Duration, options ...EnumerateOption) chan source.Result

EnumerateQueries wraps EnumerateQueriesWithCtx with an empty context

func (*Agent) EnumerateQueriesWithCtx

func (a *Agent) EnumerateQueriesWithCtx(ctx context.Context, query string, proxy string, rateLimit int, timeout int, maxEnumTime time.Duration, options ...EnumerateOption) chan source.Result

EnumerateQueriesWithCtx enumerates all the domains for a given query

func (*Agent) GetStatistics

func (a *Agent) GetStatistics() map[string]source.Statistics

type CustomRateLimit

type CustomRateLimit struct {
	Custom mapsutil.SyncLockMap[string, uint]
}

type EnumerateOption

type EnumerateOption func(opts *EnumerationOptions)

func WithCustomRateLimit

func WithCustomRateLimit(crl *CustomRateLimit) EnumerateOption

type EnumerationOptions

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

Jump to

Keyboard shortcuts

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