Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( UncoverConfigDir = folderutil.AppConfigDirOrDefault(".uncover-config", "uncover") // DefaultProviderConfigLocation where keys and config of providers are stored DefaultProviderConfigLocation = filepath.Join(UncoverConfigDir, "provider-config.yaml") )
View Source
var DefaultRateLimits = map[string]*ratelimit.Options{ "shodan": {Key: "shodan", MaxCount: 1, Duration: time.Second}, "shodan-idb": {Key: "shodan-idb", MaxCount: 1, Duration: time.Second}, "fofa": {Key: "fofa", MaxCount: 1, Duration: time.Second}, "censys": {Key: "censys", MaxCount: 1, Duration: 3 * time.Second}, "quake": {Key: "quake", MaxCount: 1, Duration: time.Second}, "hunter": {Key: "hunter", MaxCount: 15, Duration: time.Second}, "zoomeye": {Key: "zoomeye", MaxCount: 1, Duration: time.Second}, "netlas": {Key: "netlas", MaxCount: 1, Duration: time.Second}, "criminalip": {Key: "criminalip", MaxCount: 1, Duration: time.Second}, "publicwww": {Key: "publicwww", MaxCount: 1, Duration: time.Minute}, "hunterhow": {Key: "hunterhow", MaxCount: 1, Duration: 3 * time.Second}, "google": {Key: "google", MaxCount: 1, Duration: 3 * time.Second}, }
DefaultRateLimits of all/most of sources are hardcoded by default to improve performance engine is not present in default ratelimits then user given ratelimit from cli options is used
Functions ¶
func GetHostname ¶
Types ¶
type Keys ¶
type Keys struct { CensysToken string CensysSecret string Shodan string FofaEmail string FofaKey string QuakeToken string HunterToken string ZoomEyeHost string ZoomEyeToken string NetlasToken string CriminalIPToken string PublicwwwToken string HunterHowToken string GoogleKey string GoogleCX string }
type Provider ¶
type Provider struct { Shodan []string `yaml:"shodan"` Censys []string `yaml:"censys"` Fofa []string `yaml:"fofa"` Quake []string `yaml:"quake"` Hunter []string `yaml:"hunter"` ZoomEye []string `yaml:"zoomeye"` Netlas []string `yaml:"netlas"` CriminalIP []string `yaml:"criminalip"` Publicwww []string `yaml:"publicwww"` HunterHow []string `yaml:"hunterhow"` Google []string `yaml:"google"` }
func NewProvider ¶
func NewProvider() *Provider
NewProvider loads provider keys from default location and env variables
func (*Provider) LoadProviderConfig ¶
LoadProvidersFrom loads provider config from given location
func (*Provider) LoadProviderKeysFromEnv ¶
func (provider *Provider) LoadProviderKeysFromEnv()
LoadProviderKeysFromEnv loads provider keys from env variables
type Result ¶
type Session ¶
type Session struct { Keys *Keys Client *retryablehttp.Client RetryMax int RateLimits *ratelimit.MultiLimiter }
Session handles session agent sessions
func NewSession ¶
Click to show internal directories.
Click to hide internal directories.