plugins

package
v0.0.7 Latest Latest
Warning

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

Go to latest
Published: Dec 12, 2025 License: MIT Imports: 13 Imported by: 0

Documentation

Index

Constants

View Source
const (
	FofaFields = "ip,port,base_protocol,protocol,domain,host,title,product,lastupdatetime"
	FofaSize   = 1000
)
View Source
const (
	ZoomeyeSize   = 30
	ZoomeyeFields = "ip,port,domain,url,hostname,service,title,product,update_time"
)
View Source
const (
	HunterSize = 100
)
View Source
const (
	QuakeSize = 500
)
View Source
const (
	ShodanSize = 100
)

Variables

View Source
var Plugins = make(map[string]Plugin)

Functions

This section is empty.

Types

type AlienVault added in v0.0.7

type AlienVault struct{}

func (AlienVault) Name added in v0.0.7

func (f AlienVault) Name() string

func (AlienVault) QueryAsset added in v0.0.7

func (f AlienVault) QueryAsset(ctx context.Context, session *sources.Session, query interface{}) (chan sources.Result, error)

QueryAsset 不支持资产测绘

func (AlienVault) QuerySubdomain added in v0.0.7

func (f AlienVault) QuerySubdomain(ctx context.Context, session *sources.Session, domain string) (chan string, error)

QuerySubdomain 子域名收集

func (AlienVault) VerifyKeys added in v0.0.7

func (f AlienVault) VerifyKeys(session *sources.Session) []config.KeyStatus

VerifyKeys 验证 AlienVault API 密钥

type CrtSh added in v0.0.7

type CrtSh struct{}

func (CrtSh) Name added in v0.0.7

func (f CrtSh) Name() string

func (CrtSh) QueryAsset added in v0.0.7

func (f CrtSh) QueryAsset(ctx context.Context, session *sources.Session, query interface{}) (chan sources.Result, error)

QueryAsset 不支持资产测绘

func (CrtSh) QuerySubdomain added in v0.0.7

func (f CrtSh) QuerySubdomain(ctx context.Context, session *sources.Session, domain string) (chan string, error)

QuerySubdomain 子域名收集(无需凭据)

func (CrtSh) VerifyKeys added in v0.0.7

func (f CrtSh) VerifyKeys(session *sources.Session) []config.KeyStatus

VerifyKeys 无需凭据

type Fofa

type Fofa struct {
	Email string
	Key   string
	// contains filtered or unexported fields
}

func (Fofa) Name

func (f Fofa) Name() string

func (Fofa) QueryAsset added in v0.0.7

func (f Fofa) QueryAsset(ctx context.Context, session *sources.Session, query interface{}) (chan sources.Result, error)

func (Fofa) QuerySubdomain added in v0.0.7

func (f Fofa) QuerySubdomain(ctx context.Context, session *sources.Session, domain string) (chan string, error)

QuerySubdomain 子域名收集

func (Fofa) VerifyKeys added in v0.0.7

func (f Fofa) VerifyKeys(session *sources.Session) []config.KeyStatus

VerifyKeys 验证 FOFA API 密钥

type FofaResponse

type FofaResponse struct {
	Error   bool       `json:"error"`
	ErrMsg  string     `json:"errmsg"`
	Mode    string     `json:"mode"`
	Page    int        `json:"page"`
	Query   string     `json:"query"`
	Results [][]string `json:"results"`
	Size    int        `json:"size"`
}

FofaResponse contains the fofa response

type Hunter

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

func (Hunter) Name

func (f Hunter) Name() string

func (Hunter) QueryAsset added in v0.0.7

func (f Hunter) QueryAsset(ctx context.Context, session *sources.Session, query interface{}) (chan sources.Result, error)

func (Hunter) QuerySubdomain added in v0.0.7

func (f Hunter) QuerySubdomain(ctx context.Context, session *sources.Session, domain string) (chan string, error)

QuerySubdomain 不支持子域名收集

func (Hunter) VerifyKeys added in v0.0.7

func (f Hunter) VerifyKeys(session *sources.Session) []config.KeyStatus

VerifyKeys 验证 Hunter API 密钥

type HunterResponse

type HunterResponse struct {
	Code int `json:"code"`
	Data struct {
		AccountType string `json:"account_type"`
		Total       int    `json:"total"`
		Time        int    `json:"time"`
		Arr         []struct {
			IP           string `json:"ip"`
			Port         int    `json:"port"`
			Domain       string `json:"domain"`
			BaseProtocol string `json:"base_protocol"`
			Protocol     string `json:"protocol"`
			UpdatedAt    string `json:"updated_at"`
			Url          string `json:"url"`
			WebTitle     string `json:"web_title"`
		} `json:"arr"`
		ConsumeQuota string `json:"consume_quota"`
		RestQuota    string `json:"rest_quota"`
	} `json:"data"`
	Msg string `json:"message"`
}

type Plugin

type Plugin interface {
	Name() string
	QueryAsset(context.Context, *sources.Session, interface{}) (chan sources.Result, error)
	QuerySubdomain(context.Context, *sources.Session, string) (chan string, error)
	VerifyKeys(*sources.Session) []config.KeyStatus
}

Plugin 统一插件接口

type Quake

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

func (Quake) Name

func (f Quake) Name() string

func (Quake) QueryAsset added in v0.0.7

func (f Quake) QueryAsset(ctx context.Context, session *sources.Session, query interface{}) (chan sources.Result, error)

func (Quake) QuerySubdomain added in v0.0.7

func (f Quake) QuerySubdomain(ctx context.Context, session *sources.Session, domain string) (chan string, error)

QuerySubdomain 子域名收集

func (Quake) VerifyKeys added in v0.0.7

func (f Quake) VerifyKeys(session *sources.Session) []config.KeyStatus

VerifyKeys 验证 Quake API 密钥

type QuakeRequest

type QuakeRequest struct {
	Query       string   `json:"query"`
	Size        int      `json:"size"`
	Start       int      `json:"start"`
	IgnoreCache bool     `json:"ignore_cache"`
	Include     []string `json:"include,omitempty"`
	Exclude     []string `json:"exclude,omitempty"`
}

type QuakeResponse

type QuakeResponse struct {
	Code    interface{} `json:"code"`
	Data    interface{} `json:"data"`
	Message string      `json:"message"`
	Meta    struct {
		Pagination struct {
			Count     int `json:"count"`
			PageIndex int `json:"page_index"`
			PageSize  int `json:"page_size"`
			Total     int `json:"total"`
		} `json:"pagination"`
	} `json:"meta"`
}

type Shodan

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

func (Shodan) Name

func (f Shodan) Name() string

func (Shodan) QueryAsset added in v0.0.7

func (f Shodan) QueryAsset(ctx context.Context, session *sources.Session, query interface{}) (chan sources.Result, error)

func (Shodan) QuerySubdomain added in v0.0.7

func (f Shodan) QuerySubdomain(ctx context.Context, session *sources.Session, domain string) (chan string, error)

QuerySubdomain 子域名收集

func (Shodan) VerifyKeys added in v0.0.7

func (f Shodan) VerifyKeys(session *sources.Session) []config.KeyStatus

VerifyKeys 验证 Shodan API 密钥

type ShodanResponse

type ShodanResponse struct {
	Total int `json:"total"`
	//Results []map[string]interface{} `json:"matches"`
	Results []struct {
		IP        string   `json:"ip_str"`
		Port      int      `json:"port"`
		Transport string   `json:"transport"`
		Hostname  []string `json:"hostname"`
		Product   string   `json:"product"`
		Http      struct {
			Host  string `json:"host"`
			Title string `json:"title"`
		}
		SSL struct {
			Chain []string `json:"chain"`
		} `json:"ssl"`
		Timestamp string `json:"timestamp"`
	} `json:"matches"`
}

type VirusTotal added in v0.0.7

type VirusTotal struct{}

func (VirusTotal) Name added in v0.0.7

func (f VirusTotal) Name() string

func (VirusTotal) QueryAsset added in v0.0.7

func (f VirusTotal) QueryAsset(ctx context.Context, session *sources.Session, query interface{}) (chan sources.Result, error)

QueryAsset 不支持资产测绘

func (VirusTotal) QuerySubdomain added in v0.0.7

func (f VirusTotal) QuerySubdomain(ctx context.Context, session *sources.Session, domain string) (chan string, error)

QuerySubdomain 子域名收集

func (VirusTotal) VerifyKeys added in v0.0.7

func (f VirusTotal) VerifyKeys(session *sources.Session) []config.KeyStatus

VerifyKeys 验证 VirusTotal API 密钥

type ZoomEyeRequest added in v0.0.6

type ZoomEyeRequest struct {
	QBase64  string `json:"qbase64"`
	Page     int    `json:"page"`
	PageSize int    `json:"pagesize"`
	Fields   string `json:"fields"`
}

type ZoomEyeResponse added in v0.0.6

type ZoomEyeResponse struct {
	Code    int    `json:"code"`
	Message string `json:"message"`
	Total   int    `json:"total"`
	Query   string `json:"query"`
	Data    []struct {
		Url                 string   `json:"url"`
		SslJarm             string   `json:"ssl.jarm"`
		SslJa3S             string   `json:"ssl.ja3s"`
		IconhashMd5         string   `json:"iconhash_md5"`
		RobotsMd5           string   `json:"robots_md5"`
		SecurityMd5         string   `json:"security_md5"`
		Ip                  string   `json:"ip"`
		Domain              string   `json:"domain"`
		Hostname            string   `json:"hostname"`
		Os                  string   `json:"os"`
		Port                int      `json:"port"`
		Service             string   `json:"service"`
		Title               []string `json:"title"`
		Version             string   `json:"version"`
		Device              string   `json:"device"`
		Rdns                string   `json:"rdns"`
		Product             string   `json:"product"`
		Header              string   `json:"header"`
		HeaderHash          string   `json:"header_hash"`
		Body                string   `json:"body"`
		BodyHash            string   `json:"body_hash"`
		Banner              string   `json:"banner"`
		UpdateTime          string   `json:"update_time"`
		HeaderServerName    string   `json:"header.server.name"`
		HeaderServerVersion string   `json:"header.server.version"`
		ContinentName       string   `json:"continent.name"`
		CountryName         string   `json:"country.name"`
		ProvinceName        string   `json:"province.name"`
		CityName            string   `json:"city.name"`
		Lon                 string   `json:"lon"`
		Lat                 string   `json:"lat"`
		IspName             string   `json:"isp.name"`
		OrganizationName    string   `json:"organization.name"`
		Zipcode             string   `json:"zipcode"`
		Idc                 int      `json:"idc"`
		Honeypot            int      `json:"honeypot"`
		Asn                 string   `json:"asn"`
		Protocol            string   `json:"protocol"`
		Ssl                 string   `json:"ssl"`
		PrimaryIndustry     string   `json:"primary_industry"`
		SubIndustry         string   `json:"sub_industry"`
		Rank                int      `json:"rank"`
	} `json:"data"`
}

type Zoomeye added in v0.0.6

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

func (Zoomeye) Name added in v0.0.6

func (f Zoomeye) Name() string

func (Zoomeye) QueryAsset added in v0.0.7

func (f Zoomeye) QueryAsset(ctx context.Context, session *sources.Session, query interface{}) (chan sources.Result, error)

func (Zoomeye) QuerySubdomain added in v0.0.7

func (f Zoomeye) QuerySubdomain(ctx context.Context, session *sources.Session, domain string) (chan string, error)

QuerySubdomain 子域名收集(使用 domain/search 接口)

func (Zoomeye) VerifyKeys added in v0.0.7

func (f Zoomeye) VerifyKeys(session *sources.Session) []config.KeyStatus

VerifyKeys 验证 Zoomeye API 密钥

Jump to

Keyboard shortcuts

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