vulcan

package
v1.0.0-rc1 Latest Latest
Warning

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

Go to latest
Published: May 31, 2022 License: MIT Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ReportData

type ReportData struct {
	ScanID  string `json:"scan_id"`
	Date    string
	Reports []vulcanreport.Report

	Risk                     vulcanreport.SeverityRank  `json:"risk"`
	ActionRequired           bool                       `json:"action_required"`
	Assets                   []string                   `json:"assets"`
	CheckTypes               []string                   `json:"checktypes"`
	VulnerabilitiesPerImpact []VulnerabilitiesPerImpact `json:"vulnerabilities_per_impact"`
	VulnerabilitiesPerAsset  []VulnerabilitiesPerAsset  `json:"vulnerabilities_per_asset"`
	TopVulnerabilities       []VulnerabilityCount       `json:"top_vulnerabilities"`
	NumberOfVulnerableAssets int                        `json:"number_vulnerable_assets"`
	Vulnerabilities          []Vulnerability            `json:"vulnerabilities"`
	Groups                   []models.Group             `json:"groups"`
	GroupsPerAsset           map[string][]models.Group  `json:"groups_per_asset"`
	// contains filtered or unexported fields
}

ReportData contains all required data for a detailed report

func GetReportData

func GetReportData(conf config.Config, scanID string) (*ReportData, error)

GetReportData extracts information about the given scan from both vulcan-persistence API and vulcan-results API

func GetReportDataFromFile

func GetReportDataFromFile(conf config.Config, scanID, path string) (*ReportData, error)

GetReportDataFromFile extracts information about a check report stored in file.

type VulnerabilitiesPerAsset

type VulnerabilitiesPerAsset struct {
	Asset           string `json:"asset_name"`
	Vulnerabilities int    `json:"vulnerabilities"`
}

VulnerabilitiesPerAsset associates a checktype with a number of vulnerabilities

type VulnerabilitiesPerImpact

type VulnerabilitiesPerImpact struct {
	Impact          string  `json:"impact"`
	Vulnerabilities float64 `json:"vulnerabilities"`
}

VulnerabilitiesPerImpact associates an impact with a number of vulnerabilities

type Vulnerability

type Vulnerability struct {
	Asset           string                     `json:"asset"`
	AffectedTargets []string                   `json:"affected_targets"`
	CheckType       string                     `json:"checktype"`
	Options         string                     `json:"options"`
	Vulnerability   vulcanreport.Vulnerability `json:"vulnerability"`
}

Vulnerability represents a vulnerability found on an asset by a checktype

type VulnerabilityCount

type VulnerabilityCount struct {
	Summary string `json:"summary"`
	Impact  string `json:"impact"`
	Count   int    `json:"count"`
}

VulnerabilityCount ...

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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