aboutsummaryrefslogtreecommitdiff
path: root/cisa/catalog.go
blob: 38116f6030c15ff66b8af574ca871b0bc9dd1666 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
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"`
}