plugins

package
v1.0.15 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 18, 2026 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func LoadPlugins

func LoadPlugins(dirs []string) ([]vulns.VulnModule, error)

LoadPlugins carrega todos os plugins dos diretórios especificados

Types

type Plugin

type Plugin struct {
	Name        string          `yaml:"name"`
	Description string          `yaml:"description"`
	Author      string          `yaml:"author"`
	Severity    string          `yaml:"severity"`
	Module      string          `yaml:"module"`
	OWASP       string          `yaml:"owasp"`
	CWE         string          `yaml:"cwe"`
	Payloads    []PluginPayload `yaml:"payloads"`
	Detection   PluginDetection `yaml:"detection"`
}

func LoadPlugin

func LoadPlugin(path string) (*Plugin, error)

LoadPlugin carrega um único plugin de um arquivo YAML

func (*Plugin) ToModule

func (p *Plugin) ToModule() vulns.VulnModule

ToModule converte um Plugin para VulnModule

type PluginDetection

type PluginDetection struct {
	Method     string   `yaml:"method"` // contains, regex, status, time, header
	Patterns   []string `yaml:"patterns"`
	StatusCode int      `yaml:"status_code"`
	TimeDelay  int      `yaml:"time_delay_ms"`
	HeaderName string   `yaml:"header_name"`
	HeaderVal  string   `yaml:"header_value"`
	Negate     bool     `yaml:"negate"` // true = finding se pattern NÃO match
}

type PluginModule

type PluginModule struct {
	// contains filtered or unexported fields
}

PluginModule implementa vulns.VulnModule para plugins YAML

func (*PluginModule) Description

func (m *PluginModule) Description() string

func (*PluginModule) Detect

func (m *PluginModule) Detect(payload mutator.Payload, baselineBody string, baselineStatus int, baselineTime int64,
	respBody string, respStatus int, respTime int64, respHeaders map[string][]string) *vulns.Finding

func (*PluginModule) GeneratePayloads

func (m *PluginModule) GeneratePayloads(points []input.InjectionPoint, mode string, mutations int) []mutator.Payload

func (*PluginModule) Name

func (m *PluginModule) Name() string

type PluginPayload

type PluginPayload struct {
	Value    string `yaml:"value"`
	Variant  string `yaml:"variant"`
	Encoding string `yaml:"encoding"` // none, url, double-url, base64
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL