Documentation
¶
Index ¶
- Constants
- Variables
- func CollectHttpInfo(result *Result, resp *http.Response)
- func CollectSocketInfo(result *Result, socketContent []byte)
- func CompileRegexp(s string) *regexp.Regexp
- func Decode(input string) []byte
- func Encode(input []byte) string
- func FormatCertDomains(domains []string) []string
- func GetFilename(config *Config, name string) string
- func GetStatusCode(content string) (bool, string)
- func HasPingPriv() bool
- func HasStdin() bool
- func HttpConn(delay int) *http.Client
- func IsExist(filename string) bool
- func IsJson(content []byte) bool
- func LoadConfig(typ string) []byte
- func LoadFinger(t string) fingers.Fingers
- func LoadHashFinger(fs fingers.Fingers) (map[string]string, map[string]string)
- func LoadNuclei(filename string) map[string][]*templates.Template
- func LoadPortConfig()
- func LoadResultFile(file *os.File) interface{}
- func LoadTemplates(content []byte) map[string][]*templates.Template
- func ParserCmdPayload(payloads []string) *protocols.ExecuterOptions
- func WriteAlivedResult(file *files.File, ips []string)
- func WriteSmartResult(file *files.File, ips []string)
- type Config
- func (config *Config) Close()
- func (config *Config) GetTarget() string
- func (config *Config) GetTargetName() string
- func (config *Config) HasAlivedScan() bool
- func (config *Config) InitFile() error
- func (config *Config) InitIP() error
- func (config *Config) IsBSmart() bool
- func (config *Config) IsCSmart() bool
- func (config *Config) IsScan() bool
- func (config *Config) IsSmart() bool
- func (config *Config) ToJson(json_type string) string
- func (config *Config) Validate() error
- type IPMapResult
- type PortFinger
- type Result
- func (result *Result) AddExtract(extract *fingers.Extracted)
- func (result *Result) AddExtracts(extracts []*fingers.Extracted)
- func (result *Result) AddFramework(f *parsers.Framework)
- func (result *Result) AddFrameworks(fs []*parsers.Framework)
- func (result *Result) AddNTLMInfo(m map[string]string, t string)
- func (result *Result) AddVuln(vuln *parsers.Vuln)
- func (result *Result) AddVulns(vulns []*parsers.Vuln)
- func (result *Result) GetHostBaseURL() string
- func (result *Result) GetHostURL() string
- func (result *Result) GetHttpConn(delay int) *http.Client
- func (result *Result) GuessFramework()
- func (result *Result) IsHttps() bool
- type ResultsData
- type SmartData
- type Socket
- type Workflow
- type WorkflowMap
Constants ¶
View Source
const ( SMART = "s" // 使用port-probe探测存活的c段, 递归下降到default SUPERSMART = "ss" // 使用ip-probe探测存活的b段, 递归下降到s SUPERSMARTC = "sb" // 使用port-probe探测到c段后退出 SUPERSMARTB = "sc" // 使用ip-probe探测存活的b段,. 递归下降到sb Default = "default" // 扫描完后退出 )
Variables ¶
View Source
var ( NameMap = ipcs.NameMap PortMap = ipcs.PortMap TagMap = ipcs.TagMap //WorkFlowMap map[string][]*Workflow Extractors = make(fingers.Extractors) )
View Source
var ( Md5Fingers map[string]string Mmh3Fingers map[string]string AllHttpFingers fingers.Fingers TcpFingers fingers.FingerMapper HttpFingers fingers.FingerMapper )
View Source
var ( Win = utils.IsWin() Root = utils.IsRoot() )
View Source
var ExecuterOptions *protocols.ExecuterOptions
View Source
var ProxyDialTimeout func(network, address string, timeout time.Duration) (net.Conn, error)
View Source
var ProxyUrl *url.URL
View Source
var RandomDir = "/g8kZMwp4oeKsL2in"
View Source
var TemplateMap map[string][]*templates.Template
Functions ¶
func CollectHttpInfo ¶
func CollectSocketInfo ¶
func CompileRegexp ¶
func FormatCertDomains ¶
func GetFilename ¶
func HasPingPriv ¶
func HasPingPriv() bool
func LoadConfig ¶
func LoadHashFinger ¶
func LoadPortConfig ¶
func LoadPortConfig()
func LoadResultFile ¶
func ParserCmdPayload ¶
func ParserCmdPayload(payloads []string) *protocols.ExecuterOptions
func WriteAlivedResult ¶
func WriteSmartResult ¶
Types ¶
type Config ¶
type Config struct {
*parsers.GOGOConfig
// ip
CIDRs ipcs.CIDRs `json:"-"`
// port and probe
//Ports string `json:"ports"` // 预设字符串
PortList []string `json:"-"` // 处理完的端口列表
PortProbe string `json:"-"` // 启发式扫描预设探针
PortProbeList []string `json:"-"` // 启发式扫描预设探针
IpProbe string `json:"-"`
IpProbeList []uint `json:"-"`
// file
IsListInput bool `json:"-"` // 从标准输入中读
IsJsonInput bool `json:"-"` // 从标准输入中读
NoSpray bool `json:"-"`
Compress bool `json:"-"`
// output
FilePath string `json:"-"`
Filename string `json:"-"`
SmartBFilename string `json:"-"`
SmartCFilename string `json:"-"`
AlivedFilename string `json:"-"`
File *File `json:"-"`
SmartBFile *File `json:"-"`
SmartCFile *File `json:"-"`
AliveFile *File `json:"-"`
Tee bool `json:"-"`
Outputf string `json:"-"`
FileOutputf string `json:"-"`
Filenamef string `json:"-"`
Results parsers.GOGOResults `json:"-"` // json反序列化后的内网,保存在内存中
HostsMap map[string][]string `json:"-"` // host映射表
Filters []string `json:"-"`
FilterOr bool `json:"-"`
OutputFilters [][]string `json:"-"`
}
func (*Config) GetTargetName ¶
func (*Config) HasAlivedScan ¶
type IPMapResult ¶
type IPMapResult map[string]*parsers.GOGOResult
func (IPMapResult) Get ¶ added in v2.9.0
func (imap IPMapResult) Get(port string) *parsers.GOGOResult
type PortFinger ¶
type Result ¶
type Result struct {
*parsers.GOGOResult
HttpHosts []string `json:"-"`
CurrentHost string `json:"-"`
// language
IsHttp bool `json:"-"`
Open bool `json:"-"`
//FrameworksMap map[string]bool `json:"-"`
SmartProbe bool `json:"-"`
TcpConn *net.Conn `json:"-"`
HttpConn *http.Client `json:"-"`
Httpresp *parsers.Response `json:"-"`
Error string `json:"-"`
ErrStat int `json:"-"`
Content string `json:"-"`
}
func (*Result) AddExtract ¶
func (*Result) AddExtracts ¶
func (*Result) AddFramework ¶
func (*Result) AddFrameworks ¶
func (*Result) GetHostBaseURL ¶
func (*Result) GetHostURL ¶
func (*Result) GuessFramework ¶
func (result *Result) GuessFramework()
type ResultsData ¶
func LoadResult ¶
func LoadResult(content []byte) (*ResultsData, error)
func (*ResultsData) GetConfig ¶ added in v2.9.0
func (rd *ResultsData) GetConfig() *Config
func (*ResultsData) ToCobaltStrike ¶
func (rd *ResultsData) ToCobaltStrike() string
func (*ResultsData) ToExtracteds ¶ added in v2.9.0
func (rd *ResultsData) ToExtracteds() string
func (*ResultsData) ToFormat ¶
func (rd *ResultsData) ToFormat(isColor bool) string
type Workflow ¶
type Workflow struct {
Name string `json:"name"`
Description string `json:"description"`
IP string `json:"ip"`
IPlist []string `json:"iplist"`
Ports string `json:"ports"`
Mod string `json:"mod"`
Ping bool `json:"ping"`
NoScan bool `json:"no-scan"`
IpProbe string `json:"ip-probe"`
SmartProbe string `json:"port-probe"`
Exploit string `json:"exploit"`
Verbose int `json:"verbose"`
File string `json:"file"`
Path string `json:"path"`
Tags []string `json:"tags"`
}
func ParseWorkflowsFromInput ¶
func (*Workflow) PrepareConfig ¶
type WorkflowMap ¶
func LoadWorkFlow ¶
func LoadWorkFlow() WorkflowMap
func (WorkflowMap) Choice ¶
func (m WorkflowMap) Choice(name string) []*Workflow
Source Files
¶
Click to show internal directories.
Click to hide internal directories.