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}, "odin": {Key: "odin", MaxCount: 1, Duration: time.Second}, "binaryedge": {Key: "binaryedge", MaxCount: 1, Duration: 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 OdinToken string BinaryEdgeToken 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"` Odin []string `yaml:"odin"` BinaryEdge []string `yaml:"binaryedge"` }
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.