vulnerability

package
v0.12.10 Latest Latest
Warning

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

Go to latest
Published: Aug 25, 2026 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BuildCVELink(cve string) string

BuildCVELink builds a CVE link from a CVE identifier.

func DetermineAuthType added in v0.10.13

func DetermineAuthType(cvssVector, title string) string

DetermineAuthType determines auth type by trying CVSS vector first, then title fallback.

func DetermineAuthTypeFromCVSS

func DetermineAuthTypeFromCVSS(cvssVector string) string

DetermineAuthTypeFromCVSS determines authentication type from CVSS vector.

func DetermineAuthTypeFromTitle

func DetermineAuthTypeFromTitle(title string) string

DetermineAuthTypeFromTitle determines authentication type from title if CVSS is not available.

func DetermineSeverity added in v0.10.13

func DetermineSeverity(cvssScore float64, title string) string

DetermineSeverity determines severity by trying CVSS score first, then title fallback.

func DetermineSeverityFromCVSS

func DetermineSeverityFromCVSS(cvssScore float64) string

DetermineSeverityFromCVSS determines severity from CVSS score.

func DetermineSeverityFromTitle

func DetermineSeverityFromTitle(title string) string

DetermineSeverityFromTitle determines severity from title if CVSS is not available.

func ReloadVulnerabilityCache added in v0.10.7

func ReloadVulnerabilityCache()

ReloadVulnerabilityCache forces a reload of the vulnerability cache. Call this after updating the database files.

func SaveVulnerabilitiesToFile

func SaveVulnerabilitiesToFile(
	vulnerabilities []Vulnerability,
	filename string,
	sourceName string,
) error

SaveVulnerabilitiesToFile saves vulnerabilities to a JSON file.

Types

type Vulnerability

type Vulnerability struct {
	Title           string  `json:"title"`
	Slug            string  `json:"slug"`
	SoftwareType    string  `json:"type"`
	AffectedVersion string  `json:"affected_version"`
	FromVersion     string  `json:"from_version"`
	FromInclusive   bool    `json:"from_inclusive"`
	ToVersion       string  `json:"to_version"`
	ToInclusive     bool    `json:"to_inclusive"`
	Severity        string  `json:"severity"`
	CVE             string  `json:"cve"`
	CVELink         string  `json:"cve_link"`
	AuthType        string  `json:"auth_type"`
	CVSSScore       float64 `json:"cvss_score"`
	CVSSVector      string  `json:"cvss_vector"`
}

Vulnerability represents a vulnerability entry from any source (Wordfence, WPScan, etc.).

func GetAllVulnerabilities added in v0.10.9

func GetAllVulnerabilities() []Vulnerability

GetAllVulnerabilities returns all vulnerabilities (Wordfence + WPScan) from the global cache. This function returns a reference to the cached slice - do not modify the returned slice. The cache is loaded once and shared across all scanners to prevent memory bloat.

func GetVulnerabilitiesForPlugin

func GetVulnerabilitiesForPlugin(
	vulnerabilities []Vulnerability,
	plugin string,
	version string,
) []Vulnerability

GetVulnerabilitiesForPlugin returns vulnerabilities for a specific plugin and version.

func GetWPScanVulnerabilitiesForPlugin

func GetWPScanVulnerabilitiesForPlugin(plugin string, version string) []Vulnerability

GetWPScanVulnerabilitiesForPlugin returns WPScan vulnerabilities for a specific plugin and version.

func GetWordfenceVulnerabilitiesForPlugin

func GetWordfenceVulnerabilitiesForPlugin(plugin string, version string) []Vulnerability

GetWordfenceVulnerabilitiesForPlugin returns Wordfence vulnerabilities for a specific plugin and version.

func LoadWPScanVulnerabilities

func LoadWPScanVulnerabilities() ([]Vulnerability, error)

LoadWPScanVulnerabilities loads WPScan vulnerabilities from file. Uses a global cache - data is loaded only once and shared across all scans.

func LoadWordfenceVulnerabilities

func LoadWordfenceVulnerabilities() ([]Vulnerability, error)

LoadWordfenceVulnerabilities loads Wordfence vulnerabilities from file. Uses a global cache - data is loaded only once and shared across all scans.

Jump to

Keyboard shortcuts

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