42 lines
1.5 KiB
Go
42 lines
1.5 KiB
Go
package config
|
||
|
||
import "time"
|
||
|
||
// Config хранит настройки одного запуска burterm,
|
||
// собранные из CLI-флагов или конфиг-файла.
|
||
type Config struct {
|
||
// TargetURL — исходный URL или путь к файлу с raw HTTP-запросом.
|
||
TargetURL string
|
||
|
||
// RawRequestFile — путь к файлу с сырым HTTP-запросом и §маркерами§.
|
||
RawRequestFile string
|
||
|
||
// Concurrency — число параллельных воркеров в Intruder-движке.
|
||
Concurrency int
|
||
|
||
// RateLimit — пауза между запросами на один воркер (0 — без ограничения).
|
||
RateLimit time.Duration
|
||
|
||
// Timeout — таймаут одного HTTP-запроса.
|
||
Timeout time.Duration
|
||
|
||
// SpiderMaxDepth — максимальная глубина обхода для Spider.
|
||
SpiderMaxDepth int
|
||
|
||
// WordlistPath — путь к словарю payload'ов для Intruder.
|
||
WordlistPath string
|
||
|
||
// InsecureSkipVerify — отключить проверку TLS-сертификата
|
||
// (полезно для тестовых стендов с self-signed сертификатами).
|
||
InsecureSkipVerify bool
|
||
}
|
||
|
||
// Default возвращает конфигурацию с разумными значениями по умолчанию.
|
||
func Default() Config {
|
||
return Config{
|
||
Concurrency: 10,
|
||
RateLimit: 0,
|
||
Timeout: 10 * time.Second,
|
||
SpiderMaxDepth: 3,
|
||
}
|
||
}
|