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
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
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
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.