Documentation
¶
Overview ¶
pkg/config/banner.go
Index ¶
- Constants
- Variables
- func EngineV(u *AfrogUpdate) string
- func GetErrorSymbol() string
- func GetFileBaseName(options *Options) string
- func GetOkSymbol() string
- func IsOOBAdapter(oob string) bool
- func PocV(u *AfrogUpdate) string
- func PrintSeparator()
- func PrintStatusLine(symbol, label, value, note string)
- func ShowBanner(u *AfrogUpdate, curated *Curated)
- func ShowVersion()
- func WriteConfiguration(config *Config, configFile string) error
- type AfrogUpdate
- type Alphalog
- type Ceye
- type Config
- type ConfigHttp
- type Curated
- type Cyberspace
- type Dingtalk
- type Dnslogcn
- type Eye
- type Interactsh
- type Jndi
- type Options
- func (o *Options) CheckPocKeywords(id, name, tags string) bool
- func (o *Options) CheckPocSeverityKeywords(severity string) bool
- func (o *Options) CreatePocList() []poc.Poc
- func (o *Options) FilterPocSeveritySearch(pocId, pocInfoName, pocTags, severity string) bool
- func (o *Options) FingerprintPoCs(allpocs []poc.Poc) ([]poc.Poc, []poc.Poc)
- func (o *Options) PrintPocList() error
- func (o *Options) ReadPocDetail()
- func (o *Options) ReversePoCs(allpocs []poc.Poc) ([]poc.Poc, []poc.Poc)
- func (opt *Options) SetOOBAdapter()
- func (o *Options) SetSearchKeyword() bool
- func (o *Options) SetSeverityKeyword() bool
- func (o *Options) SmartControl()
- func (opt *Options) VerifyOptions() error
- type POCSlices
- type Reverse
- type Revsuit
- type ScanInfoUpdate
- type Webhook
- type Wecom
- type Xray
Constants ¶
View Source
const ( Version = "3.5.3" ProjectName = "Afrog" Codename = "Lightweight, Fast, and Direct to the Flaw." LineWidth = 56 )
Variables ¶
View Source
var ( OOBCeyeio = "ceyeio" OOBDnslogcn = "dnslogcn" OOBAlphalog = "alphalog" OOBXray = "xray" OOBRevsuit = "revsuit" OOBInteractsh = "interactsh" )
Functions ¶
func EngineV ¶
func EngineV(u *AfrogUpdate) string
func GetErrorSymbol ¶ added in v3.1.7
func GetErrorSymbol() string
func GetOkSymbol ¶ added in v3.1.7
func GetOkSymbol() string
func IsOOBAdapter ¶ added in v3.0.2
func PocV ¶
func PocV(u *AfrogUpdate) string
func PrintSeparator ¶ added in v3.1.7
func PrintSeparator()
func PrintStatusLine ¶ added in v3.1.7
func PrintStatusLine(symbol, label, value, note string)
func ShowBanner ¶
func ShowBanner(u *AfrogUpdate, curated *Curated)
func ShowVersion ¶
func ShowVersion()
func WriteConfiguration ¶
WriteConfiguration writes the updated afrog configuration to disk
Types ¶
type AfrogUpdate ¶
type AfrogUpdate struct {
HomeDir string
CurrVersion string
RemoteVersion string
LastestVersion string
LastestAfrogVersion string
IsUpdatePocs bool
}
func NewAfrogUpdate ¶
func NewAfrogUpdate(updatePoc bool) (*AfrogUpdate, error)
func (*AfrogUpdate) AfrogUpdatePocs ¶
func (u *AfrogUpdate) AfrogUpdatePocs() (string, error)
func (*AfrogUpdate) CheckAfrogUpdate ¶
func (u *AfrogUpdate) CheckAfrogUpdate() (bool, error)
func (*AfrogUpdate) Download ¶
func (u *AfrogUpdate) Download() error
func (*AfrogUpdate) Unzip ¶
func (u *AfrogUpdate) Unzip(src string) error
type Config ¶
type Config struct {
ServerAddress string `yaml:"server"`
Reverse Reverse `yaml:"reverse"`
Webhook Webhook `yaml:"webhook"`
Cyberspace Cyberspace `yaml:"cyberspace"`
Curated Curated `yaml:"curated"`
}
Config is a afrog-config.yaml catalog helper implementation
func ReadConfiguration ¶
ReadConfiguration reads the afrog configuration file from disk.
func (*Config) GetConfigPath ¶
type ConfigHttp ¶
type ConfigHttp struct {
Proxy string `yaml:"proxy"`
DialTimeout int32 `yaml:"dial_timeout"`
ReadTimeout string `yaml:"read_timeout"`
WriteTimeout string `yaml:"write_timeout"`
MaxRedirect int32 `yaml:"max_redirect"`
MaxIdle string `yaml:"max_idle"`
Concurrency int `yaml:"concurrency"`
MaxConnsPerHost int `yaml:"max_conns_per_host"`
MaxResponseBodySize int `yaml:"max_responsebody_sizse"`
UserAgent string `yaml:"user_agent"`
}
type Cyberspace ¶
type Cyberspace struct {
ZoomEyes []string `yaml:"zoom_eyes"`
}
type Interactsh ¶ added in v3.5.1
type Options ¶
type Options struct {
// afrog-config.yaml configuration file
Config *Config
AfrogUpdate *AfrogUpdate
// Pocs Directory
PocsDirectory utils.StringSlice
Targets sliceutil.SafeSlice
// target URLs/hosts to scan
Target goflags.StringSlice
// list of target URLs/hosts to scan (one per line)
TargetsFile string
// PoC file or directory to scan
PocFile string
// Append PoC file or directory to scan
AppendPoc goflags.StringSlice
// show afrog-pocs list
PocList bool
// show a afrog-pocs detail
PocDetail string
PocMigrate string
ExcludePocs goflags.StringSlice
ExcludePocsFile string
// file to write output to (optional), support format: html
Output string
// file to write output to (optional), support format: json
Json string
// file to write output to (optional), support format: json
JsonAll string
// search PoC by keyword , eg: -s tomcat
Search string
SearchKeywords []string
// no progress if silent is true
Silent bool
NoColor bool
// pocs to run based on severity. Possible values: info, low, medium, high, critical
Severity string
SeverityKeywords []string
// update afrog-pocs
UpdatePocs bool
// update afrog version
Update bool
// Disable update check
DisableUpdateCheck bool
MonitorTargets bool
// POC Execution Duration Tracker
PocExecutionDurationMonitor bool
PedmLogLimit int
PedmSlowThresholdSec int
PedmSlowLogLimit int
PedmSummaryTop int
PedmSummaryBy string
TaskHardTimeoutSec int
TaskSmartTimeout bool
TaskTimeoutVisibleCapSec int
TaskTimeoutNetCapSec int
TaskTimeoutGoCapSec int
// Single Vulnerability Stopper
VulnerabilityScannerBreakpoint bool
// Scan count num(targets * allpocs)
Count int
// Current Scan count num
CurrentCount uint32
// Thread lock
OptLock sync.Mutex
// maximum number of requests to send per second (default 150)
RateLimit int
ReqLimitPerTarget int
AutoReqLimit bool
Polite bool
Balanced bool
Aggressive bool
// maximum number of afrog-pocs to be executed in parallel (default 25)
Concurrency int
// maximum number of requests to send per second (default 150)
OOBRateLimit int
// maximum number of afrog-pocs to be executed in parallel (default 25)
OOBConcurrency int
// Smart Control Concurrency
Smart bool
DisableFingerprint bool
EnableWebProbe bool
FingerprintFilterMode string
Test bool
// number of times to retry a failed request (default 1)
Retries int
//
MaxHostError int
// time to wait in seconds before timeout (default 10)
Timeout int
// http/socks5 proxy to use
Proxy string
MaxRespBodySize int
BruteMaxRequests int
// afrog process count (target total × pocs total)
ProcessTotal uint32
DisableOutputHtml bool
OJ *output.OutputJson
Header goflags.StringSlice
DefaultAccept bool
Version bool
Web bool
// webhook
Dingtalk bool
// webhook wecom
Wecom bool
// resume
Resume string
ResumeDoneTasks uint32
// debug
Debug bool
LiveStats bool
// sort
// -sort severity (default low, info, medium, high, critical)
// -sort a-z
Sort string
// cyberspace search
Cyberspace string
// cyberspace search keywords
Query string
// query count
QueryCount int
// oobadapter, eg: `-oob ceyeio` or `-oob dnslogcn` or `-oob alphalog`
OOB string
OOBKey string
OOBDomain string
OOBHttpUrl string
OOBApiUrl string
OOBPollInterval int
OOBHitRetention int
OOBFinalizeTimeout int
// SDK模式标志,用于控制OOB检测行为
SDKMode bool
EnableOOB bool
// enable pre-scan host port scanning
PortScan bool
PSPorts string
PSRateLimit int
PSTimeout int
PSRetries int
PSSkipDiscovery bool
PSS4Chunk int
OnPortScanResult func(host string, port int)
OnHostDiscovered func(host string)
OnPhaseProgress func(phase string, status string, finished int64, total int64, percent int)
OnScanInfoUpdate func(info ScanInfoUpdate)
OnPedmLog func(line string)
// path to the afrog configuration file
ConfigFile string
// Validate POC YAML syntax
Validate string
CuratedEnabled string
CuratedEndpoint string
CuratedTimeout int
CuratedForceUpdate bool
}
func NewOptions ¶
func (*Options) CheckPocKeywords ¶
func (*Options) CheckPocSeverityKeywords ¶
func (*Options) CreatePocList ¶
func (*Options) FilterPocSeveritySearch ¶
func (*Options) FingerprintPoCs ¶ added in v3.3.5
func (*Options) PrintPocList ¶
func (*Options) ReadPocDetail ¶
func (o *Options) ReadPocDetail()
func (*Options) ReversePoCs ¶
func (*Options) SetOOBAdapter ¶ added in v3.0.2
func (opt *Options) SetOOBAdapter()
func (*Options) SetSearchKeyword ¶
func (*Options) SetSeverityKeyword ¶
func (*Options) SmartControl ¶
func (o *Options) SmartControl()
func (*Options) VerifyOptions ¶
type ScanInfoUpdate ¶ added in v3.3.8
Click to show internal directories.
Click to hide internal directories.