From fab4b75cf2865e0022e68a8c1d4379a5763a67af Mon Sep 17 00:00:00 2001 From: Paul Duncan Date: Sun, 13 Mar 2022 10:18:22 -0400 Subject: cisa: add catalog.go --- cisa/catalog.go | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 cisa/catalog.go diff --git a/cisa/catalog.go b/cisa/catalog.go new file mode 100644 index 0000000..38116f6 --- /dev/null +++ b/cisa/catalog.go @@ -0,0 +1,51 @@ +package cisa + +import ( + "time" + "github.com/pablotron/cvez/feed" +) + +// Vulnerability entry. +type Vulnerability struct { + // CVE ID. + CveId feed.CveId `json:"cveID"` + + // Vendor or project name. + VendorProject string `json:"vendorProject"` + + // Product name. + Product string `json:"product"` + + // Vulnerability name. + Name string `json:"vulnerabilityName"` + + // Date vulnerability was added to catalog. + DateAdded Date `json:"dateAdded"` + + // Short description of vulnerability. + ShortDescription string `json:"shortDescription"` + + // Action required to address the Vulnerability. + RequiredAction string `json:"requiredAction"` + + // Date that required action is due. + DueDate Date `json:"dueDate"` +} + +// Known exploited vulnerabilities catalog. +type Catalog struct { + // Catalog title. + Title string `json:"title"` + + // Version of the known exploited vulnerabilities catalog. + Version string `json:"catalogVersion"` + + // Catalog release timestamp. + DateReleased time.Time `json:"dateReleased"` + + // Total number of vulnerabilities in catalog. + Count int64 `json:"count"` + + // Vulnerability entries. + Vulnerabilities []Vulnerability `json:"vulnerabilities"` +} -- cgit v1.2.3