vuln

package
v0.14.0 Latest Latest
Warning

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

Go to latest
Published: Jan 11, 2024 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	RegexCVE  = regexp.MustCompile(`^CVE-\d{4}-\d{4,}$`)
	RegexGHSA = regexp.MustCompile(`^GHSA(-[23456789cfghjmpqrvwx]{4}){3}$`)
	RegexGO   = regexp.MustCompile(`^GO-\d{4}-\d{4}$`)
)

Functions

func ValidateCPE added in v0.2.0

func ValidateCPE(cpe string) error

ValidateCPE returns an error if the CPE is invalid.

func ValidateID added in v0.2.0

func ValidateID(id string) error

ValidateID returns an error if the given ID is not a valid CVE ID, GHSA ID, or Go vulnerability ID.

Types

type CPE

type CPE struct {
	URI          string
	VersionRange VersionRange
}

type Detector

type Detector interface {
	VulnerabilitiesForPackages(context.Context, ...string) (map[string][]Match, error)
	VulnerabilitiesForPackage(context.Context, string) ([]Match, error)
}

type EventMatchingFinished added in v0.4.0

type EventMatchingFinished struct {
}

type EventPackageMatchingError added in v0.4.0

type EventPackageMatchingError struct {
	Package string
	Err     error
}

type EventPackageMatchingFinished added in v0.4.0

type EventPackageMatchingFinished struct {
	Package string
	Matches []Match
}

type EventPackageMatchingStarting added in v0.4.0

type EventPackageMatchingStarting struct {
	Package string
}

type Match

type Match struct {
	Package       Package
	CPESearched   CPE
	CPEFound      CPE
	Vulnerability Vulnerability
}

type Package

type Package struct {
	Name string
}

type Severity added in v0.4.0

type Severity string
const (
	SeverityUnknown  Severity = "Unknown"
	SeverityLow      Severity = "Low"
	SeverityMedium   Severity = "Medium"
	SeverityHigh     Severity = "High"
	SeverityCritical Severity = "Critical"
)

type VersionRange

type VersionRange struct {
	// SingleVersion is populated when the VersionRange describes only a single
	// version. If this field is used, all other fields should be set to their zero
	// value.
	SingleVersion string

	VersionRangeLower          string
	VersionRangeLowerInclusive bool
	VersionRangeUpper          string
	VersionRangeUpperInclusive bool
}

VersionRange describes a continuous range of versions.

func (VersionRange) Includes

func (vr VersionRange) Includes(otherVersion string) bool

Includes returns a bool indicating whether the given version is contained within the VersionRange.

type Vulnerability

type Vulnerability struct {
	ID, URL  string
	Severity Severity
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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