aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cisa/catalog.go51
1 files changed, 51 insertions, 0 deletions
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"`
+}