Documentation ¶
Index ¶
- Constants
- Variables
- func CollectHttpInfo(result *Result, resp *http.Response)
- func CollectSocketInfo(result *Result, socketContent []byte)
- func ColorOutput(result *Result) string
- func CompileRegexp(s string) *regexp.Regexp
- func Decode(input string) []byte
- func Encode(input []byte) string
- func FileDecode(input string) []byte
- func FormatCertDomains(domains []string) []string
- func FullOutput(result *Result) 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 IsBase64(content []byte) bool
- func IsBin(content []byte) bool
- func IsExist(filename string) bool
- func IsJson(content []byte) bool
- func JsonOutput(result *Result) string
- 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 Open(filename string) *os.File
- func ParserCmdPayload(payloads []string) *protocols.ExecuterOptions
- func ValuesOutput(result *Result, outType string) string
- func WriteAlivedResult(file *File, ips []string)
- func WriteScReuslt(file *File, ips []string)
- func WriteSmartResult(file *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) IsASmart() bool
- func (config *Config) IsBSmart() bool
- func (config *Config) IsScan() bool
- func (config *Config) IsSmart() bool
- func (config *Config) IsSmartScan() bool
- func (config *Config) ToJson(json_type string) string
- func (config *Config) Validate() error
- type Extracts
- type Frameworks
- 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 *fingers.Framework)
- func (result *Result) AddFrameworks(f []*fingers.Framework)
- func (result *Result) AddNTLMInfo(m map[string]string, t string)
- func (result *Result) AddVuln(vuln *fingers.Vuln)
- func (result *Result) AddVulns(vulns []*fingers.Vuln)
- func (result *Result) Filter(k, v, op string) bool
- func (result *Result) Get(key string) string
- func (result Result) GetBaseURL() string
- func (result *Result) GetExtractStat() string
- func (result Result) GetFirstFramework() string
- func (result Result) GetHostBaseURL() string
- func (result Result) GetHostURL() string
- func (result *Result) GetHttpConn(delay int) *http.Client
- func (result Result) GetTarget() string
- func (result Result) GetURL() string
- func (result *Result) GuessFramework()
- func (result Result) IsHttp() bool
- func (result Result) IsHttps() bool
- func (result Result) NoFramework() bool
- type Results
- type ResultsData
- type SmartData
- type Socket
- type Vulns
- type Workflow
- type WorkflowMap
Constants ¶
View Source
const ( SMART = "s" SUPERSMART = "ss" SUPERSMARTC = "sb" SUPERSMARTB = "sc" 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 AllFingers fingers.Fingers TcpFingers fingers.FingerMapper HttpFingers fingers.FingerMapper )
View Source
var ExecuterOptions *protocols.ExecuterOptions
View Source
var NoGuess bool
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 ColorOutput ¶
func CompileRegexp ¶
func FileDecode ¶
func FormatCertDomains ¶
func FullOutput ¶
func GetFilename ¶
func HasPingPriv ¶
func HasPingPriv() bool
func JsonOutput ¶
func LoadConfig ¶
func LoadHashFinger ¶
func LoadPortConfig ¶
func LoadPortConfig()
func LoadResultFile ¶
func ParserCmdPayload ¶
func ParserCmdPayload(payloads []string) *protocols.ExecuterOptions
func ValuesOutput ¶
func WriteAlivedResult ¶
func WriteAlivedResult(file *File, ips []string)
func WriteScReuslt ¶
func WriteScReuslt(file *File, ips []string)
func WriteSmartResult ¶
func WriteSmartResult(file *File, ips []string)
Types ¶
type Config ¶
type Config struct { // ip IP string `json:"ip"` IPlist []string `json:"ips"` 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 JsonFile string `json:"json_file"` // gt的结果json文件,可以再次读入扫描 ListFile string `json:"list_file"` // 目标ip列表 IsListInput bool `json:"-"` // 从标准输入中读 IsJsonInput bool `json:"-"` // 从标准输入中读 // misc Threads int `json:"threads"` // 线程数 Mod string `json:"mod"` // 扫描模式 AliveSprayMod []string `json:"alive_spray"` PortSpray bool `json:"port_spray"` NoSpray bool `json:"-"` Exploit string `json:"exploit"` JsonType string `json:"json_type"` VersionLevel int `json:"version_level"` Compress bool `json:"-"` // output FilePath string `json:"-"` Filename string `json:"-"` SmartFilename string `json:"-"` AlivedFilename string `json:"-"` File *File `json:"-"` SmartFile *File `json:"-"` ExtractFile *File `json:"-"` AliveFile *File `json:"-"` Tee bool `json:"-"` Outputf string `json:"-"` FileOutputf string `json:"-"` Filenamef string `json:"-"` Results Results `json:"-"` // json反序列化后的内网,保存在内存中 HostsMap map[string][]string `json:"-"` // host映射表 }
func (*Config) GetTargetName ¶
func (*Config) HasAlivedScan ¶
func (*Config) IsSmartScan ¶
type Extracts ¶
type Extracts struct { Target string `json:"target"` MatchedNames []string `json:"-"` Extractors []*fingers.Extracted `json:"extracts"` }
func LoadExtracts ¶
type Frameworks ¶
func (Frameworks) GetNames ¶
func (fs Frameworks) GetNames() []string
func (Frameworks) IsFocus ¶
func (fs Frameworks) IsFocus() bool
func (Frameworks) ToString ¶
func (fs Frameworks) ToString() string
type IPMapResult ¶
type PortFinger ¶
type Result ¶
type Result struct { // baseinfo Ip string `json:"ip"` // ip Port string `json:"port"` // port Protocol string `json:"protocol"` // protocol Status string `json:"status"` // http_stat Uri string `json:"uri,omitempty"` // uri Os string `json:"os,omitempty"` // os Host string `json:"host,omitempty"` // host //Cert string `json:"c"` HttpHosts []string `json:"-"` CurrentHost string `json:"-"` Title string `json:"title"` // title Midware string `json:"midware"` // midware Language string `json:"language"` // language Frameworks Frameworks `json:"frameworks,omitempty"` // framework Vulns Vulns `json:"vulns,omitempty"` Extracts *Extracts `json:"-"` ExtractsStat map[string]int `json:"extracts_stat,omitempty"` //Hash string `json:"hs"` 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) GetBaseURL ¶
func (*Result) GetExtractStat ¶
func (Result) GetFirstFramework ¶
func (Result) GetHostBaseURL ¶
func (Result) GetHostURL ¶
func (*Result) GuessFramework ¶
func (result *Result) GuessFramework()
func (Result) NoFramework ¶
type ResultsData ¶
type ResultsData struct { Config Config `json:"config"` IP string `json:"ip"` Data Results `json:"data"` }
func LoadResult ¶
func LoadResult(content []byte) (*ResultsData, error)
func (*ResultsData) Filter ¶
func (rd *ResultsData) Filter(name string)
func (ResultsData) ToCobaltStrike ¶
func (rd ResultsData) ToCobaltStrike() string
func (ResultsData) ToConfig ¶
func (rd ResultsData) ToConfig() string
func (ResultsData) ToFormat ¶
func (rd ResultsData) ToFormat(isColor bool) string
func (ResultsData) ToValues ¶
func (rd ResultsData) ToValues(outType string) string
func (ResultsData) ToZombie ¶
func (rd ResultsData) ToZombie() 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"` //Arp bool `json:"arp"` NoScan bool `json:"no-scan"` IpProbe string `json:"ipprobe"` SmartProbe string `json:"portprobe"` Exploit string `json:"exploit"` Version int `json:"version"` 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.