enum

package
v3.5.2 Latest Latest
Warning

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

Go to latest
Published: Mar 22, 2020 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AddressManager added in v3.5.2

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

AddressManager handles the investigation of addresses associated with newly resolved FQDNs.

func NewAddressManager added in v3.5.2

func NewAddressManager(e *Enumeration) *AddressManager

NewAddressManager returns an initialized AddressManager.

func (*AddressManager) InputAddress added in v3.5.2

func (r *AddressManager) InputAddress(req *requests.AddrRequest)

InputAddress is unique to the AddressManager and uses the AddrRequest argument for reverse DNS queries in order to discover additional names in scope.

func (*AddressManager) InputName added in v3.5.2

func (r *AddressManager) InputName(req *requests.DNSRequest)

InputName implements the FQDNManager interface.

func (*AddressManager) OutputNames added in v3.5.2

func (r *AddressManager) OutputNames(num int) []*requests.DNSRequest

OutputNames implements the FQDNManager interface.

func (*AddressManager) Stop added in v3.5.2

func (r *AddressManager) Stop() error

Stop implements the FQDNManager interface.

type AlterationsManager added in v3.5.2

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

AlterationsManager handles the release of FQDNs generated by name alterations.

func NewAlterationsManager added in v3.5.2

func NewAlterationsManager(e *Enumeration) *AlterationsManager

NewAlterationsManager returns an initialized AlterationsManager.

func (*AlterationsManager) InputName added in v3.5.2

func (r *AlterationsManager) InputName(req *requests.DNSRequest)

InputName implements the FQDNManager interface.

func (*AlterationsManager) OutputNames added in v3.5.2

func (r *AlterationsManager) OutputNames(num int) []*requests.DNSRequest

OutputNames implements the FQDNManager interface.

func (*AlterationsManager) Stop added in v3.5.2

func (r *AlterationsManager) Stop() error

Stop implements the FQDNManager interface.

type BruteManager added in v3.5.2

type BruteManager struct {
	sync.Mutex
	// contains filtered or unexported fields
}

BruteManager handles the release of FQDNs generated by brute forcing.

func NewBruteManager added in v3.5.2

func NewBruteManager(e *Enumeration) *BruteManager

NewBruteManager returns an initialized BruteManager.

func (*BruteManager) InputName added in v3.5.2

func (r *BruteManager) InputName(req *requests.DNSRequest)

InputName implements the FQDNManager interface.

func (*BruteManager) OutputNames added in v3.5.2

func (r *BruteManager) OutputNames(num int) []*requests.DNSRequest

OutputNames implements the FQDNManager interface.

func (*BruteManager) Stop added in v3.5.2

func (r *BruteManager) Stop() error

Stop implements the FQDNManager interface.

type DomainManager added in v3.5.2

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

DomainManager handles the release of new domains names to data sources used in the enumeration.

func NewDomainManager added in v3.5.2

func NewDomainManager(e *Enumeration) *DomainManager

NewDomainManager returns an initialized DomainManager.

func (*DomainManager) InputName added in v3.5.2

func (r *DomainManager) InputName(req *requests.DNSRequest)

InputName implements the FQDNManager interface.

func (*DomainManager) OutputNames added in v3.5.2

func (r *DomainManager) OutputNames(num int) []*requests.DNSRequest

OutputNames implements the FQDNManager interface.

func (*DomainManager) Stop added in v3.5.2

func (r *DomainManager) Stop() error

Stop implements the FQDNManager interface.

type Enumeration

type Enumeration struct {
	// Information sent in the context
	Config *config.Config
	Bus    *eventbus.EventBus
	Sys    services.System

	// The channel and queue that will receive the results
	Output chan *requests.Output
	// contains filtered or unexported fields
}

Enumeration is the object type used to execute a DNS enumeration with Amass.

func NewEnumeration

func NewEnumeration(sys services.System) *Enumeration

NewEnumeration returns an initialized Enumeration that has not been started yet.

func (*Enumeration) DNSNamesRemaining

func (e *Enumeration) DNSNamesRemaining() int64

DNSNamesRemaining returns the number of discovered DNS names yet to be handled by the enumeration.

func (*Enumeration) Done

func (e *Enumeration) Done()

Done safely closes the done broadcast channel.

func (*Enumeration) Start

func (e *Enumeration) Start() error

Start begins the DNS enumeration process for the Amass Enumeration object.

type FQDNManager added in v3.5.2

type FQDNManager interface {
	// InputName shares a newly discovered FQDN with the NameManager
	InputName(req *requests.DNSRequest)

	// OutputNames requests new FQDNs from the NameManager
	OutputNames(num int) []*requests.DNSRequest

	Stop() error
}

FQDNManager is the object type for taking in, generating and providing new DNS FQDNs.

type GuessManager added in v3.5.2

type GuessManager struct {
	sync.Mutex
	// contains filtered or unexported fields
}

GuessManager handles the release of FQDNs generated from machine learning.

func NewGuessManager added in v3.5.2

func NewGuessManager(e *Enumeration) *GuessManager

NewGuessManager returns an initialized GuessManager.

func (*GuessManager) AddSubdomain added in v3.5.2

func (r *GuessManager) AddSubdomain(sub string)

AddSubdomain is unique to the GuessManager and allows newly discovered subdomain names to be shared with the MarkovModel object.

func (*GuessManager) InputName added in v3.5.2

func (r *GuessManager) InputName(req *requests.DNSRequest)

InputName implements the FQDNManager interface.

func (*GuessManager) OutputNames added in v3.5.2

func (r *GuessManager) OutputNames(num int) []*requests.DNSRequest

OutputNames implements the FQDNManager interface.

func (*GuessManager) Stop added in v3.5.2

func (r *GuessManager) Stop() error

Stop implements the FQDNManager interface.

type NameManager added in v3.5.2

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

NameManager handles the filtering and release of newly discovered FQDNs in the enumeration.

func NewNameManager added in v3.5.2

func NewNameManager(e *Enumeration) *NameManager

NewNameManager returns an initialized NameManager.

func (*NameManager) InputName added in v3.5.2

func (r *NameManager) InputName(req *requests.DNSRequest)

InputName implements the FQDNManager interface.

func (*NameManager) OutputNames added in v3.5.2

func (r *NameManager) OutputNames(num int) []*requests.DNSRequest

OutputNames implements the FQDNManager interface.

func (*NameManager) Stop added in v3.5.2

func (r *NameManager) Stop() error

Stop implements the FQDNManager interface.

type SubdomainManager added in v3.5.2

type SubdomainManager struct {
	sync.Mutex
	// contains filtered or unexported fields
}

SubdomainManager handles newly discovered proper subdomain names in the enumeration.

func NewSubdomainManager added in v3.5.2

func NewSubdomainManager(e *Enumeration) *SubdomainManager

NewSubdomainManager returns an initialized SubdomainManager.

func (*SubdomainManager) InputName added in v3.5.2

func (r *SubdomainManager) InputName(req *requests.DNSRequest)

InputName implements the FQDNManager interface.

func (*SubdomainManager) OutputNames added in v3.5.2

func (r *SubdomainManager) OutputNames(num int) []*requests.DNSRequest

OutputNames implements the FQDNManager interface.

func (*SubdomainManager) Stop added in v3.5.2

func (r *SubdomainManager) Stop() error

Stop implements the FQDNManager interface.

Jump to

Keyboard shortcuts

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