@@ -16,6 +16,8 @@ syntax = "proto3";
1616
1717package google.cloud.securitycenter.v1 ;
1818
19+ import "google/protobuf/timestamp.proto" ;
20+
1921option csharp_namespace = "Google.Cloud.SecurityCenter.V1" ;
2022option go_package = "cloud.google.com/go/securitycenter/apiv1/securitycenterpb;securitycenterpb" ;
2123option java_multiple_files = true ;
@@ -29,11 +31,68 @@ message Vulnerability {
2931 // CVE stands for Common Vulnerabilities and Exposures
3032 // (https://cve.mitre.org/about/)
3133 Cve cve = 1 ;
34+
35+ // The offending package is relevant to the finding.
36+ Package offending_package = 2 ;
37+
38+ // The fixed package is relevant to the finding.
39+ Package fixed_package = 3 ;
40+
41+ // The security bulletin is relevant to this finding.
42+ SecurityBulletin security_bulletin = 4 ;
3243}
3344
3445// CVE stands for Common Vulnerabilities and Exposures.
35- // More information: https://cve.mitre.org
46+ // Information from the [CVE
47+ // record](https://www.cve.org/ResourcesSupport/Glossary) that describes this
48+ // vulnerability.
3649message Cve {
50+ // The possible values of impact of the vulnerability if it was to be
51+ // exploited.
52+ enum RiskRating {
53+ // Invalid or empty value.
54+ RISK_RATING_UNSPECIFIED = 0 ;
55+
56+ // Exploitation would have little to no security impact.
57+ LOW = 1 ;
58+
59+ // Exploitation would enable attackers to perform activities, or could allow
60+ // attackers to have a direct impact, but would require additional steps.
61+ MEDIUM = 2 ;
62+
63+ // Exploitation would enable attackers to have a notable direct impact
64+ // without needing to overcome any major mitigating factors.
65+ HIGH = 3 ;
66+
67+ // Exploitation would fundamentally undermine the security of affected
68+ // systems, enable actors to perform significant attacks with minimal
69+ // effort, with little to no mitigating factors to overcome.
70+ CRITICAL = 4 ;
71+ }
72+
73+ // The possible values of exploitation activity of the vulnerability in the
74+ // wild.
75+ enum ExploitationActivity {
76+ // Invalid or empty value.
77+ EXPLOITATION_ACTIVITY_UNSPECIFIED = 0 ;
78+
79+ // Exploitation has been reported or confirmed to widely occur.
80+ WIDE = 1 ;
81+
82+ // Limited reported or confirmed exploitation activities.
83+ CONFIRMED = 2 ;
84+
85+ // Exploit is publicly available.
86+ AVAILABLE = 3 ;
87+
88+ // No known exploitation activity, but has a high potential for
89+ // exploitation.
90+ ANTICIPATED = 4 ;
91+
92+ // No known exploitation activity.
93+ NO_KNOWN = 5 ;
94+ }
95+
3796 // The unique identifier for the vulnerability. e.g. CVE-2021-34527
3897 string id = 1 ;
3998
@@ -47,6 +106,19 @@ message Cve {
47106
48107 // Whether upstream fix is available for the CVE.
49108 bool upstream_fix_available = 4 ;
109+
110+ // The potential impact of the vulnerability if it was to be exploited.
111+ RiskRating impact = 5 ;
112+
113+ // The exploitation activity of the vulnerability in the wild.
114+ ExploitationActivity exploitation_activity = 6 ;
115+
116+ // Whether or not the vulnerability has been observed in the wild.
117+ bool observed_in_the_wild = 7 ;
118+
119+ // Whether or not the vulnerability was zero day when the finding was
120+ // published.
121+ bool zero_day = 8 ;
50122}
51123
52124// Additional Links
@@ -214,3 +286,31 @@ message Cvssv3 {
214286 // component resulting from a successfully exploited vulnerability.
215287 Impact availability_impact = 12 ;
216288}
289+
290+ // Package is a generic definition of a package.
291+ message Package {
292+ // The name of the package where the vulnerability was detected.
293+ string package_name = 1 ;
294+
295+ // The CPE URI where the vulnerability was detected.
296+ string cpe_uri = 2 ;
297+
298+ // Type of package, for example, os, maven, or go.
299+ string package_type = 3 ;
300+
301+ // The version of the package.
302+ string package_version = 4 ;
303+ }
304+
305+ // SecurityBulletin are notifications of vulnerabilities of Google products.
306+ message SecurityBulletin {
307+ // ID of the bulletin corresponding to the vulnerability.
308+ string bulletin_id = 1 ;
309+
310+ // Submission time of this Security Bulletin.
311+ google.protobuf.Timestamp submission_time = 2 ;
312+
313+ // This represents a version that the cluster receiving this notification
314+ // should be upgraded to, based on its current version. For example, 1.15.0
315+ string suggested_upgrade_version = 3 ;
316+ }
0 commit comments