takeover

package
v0.0.0-...-f5a5a56 Latest Latest
Warning

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

Go to latest
Published: Nov 30, 2025 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type SubjackPlugin

type SubjackPlugin struct {
	core.BasePlugin
	// contains filtered or unexported fields
}

SubjackPlugin implements subdomain takeover detection using subjack

func NewSubjackPlugin

func NewSubjackPlugin() *SubjackPlugin

NewSubjackPlugin creates a new subdomain takeover plugin

func (*SubjackPlugin) Author

func (s *SubjackPlugin) Author() string

func (*SubjackPlugin) Category

func (s *SubjackPlugin) Category() string

func (*SubjackPlugin) Consumes

func (s *SubjackPlugin) Consumes() []string

func (*SubjackPlugin) Dependencies

func (s *SubjackPlugin) Dependencies() []core.PluginDependency

func (*SubjackPlugin) Description

func (s *SubjackPlugin) Description() string

func (*SubjackPlugin) EstimatedDuration

func (s *SubjackPlugin) EstimatedDuration() time.Duration

func (*SubjackPlugin) GetIntelligencePatterns

func (s *SubjackPlugin) GetIntelligencePatterns() []core.Pattern

func (*SubjackPlugin) IsPassive

func (s *SubjackPlugin) IsPassive() bool

Capability methods

func (*SubjackPlugin) MaxConcurrency

func (s *SubjackPlugin) MaxConcurrency() int

func (*SubjackPlugin) Name

func (s *SubjackPlugin) Name() string

Metadata methods

func (*SubjackPlugin) Prepare

func (s *SubjackPlugin) Prepare(ctx context.Context, target *models.Target, cfg *config.Config, shared *core.SharedContext) error

func (*SubjackPlugin) Priority

func (s *SubjackPlugin) Priority() int

func (*SubjackPlugin) ProcessDiscovery

func (s *SubjackPlugin) ProcessDiscovery(ctx context.Context, discovery models.Discovery) error

Intelligence methods

func (*SubjackPlugin) Provides

func (s *SubjackPlugin) Provides() []string

func (*SubjackPlugin) RequiredBinaries

func (s *SubjackPlugin) RequiredBinaries() []string

Dependency methods

func (*SubjackPlugin) RequiredEnvVars

func (s *SubjackPlugin) RequiredEnvVars() []string

func (*SubjackPlugin) RequiresConfirmation

func (s *SubjackPlugin) RequiresConfirmation() bool

func (*SubjackPlugin) ResourceRequirements

func (s *SubjackPlugin) ResourceRequirements() core.Resources

func (*SubjackPlugin) Run

func (s *SubjackPlugin) Run(ctx context.Context, target *models.Target, results chan<- models.PluginResult, shared *core.SharedContext) error

func (*SubjackPlugin) SupportedTargetTypes

func (s *SubjackPlugin) SupportedTargetTypes() []string

func (*SubjackPlugin) Teardown

func (s *SubjackPlugin) Teardown(ctx context.Context) error

func (*SubjackPlugin) Validate

func (s *SubjackPlugin) Validate(ctx context.Context, cfg *config.Config) error

Lifecycle methods

func (*SubjackPlugin) Version

func (s *SubjackPlugin) Version() string

type SubzyPlugin

type SubzyPlugin struct {
	core.BasePlugin
	// contains filtered or unexported fields
}

SubzyPlugin implements subdomain takeover detection using subzy

func NewSubzyPlugin

func NewSubzyPlugin() *SubzyPlugin

NewSubzyPlugin creates a new subdomain takeover plugin using subzy

func (*SubzyPlugin) Author

func (s *SubzyPlugin) Author() string

func (*SubzyPlugin) Category

func (s *SubzyPlugin) Category() string

func (*SubzyPlugin) Consumes

func (s *SubzyPlugin) Consumes() []string

func (*SubzyPlugin) Dependencies

func (s *SubzyPlugin) Dependencies() []core.PluginDependency

func (*SubzyPlugin) Description

func (s *SubzyPlugin) Description() string

func (*SubzyPlugin) EstimatedDuration

func (s *SubzyPlugin) EstimatedDuration() time.Duration

func (*SubzyPlugin) GetIntelligencePatterns

func (s *SubzyPlugin) GetIntelligencePatterns() []core.Pattern

func (*SubzyPlugin) IsPassive

func (s *SubzyPlugin) IsPassive() bool

Capability methods

func (*SubzyPlugin) MaxConcurrency

func (s *SubzyPlugin) MaxConcurrency() int

func (*SubzyPlugin) Name

func (s *SubzyPlugin) Name() string

Metadata methods

func (*SubzyPlugin) Prepare

func (s *SubzyPlugin) Prepare(ctx context.Context, target *models.Target, cfg *config.Config, shared *core.SharedContext) error

func (*SubzyPlugin) Priority

func (s *SubzyPlugin) Priority() int

func (*SubzyPlugin) ProcessDiscovery

func (s *SubzyPlugin) ProcessDiscovery(ctx context.Context, discovery models.Discovery) error

Intelligence methods

func (*SubzyPlugin) Provides

func (s *SubzyPlugin) Provides() []string

func (*SubzyPlugin) RequiredBinaries

func (s *SubzyPlugin) RequiredBinaries() []string

Dependency methods

func (*SubzyPlugin) RequiredEnvVars

func (s *SubzyPlugin) RequiredEnvVars() []string

func (*SubzyPlugin) RequiresConfirmation

func (s *SubzyPlugin) RequiresConfirmation() bool

func (*SubzyPlugin) ResourceRequirements

func (s *SubzyPlugin) ResourceRequirements() core.Resources

func (*SubzyPlugin) Run

func (s *SubzyPlugin) Run(ctx context.Context, target *models.Target, results chan<- models.PluginResult, shared *core.SharedContext) error

func (*SubzyPlugin) SupportedTargetTypes

func (s *SubzyPlugin) SupportedTargetTypes() []string

func (*SubzyPlugin) Teardown

func (s *SubzyPlugin) Teardown(ctx context.Context) error

func (*SubzyPlugin) Validate

func (s *SubzyPlugin) Validate(ctx context.Context, cfg *config.Config) error

Lifecycle methods

func (*SubzyPlugin) Version

func (s *SubzyPlugin) Version() string

type SubzyResponse

type SubzyResponse struct {
	Results []SubzyResult `json:"results,omitempty"`
	Summary SubzySummary  `json:"summary,omitempty"`
}

SubzyResponse represents the complete response from subzy

type SubzyResult

type SubzyResult struct {
	Subdomain   string `json:"subdomain"`
	Service     string `json:"service"`
	StatusCode  int    `json:"status_code"`
	Vulnerable  bool   `json:"vulnerable"`
	Verified    bool   `json:"verified"`
	Fingerprint string `json:"fingerprint"`
	Response    string `json:"response,omitempty"`
	Error       string `json:"error,omitempty"`
	Timestamp   string `json:"timestamp,omitempty"`
}

SubzyResult represents the JSON output structure from subzy tool

func ParseSubzyOutput

func ParseSubzyOutput(jsonOutput string) ([]SubzyResult, error)

ParseSubzyOutput parses subzy JSON output into structured results

func (*SubzyResult) GetConfidenceScore

func (r *SubzyResult) GetConfidenceScore() float64

GetConfidenceScore calculates a confidence score for the result

func (*SubzyResult) GetErrorMessage

func (r *SubzyResult) GetErrorMessage() string

GetErrorMessage returns the error message if present

func (*SubzyResult) GetRecommendedActions

func (r *SubzyResult) GetRecommendedActions() []string

GetRecommendedActions returns recommended actions based on the result

func (*SubzyResult) GetServiceProvider

func (r *SubzyResult) GetServiceProvider() string

GetServiceProvider extracts the service provider from the service field

func (*SubzyResult) GetSeverityLevel

func (r *SubzyResult) GetSeverityLevel() string

GetSeverityLevel returns a severity assessment based on the result

func (*SubzyResult) GetTakeoverRisk

func (r *SubzyResult) GetTakeoverRisk() string

GetTakeoverRisk assesses the risk level of a potential takeover

func (*SubzyResult) GetTimestamp

func (r *SubzyResult) GetTimestamp() time.Time

GetTimestamp returns the parsed timestamp or current time if not set

func (*SubzyResult) HasError

func (r *SubzyResult) HasError() bool

HasError checks if the result contains an error

func (*SubzyResult) IsServiceKnown

func (r *SubzyResult) IsServiceKnown() bool

IsServiceKnown checks if the detected service is a known takeover target

func (*SubzyResult) IsVerified

func (r *SubzyResult) IsVerified() bool

IsVerified checks if the vulnerability has been verified

func (*SubzyResult) IsVulnerable

func (r *SubzyResult) IsVulnerable() bool

IsVulnerable checks if the result indicates a vulnerability

func (*SubzyResult) ToJSON

func (r *SubzyResult) ToJSON() (string, error)

ToJSON converts the result back to JSON format

func (*SubzyResult) ValidateResult

func (r *SubzyResult) ValidateResult() error

ValidateResult performs basic validation on the SubzyResult

type SubzySummary

type SubzySummary struct {
	Total      int    `json:"total"`
	Vulnerable int    `json:"vulnerable"`
	Verified   int    `json:"verified"`
	Potential  int    `json:"potential"`
	Duration   int    `json:"duration_ms"`
	Timestamp  string `json:"timestamp"`
}

SubzySummary provides statistics about the scan

Jump to

Keyboard shortcuts

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