Documentation ¶
Index ¶
- Variables
- func Format(filename string, color bool)
- func LoadConfig(filename string, v interface{}) error
- type FunctionOptions
- type InputOptions
- type MiscOptions
- type ModeOptions
- type Option
- type Origin
- type OutputOptions
- type PluginOptions
- type RequestOptions
- type Runner
- func (r *Runner) AddPool(task *Task)
- func (r *Runner) AddRecursive(bl *pkg.Baseline)
- func (r *Runner) AppendFunction(fn func(string) []string)
- func (r *Runner) Done()
- func (r *Runner) OutputHandler()
- func (r *Runner) Prepare(ctx context.Context) error
- func (r *Runner) PrepareConfig() *pool.Config
- func (r *Runner) PrintStat(pool *pool.BrutePool)
- func (r *Runner) Run(ctx context.Context)
- func (r *Runner) RunWithCheck(ctx context.Context)
- type Task
Constants ¶
This section is empty.
Variables ¶
View Source
var ( DefaultThreads = 20 SkipChar = "%SKIP%" )
View Source
var (
MAX = 2147483647
)
Functions ¶
func LoadConfig ¶
Types ¶
type FunctionOptions ¶
type FunctionOptions struct { Extensions string `short:"e" long:"extension" description:"String, add extensions (separated by commas), e.g.: -e jsp,jspx" config:"extension"` ForceExtension bool `long:"force-extension" description:"Bool, force add extensions" config:"force-extension"` ExcludeExtensions string `` /* 150-byte string literal not displayed */ RemoveExtensions string `` /* 146-byte string literal not displayed */ Uppercase bool `short:"U" long:"uppercase" description:"Bool, upper wordlist, e.g.: --uppercase" config:"upper"` Lowercase bool `short:"L" long:"lowercase" description:"Bool, lower wordlist, e.g.: --lowercase" config:"lower"` Prefixes []string `long:"prefix" description:"Strings, add prefix, e.g.: --prefix aaa --prefix bbb" config:"prefix"` Suffixes []string `long:"suffix" description:"Strings, add suffix, e.g.: --suffix aaa --suffix bbb" config:"suffix"` Replaces map[string]string `long:"replace" description:"Strings, replace string, e.g.: --replace aaa:bbb --replace ccc:ddd" config:"replace"` Skips []string `long:"skip" description:"String, skip word when generate. rule, e.g.: --skip aaa" config:"skip"` }
type InputOptions ¶
type InputOptions struct { ResumeFrom string `long:"resume" description:"File, resume filename" ` Config string `short:"c" long:"config" description:"File, config filename"` URL []string `short:"u" long:"url" description:"Strings, input baseurl, e.g.: http://google.com"` URLFile string `short:"l" long:"list" description:"File, input filename"` PortRange string `short:"p" long:"port" description:"String, input port range, e.g.: 80,8080-8090,db"` CIDRs string `long:"cidr" description:"String, input cidr, e.g.: 1.1.1.1/24 "` //Raw string `long:"raw" description:"File, input raw request filename"` Dictionaries []string `short:"d" long:"dict" description:"Files, Multi,dict files, e.g.: -d 1.txt -d 2.txt" config:"dictionaries"` Offset int `long:"offset" description:"Int, wordlist offset"` Limit int `long:"limit" description:"Int, wordlist limit, start with offset. e.g.: --offset 1000 --limit 100"` Word string `short:"w" long:"word" description:"String, word generate dsl, e.g.: -w test{?ld#4}" config:"word"` Rules []string `short:"r" long:"rules" description:"Files, rule files, e.g.: -r rule1.txt -r rule2.txt" config:"rules"` AppendRule []string `` /* 138-byte string literal not displayed */ FilterRule string `long:"filter-rule" description:"String, filter rule, e.g.: --rule-filter '>8 <4'" config:"filter-rule"` AppendFile []string `` /* 128-byte string literal not displayed */ }
type MiscOptions ¶
type MiscOptions struct { Mod string `short:"m" long:"mod" default:"path" choice:"path" choice:"host" description:"String, path/host spray" config:"mod"` Client string `` /* 134-byte string literal not displayed */ Deadline int `long:"deadline" default:"999999" description:"Int, deadline (seconds)" config:"deadline"` // todo 总的超时时间,适配云函数的deadline Timeout int `long:"timeout" default:"5" description:"Int, timeout with request (seconds)" config:"timeout"` PoolSize int `short:"P" long:"pool" default:"5" description:"Int, Pool size" config:"pool"` Threads int `short:"t" long:"thread" default:"20" description:"Int, number of threads per pool" config:"thread"` Debug bool `long:"debug" description:"Bool, output debug info" config:"debug"` Version bool `long:"version" description:"Bool, show version"` Verbose []bool `short:"v" description:"Bool, log verbose level ,default 0, level1: -v level2 -vv " config:"verbose"` Quiet bool `short:"q" long:"quiet" description:"Bool, Quiet" config:"quiet"` NoColor bool `long:"no-color" description:"Bool, no color" config:"no-color"` NoBar bool `long:"no-bar" description:"Bool, No progress bar" config:"no-bar"` Proxy string `long:"proxy" default:"" description:"String, proxy address, e.g.: --proxy socks5://127.0.0.1:1080" config:"proxy"` }
type ModeOptions ¶
type ModeOptions struct { RateLimit int `long:"rate-limit" default:"0" description:"Int, request rate limit (rate/s), e.g.: --rate-limit 100" config:"rate-limit"` Force bool `long:"force" description:"Bool, skip error break" config:"force"` CheckOnly bool `long:"check-only" description:"Bool, check only" config:"check-only"` NoScope bool `long:"no-scope" description:"Bool, no scope" config:"no-scope"` Scope []string `long:"scope" description:"String, custom scope, e.g.: --scope *.example.com" config:"scope"` Recursive string `` /* 139-byte string literal not displayed */ Depth int `long:"depth" default:"0" description:"Int, recursive depth" config:"depth"` Index string `long:"index" default:"/" description:"String, custom index path" config:"index"` Random string `long:"random" default:"" description:"String, custom random path" config:"random"` CheckPeriod int `long:"check-period" default:"200" description:"Int, check period when request" config:"check-period"` ErrPeriod int `long:"error-period" default:"10" description:"Int, check period when error" config:"error-period"` BreakThreshold int `long:"error-threshold" default:"20" description:"Int, break when the error exceeds the threshold" config:"error-threshold"` BlackStatus string `long:"black-status" default:"400,410" description:"Strings (comma split),custom black status" config:"black-status"` WhiteStatus string `long:"white-status" default:"200" description:"Strings (comma split), custom white status" config:"white-status"` FuzzyStatus string `long:"fuzzy-status" default:"500,501,502,503" description:"Strings (comma split), custom fuzzy status" config:"fuzzy-status"` UniqueStatus string `long:"unique-status" default:"403,200,404" description:"Strings (comma split), custom unique status" config:"unique-status"` Unique bool `long:"unique" description:"Bool, unique response" config:"unique"` RetryCount int `long:"retry" default:"0" description:"Int, retry count" config:"retry"` SimhashDistance int `long:"distance" default:"5" config:"distance"` }
type Option ¶
type Option struct { InputOptions `group:"Input Options" config:"input" default:""` FunctionOptions `group:"Function Options" config:"functions" default:""` OutputOptions `group:"Output Options" config:"output"` PluginOptions `group:"Plugin Options" config:"plugins"` RequestOptions `group:"Request Options" config:"request"` ModeOptions `group:"Modify Options" config:"mode"` MiscOptions `group:"Miscellaneous Options" config:"misc"` }
func (*Option) GenerateTasks ¶
Generate Tasks
func (*Option) PrepareRunner ¶ added in v0.1.0
type OutputOptions ¶
type OutputOptions struct { Match string `long:"match" description:"String, custom match function, e.g.: --match 'current.Status != 200''" config:"match" ` Filter string `long:"filter" description:"String, custom filter function, e.g.: --filter 'current.Body contains \"hello\"'" config:"filter"` Fuzzy bool `long:"fuzzy" description:"String, open fuzzy output" config:"fuzzy"` OutputFile string `short:"f" long:"file" description:"String, output filename" json:"output_file,omitempty" config:"output-file"` FuzzyFile string `long:"fuzzy-file" description:"String, fuzzy output filename" json:"fuzzy_file,omitempty" config:"fuzzy-file"` DumpFile string `long:"dump-file" description:"String, dump all request, and write to filename" config:"dump-file"` Dump bool `long:"dump" description:"Bool, dump all request" config:"dump"` AutoFile bool `long:"auto-file" description:"Bool, auto generator output and fuzzy filename" config:"auto-file"` Format string `short:"F" long:"format" description:"String, output format, e.g.: --format 1.json" config:"format"` OutputProbe string `short:"o" long:"probe" description:"String, output format" config:"output_probe"` }
type PluginOptions ¶
type PluginOptions struct { Advance bool `short:"a" long:"advance" description:"Bool, enable all plugin" config:"all" ` Extracts []string `` /* 128-byte string literal not displayed */ ExtractConfig string `long:"extract-config" description:"String, extract config filename" config:"extract-config"` Recon bool `long:"recon" description:"Bool, enable recon" config:"recon"` Finger bool `long:"finger" description:"Bool, enable active finger detect" config:"finger"` Bak bool `long:"bak" description:"Bool, enable bak found" config:"bak"` FileBak bool `long:"file-bak" description:"Bool, enable valid result bak found, equal --append-rule rule/filebak.txt" config:"file-bak"` Common bool `long:"common" description:"Bool, enable common file found" config:"common"` Crawl bool `long:"crawl" description:"Bool, enable crawl" config:"crawl"` CrawlDepth int `long:"crawl-depth" default:"3" description:"Int, crawl depth" config:"crawl-depth"` }
type RequestOptions ¶
type RequestOptions struct { Headers []string `long:"header" description:"Strings, custom headers, e.g.: --headers 'Auth: example_auth'" config:"headers"` UserAgent string `long:"user-agent" description:"String, custom user-agent, e.g.: --user-agent Custom" config:"useragent"` RandomUserAgent bool `long:"random-agent" description:"Bool, use random with default user-agent" config:"random-useragent"` Cookie []string `long:"cookie" description:"Strings, custom cookie" config:"cookies"` ReadAll bool `long:"read-all" description:"Bool, read all response body" config:"read-all"` MaxBodyLength int `` /* 142-byte string literal not displayed */ }
type Runner ¶
type Runner struct { Tasks chan *Task Count int // tasks total number Wordlist []string Rules *rule.Program AppendRules *rule.Program AppendWords []string Headers map[string]string Fns []func(string) []string FilterExpr *vm.Program MatchExpr *vm.Program RecursiveExpr *vm.Program RecuDepth int Threads int PoolSize int ClientType int Pools *ants.PoolWithFunc PoolName map[string]bool Timeout int Mod string Probes []string Fuzzy bool OutputFile *files.File FuzzyFile *files.File DumpFile *files.File StatFile *files.File Progress *uiprogress.Progress Offset int Limit int RateLimit int Total int // wordlist total number Deadline int CheckPeriod int ErrPeriod int BreakThreshold int Color bool CheckOnly bool Force bool IgnoreWaf bool Crawl bool Scope []string Finger bool Bak bool Common bool RetryCount int RandomUserAgent bool Random string Index string Proxy string // contains filtered or unexported fields }
func (*Runner) AddRecursive ¶
func (*Runner) AppendFunction ¶
func (*Runner) OutputHandler ¶
func (r *Runner) OutputHandler()
func (*Runner) PrepareConfig ¶
func (*Runner) RunWithCheck ¶
Click to show internal directories.
Click to hide internal directories.