xref: /aosp_15_r20/external/googleapis/google/cloud/securitycenter/v1/vulnerability.proto (revision d5c09012810ac0c9f33fe448fb6da8260d444cc9)
1*d5c09012SAndroid Build Coastguard Worker// Copyright 2023 Google LLC
2*d5c09012SAndroid Build Coastguard Worker//
3*d5c09012SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License");
4*d5c09012SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License.
5*d5c09012SAndroid Build Coastguard Worker// You may obtain a copy of the License at
6*d5c09012SAndroid Build Coastguard Worker//
7*d5c09012SAndroid Build Coastguard Worker//     http://www.apache.org/licenses/LICENSE-2.0
8*d5c09012SAndroid Build Coastguard Worker//
9*d5c09012SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software
10*d5c09012SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS,
11*d5c09012SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*d5c09012SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and
13*d5c09012SAndroid Build Coastguard Worker// limitations under the License.
14*d5c09012SAndroid Build Coastguard Worker
15*d5c09012SAndroid Build Coastguard Workersyntax = "proto3";
16*d5c09012SAndroid Build Coastguard Worker
17*d5c09012SAndroid Build Coastguard Workerpackage google.cloud.securitycenter.v1;
18*d5c09012SAndroid Build Coastguard Worker
19*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/timestamp.proto";
20*d5c09012SAndroid Build Coastguard Worker
21*d5c09012SAndroid Build Coastguard Workeroption csharp_namespace = "Google.Cloud.SecurityCenter.V1";
22*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/securitycenter/apiv1/securitycenterpb;securitycenterpb";
23*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true;
24*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "VulnerabilityProto";
25*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.cloud.securitycenter.v1";
26*d5c09012SAndroid Build Coastguard Workeroption php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
27*d5c09012SAndroid Build Coastguard Workeroption ruby_package = "Google::Cloud::SecurityCenter::V1";
28*d5c09012SAndroid Build Coastguard Worker
29*d5c09012SAndroid Build Coastguard Worker// Refers to common vulnerability fields e.g. cve, cvss, cwe etc.
30*d5c09012SAndroid Build Coastguard Workermessage Vulnerability {
31*d5c09012SAndroid Build Coastguard Worker  // CVE stands for Common Vulnerabilities and Exposures
32*d5c09012SAndroid Build Coastguard Worker  // (https://cve.mitre.org/about/)
33*d5c09012SAndroid Build Coastguard Worker  Cve cve = 1;
34*d5c09012SAndroid Build Coastguard Worker
35*d5c09012SAndroid Build Coastguard Worker  // The offending package is relevant to the finding.
36*d5c09012SAndroid Build Coastguard Worker  Package offending_package = 2;
37*d5c09012SAndroid Build Coastguard Worker
38*d5c09012SAndroid Build Coastguard Worker  // The fixed package is relevant to the finding.
39*d5c09012SAndroid Build Coastguard Worker  Package fixed_package = 3;
40*d5c09012SAndroid Build Coastguard Worker
41*d5c09012SAndroid Build Coastguard Worker  // The security bulletin is relevant to this finding.
42*d5c09012SAndroid Build Coastguard Worker  SecurityBulletin security_bulletin = 4;
43*d5c09012SAndroid Build Coastguard Worker}
44*d5c09012SAndroid Build Coastguard Worker
45*d5c09012SAndroid Build Coastguard Worker// CVE stands for Common Vulnerabilities and Exposures.
46*d5c09012SAndroid Build Coastguard Worker// Information from the [CVE
47*d5c09012SAndroid Build Coastguard Worker// record](https://www.cve.org/ResourcesSupport/Glossary) that describes this
48*d5c09012SAndroid Build Coastguard Worker// vulnerability.
49*d5c09012SAndroid Build Coastguard Workermessage Cve {
50*d5c09012SAndroid Build Coastguard Worker  // The possible values of impact of the vulnerability if it was to be
51*d5c09012SAndroid Build Coastguard Worker  // exploited.
52*d5c09012SAndroid Build Coastguard Worker  enum RiskRating {
53*d5c09012SAndroid Build Coastguard Worker    // Invalid or empty value.
54*d5c09012SAndroid Build Coastguard Worker    RISK_RATING_UNSPECIFIED = 0;
55*d5c09012SAndroid Build Coastguard Worker
56*d5c09012SAndroid Build Coastguard Worker    // Exploitation would have little to no security impact.
57*d5c09012SAndroid Build Coastguard Worker    LOW = 1;
58*d5c09012SAndroid Build Coastguard Worker
59*d5c09012SAndroid Build Coastguard Worker    // Exploitation would enable attackers to perform activities, or could allow
60*d5c09012SAndroid Build Coastguard Worker    // attackers to have a direct impact, but would require additional steps.
61*d5c09012SAndroid Build Coastguard Worker    MEDIUM = 2;
62*d5c09012SAndroid Build Coastguard Worker
63*d5c09012SAndroid Build Coastguard Worker    // Exploitation would enable attackers to have a notable direct impact
64*d5c09012SAndroid Build Coastguard Worker    // without needing to overcome any major mitigating factors.
65*d5c09012SAndroid Build Coastguard Worker    HIGH = 3;
66*d5c09012SAndroid Build Coastguard Worker
67*d5c09012SAndroid Build Coastguard Worker    // Exploitation would fundamentally undermine the security of affected
68*d5c09012SAndroid Build Coastguard Worker    // systems, enable actors to perform significant attacks with minimal
69*d5c09012SAndroid Build Coastguard Worker    // effort, with little to no mitigating factors to overcome.
70*d5c09012SAndroid Build Coastguard Worker    CRITICAL = 4;
71*d5c09012SAndroid Build Coastguard Worker  }
72*d5c09012SAndroid Build Coastguard Worker
73*d5c09012SAndroid Build Coastguard Worker  // The possible values of exploitation activity of the vulnerability in the
74*d5c09012SAndroid Build Coastguard Worker  // wild.
75*d5c09012SAndroid Build Coastguard Worker  enum ExploitationActivity {
76*d5c09012SAndroid Build Coastguard Worker    // Invalid or empty value.
77*d5c09012SAndroid Build Coastguard Worker    EXPLOITATION_ACTIVITY_UNSPECIFIED = 0;
78*d5c09012SAndroid Build Coastguard Worker
79*d5c09012SAndroid Build Coastguard Worker    // Exploitation has been reported or confirmed to widely occur.
80*d5c09012SAndroid Build Coastguard Worker    WIDE = 1;
81*d5c09012SAndroid Build Coastguard Worker
82*d5c09012SAndroid Build Coastguard Worker    // Limited reported or confirmed exploitation activities.
83*d5c09012SAndroid Build Coastguard Worker    CONFIRMED = 2;
84*d5c09012SAndroid Build Coastguard Worker
85*d5c09012SAndroid Build Coastguard Worker    // Exploit is publicly available.
86*d5c09012SAndroid Build Coastguard Worker    AVAILABLE = 3;
87*d5c09012SAndroid Build Coastguard Worker
88*d5c09012SAndroid Build Coastguard Worker    // No known exploitation activity, but has a high potential for
89*d5c09012SAndroid Build Coastguard Worker    // exploitation.
90*d5c09012SAndroid Build Coastguard Worker    ANTICIPATED = 4;
91*d5c09012SAndroid Build Coastguard Worker
92*d5c09012SAndroid Build Coastguard Worker    // No known exploitation activity.
93*d5c09012SAndroid Build Coastguard Worker    NO_KNOWN = 5;
94*d5c09012SAndroid Build Coastguard Worker  }
95*d5c09012SAndroid Build Coastguard Worker
96*d5c09012SAndroid Build Coastguard Worker  // The unique identifier for the vulnerability. e.g. CVE-2021-34527
97*d5c09012SAndroid Build Coastguard Worker  string id = 1;
98*d5c09012SAndroid Build Coastguard Worker
99*d5c09012SAndroid Build Coastguard Worker  // Additional information about the CVE.
100*d5c09012SAndroid Build Coastguard Worker  // e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527
101*d5c09012SAndroid Build Coastguard Worker  repeated Reference references = 2;
102*d5c09012SAndroid Build Coastguard Worker
103*d5c09012SAndroid Build Coastguard Worker  // Describe Common Vulnerability Scoring System specified at
104*d5c09012SAndroid Build Coastguard Worker  // https://www.first.org/cvss/v3.1/specification-document
105*d5c09012SAndroid Build Coastguard Worker  Cvssv3 cvssv3 = 3;
106*d5c09012SAndroid Build Coastguard Worker
107*d5c09012SAndroid Build Coastguard Worker  // Whether upstream fix is available for the CVE.
108*d5c09012SAndroid Build Coastguard Worker  bool upstream_fix_available = 4;
109*d5c09012SAndroid Build Coastguard Worker
110*d5c09012SAndroid Build Coastguard Worker  // The potential impact of the vulnerability if it was to be exploited.
111*d5c09012SAndroid Build Coastguard Worker  RiskRating impact = 5;
112*d5c09012SAndroid Build Coastguard Worker
113*d5c09012SAndroid Build Coastguard Worker  // The exploitation activity of the vulnerability in the wild.
114*d5c09012SAndroid Build Coastguard Worker  ExploitationActivity exploitation_activity = 6;
115*d5c09012SAndroid Build Coastguard Worker
116*d5c09012SAndroid Build Coastguard Worker  // Whether or not the vulnerability has been observed in the wild.
117*d5c09012SAndroid Build Coastguard Worker  bool observed_in_the_wild = 7;
118*d5c09012SAndroid Build Coastguard Worker
119*d5c09012SAndroid Build Coastguard Worker  // Whether or not the vulnerability was zero day when the finding was
120*d5c09012SAndroid Build Coastguard Worker  // published.
121*d5c09012SAndroid Build Coastguard Worker  bool zero_day = 8;
122*d5c09012SAndroid Build Coastguard Worker}
123*d5c09012SAndroid Build Coastguard Worker
124*d5c09012SAndroid Build Coastguard Worker// Additional Links
125*d5c09012SAndroid Build Coastguard Workermessage Reference {
126*d5c09012SAndroid Build Coastguard Worker  // Source of the reference e.g. NVD
127*d5c09012SAndroid Build Coastguard Worker  string source = 1;
128*d5c09012SAndroid Build Coastguard Worker
129*d5c09012SAndroid Build Coastguard Worker  // Uri for the mentioned source e.g.
130*d5c09012SAndroid Build Coastguard Worker  // https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527.
131*d5c09012SAndroid Build Coastguard Worker  string uri = 2;
132*d5c09012SAndroid Build Coastguard Worker}
133*d5c09012SAndroid Build Coastguard Worker
134*d5c09012SAndroid Build Coastguard Worker// Common Vulnerability Scoring System version 3.
135*d5c09012SAndroid Build Coastguard Workermessage Cvssv3 {
136*d5c09012SAndroid Build Coastguard Worker  // This metric reflects the context by which vulnerability exploitation is
137*d5c09012SAndroid Build Coastguard Worker  // possible.
138*d5c09012SAndroid Build Coastguard Worker  enum AttackVector {
139*d5c09012SAndroid Build Coastguard Worker    // Invalid value.
140*d5c09012SAndroid Build Coastguard Worker    ATTACK_VECTOR_UNSPECIFIED = 0;
141*d5c09012SAndroid Build Coastguard Worker
142*d5c09012SAndroid Build Coastguard Worker    // The vulnerable component is bound to the network stack and the set of
143*d5c09012SAndroid Build Coastguard Worker    // possible attackers extends beyond the other options listed below, up to
144*d5c09012SAndroid Build Coastguard Worker    // and including the entire Internet.
145*d5c09012SAndroid Build Coastguard Worker    ATTACK_VECTOR_NETWORK = 1;
146*d5c09012SAndroid Build Coastguard Worker
147*d5c09012SAndroid Build Coastguard Worker    // The vulnerable component is bound to the network stack, but the attack is
148*d5c09012SAndroid Build Coastguard Worker    // limited at the protocol level to a logically adjacent topology.
149*d5c09012SAndroid Build Coastguard Worker    ATTACK_VECTOR_ADJACENT = 2;
150*d5c09012SAndroid Build Coastguard Worker
151*d5c09012SAndroid Build Coastguard Worker    // The vulnerable component is not bound to the network stack and the
152*d5c09012SAndroid Build Coastguard Worker    // attacker's path is via read/write/execute capabilities.
153*d5c09012SAndroid Build Coastguard Worker    ATTACK_VECTOR_LOCAL = 3;
154*d5c09012SAndroid Build Coastguard Worker
155*d5c09012SAndroid Build Coastguard Worker    // The attack requires the attacker to physically touch or manipulate the
156*d5c09012SAndroid Build Coastguard Worker    // vulnerable component.
157*d5c09012SAndroid Build Coastguard Worker    ATTACK_VECTOR_PHYSICAL = 4;
158*d5c09012SAndroid Build Coastguard Worker  }
159*d5c09012SAndroid Build Coastguard Worker
160*d5c09012SAndroid Build Coastguard Worker  // This metric describes the conditions beyond the attacker's control that
161*d5c09012SAndroid Build Coastguard Worker  // must exist in order to exploit the vulnerability.
162*d5c09012SAndroid Build Coastguard Worker  enum AttackComplexity {
163*d5c09012SAndroid Build Coastguard Worker    // Invalid value.
164*d5c09012SAndroid Build Coastguard Worker    ATTACK_COMPLEXITY_UNSPECIFIED = 0;
165*d5c09012SAndroid Build Coastguard Worker
166*d5c09012SAndroid Build Coastguard Worker    // Specialized access conditions or extenuating circumstances do not exist.
167*d5c09012SAndroid Build Coastguard Worker    // An attacker can expect repeatable success when attacking the vulnerable
168*d5c09012SAndroid Build Coastguard Worker    // component.
169*d5c09012SAndroid Build Coastguard Worker    ATTACK_COMPLEXITY_LOW = 1;
170*d5c09012SAndroid Build Coastguard Worker
171*d5c09012SAndroid Build Coastguard Worker    // A successful attack depends on conditions beyond the attacker's control.
172*d5c09012SAndroid Build Coastguard Worker    // That is, a successful attack cannot be accomplished at will, but requires
173*d5c09012SAndroid Build Coastguard Worker    // the attacker to invest in some measurable amount of effort in preparation
174*d5c09012SAndroid Build Coastguard Worker    // or execution against the vulnerable component before a successful attack
175*d5c09012SAndroid Build Coastguard Worker    // can be expected.
176*d5c09012SAndroid Build Coastguard Worker    ATTACK_COMPLEXITY_HIGH = 2;
177*d5c09012SAndroid Build Coastguard Worker  }
178*d5c09012SAndroid Build Coastguard Worker
179*d5c09012SAndroid Build Coastguard Worker  // This metric describes the level of privileges an attacker must possess
180*d5c09012SAndroid Build Coastguard Worker  // before successfully exploiting the vulnerability.
181*d5c09012SAndroid Build Coastguard Worker  enum PrivilegesRequired {
182*d5c09012SAndroid Build Coastguard Worker    // Invalid value.
183*d5c09012SAndroid Build Coastguard Worker    PRIVILEGES_REQUIRED_UNSPECIFIED = 0;
184*d5c09012SAndroid Build Coastguard Worker
185*d5c09012SAndroid Build Coastguard Worker    // The attacker is unauthorized prior to attack, and therefore does not
186*d5c09012SAndroid Build Coastguard Worker    // require any access to settings or files of the vulnerable system to
187*d5c09012SAndroid Build Coastguard Worker    // carry out an attack.
188*d5c09012SAndroid Build Coastguard Worker    PRIVILEGES_REQUIRED_NONE = 1;
189*d5c09012SAndroid Build Coastguard Worker
190*d5c09012SAndroid Build Coastguard Worker    // The attacker requires privileges that provide basic user capabilities
191*d5c09012SAndroid Build Coastguard Worker    // that could normally affect only settings and files owned by a user.
192*d5c09012SAndroid Build Coastguard Worker    // Alternatively, an attacker with Low privileges has the ability to access
193*d5c09012SAndroid Build Coastguard Worker    // only non-sensitive resources.
194*d5c09012SAndroid Build Coastguard Worker    PRIVILEGES_REQUIRED_LOW = 2;
195*d5c09012SAndroid Build Coastguard Worker
196*d5c09012SAndroid Build Coastguard Worker    // The attacker requires privileges that provide significant (e.g.,
197*d5c09012SAndroid Build Coastguard Worker    // administrative) control over the vulnerable component allowing access to
198*d5c09012SAndroid Build Coastguard Worker    // component-wide settings and files.
199*d5c09012SAndroid Build Coastguard Worker    PRIVILEGES_REQUIRED_HIGH = 3;
200*d5c09012SAndroid Build Coastguard Worker  }
201*d5c09012SAndroid Build Coastguard Worker
202*d5c09012SAndroid Build Coastguard Worker  // This metric captures the requirement for a human user, other than the
203*d5c09012SAndroid Build Coastguard Worker  // attacker, to participate in the successful compromise of the vulnerable
204*d5c09012SAndroid Build Coastguard Worker  // component.
205*d5c09012SAndroid Build Coastguard Worker  enum UserInteraction {
206*d5c09012SAndroid Build Coastguard Worker    // Invalid value.
207*d5c09012SAndroid Build Coastguard Worker    USER_INTERACTION_UNSPECIFIED = 0;
208*d5c09012SAndroid Build Coastguard Worker
209*d5c09012SAndroid Build Coastguard Worker    // The vulnerable system can be exploited without interaction from any user.
210*d5c09012SAndroid Build Coastguard Worker    USER_INTERACTION_NONE = 1;
211*d5c09012SAndroid Build Coastguard Worker
212*d5c09012SAndroid Build Coastguard Worker    // Successful exploitation of this vulnerability requires a user to take
213*d5c09012SAndroid Build Coastguard Worker    // some action before the vulnerability can be exploited.
214*d5c09012SAndroid Build Coastguard Worker    USER_INTERACTION_REQUIRED = 2;
215*d5c09012SAndroid Build Coastguard Worker  }
216*d5c09012SAndroid Build Coastguard Worker
217*d5c09012SAndroid Build Coastguard Worker  // The Scope metric captures whether a vulnerability in one vulnerable
218*d5c09012SAndroid Build Coastguard Worker  // component impacts resources in components beyond its security scope.
219*d5c09012SAndroid Build Coastguard Worker  enum Scope {
220*d5c09012SAndroid Build Coastguard Worker    // Invalid value.
221*d5c09012SAndroid Build Coastguard Worker    SCOPE_UNSPECIFIED = 0;
222*d5c09012SAndroid Build Coastguard Worker
223*d5c09012SAndroid Build Coastguard Worker    // An exploited vulnerability can only affect resources managed by the same
224*d5c09012SAndroid Build Coastguard Worker    // security authority.
225*d5c09012SAndroid Build Coastguard Worker    SCOPE_UNCHANGED = 1;
226*d5c09012SAndroid Build Coastguard Worker
227*d5c09012SAndroid Build Coastguard Worker    // An exploited vulnerability can affect resources beyond the security scope
228*d5c09012SAndroid Build Coastguard Worker    // managed by the security authority of the vulnerable component.
229*d5c09012SAndroid Build Coastguard Worker    SCOPE_CHANGED = 2;
230*d5c09012SAndroid Build Coastguard Worker  }
231*d5c09012SAndroid Build Coastguard Worker
232*d5c09012SAndroid Build Coastguard Worker  // The Impact metrics capture the effects of a successfully exploited
233*d5c09012SAndroid Build Coastguard Worker  // vulnerability on the component that suffers the worst outcome that is most
234*d5c09012SAndroid Build Coastguard Worker  // directly and predictably associated with the attack.
235*d5c09012SAndroid Build Coastguard Worker  enum Impact {
236*d5c09012SAndroid Build Coastguard Worker    // Invalid value.
237*d5c09012SAndroid Build Coastguard Worker    IMPACT_UNSPECIFIED = 0;
238*d5c09012SAndroid Build Coastguard Worker
239*d5c09012SAndroid Build Coastguard Worker    // High impact.
240*d5c09012SAndroid Build Coastguard Worker    IMPACT_HIGH = 1;
241*d5c09012SAndroid Build Coastguard Worker
242*d5c09012SAndroid Build Coastguard Worker    // Low impact.
243*d5c09012SAndroid Build Coastguard Worker    IMPACT_LOW = 2;
244*d5c09012SAndroid Build Coastguard Worker
245*d5c09012SAndroid Build Coastguard Worker    // No impact.
246*d5c09012SAndroid Build Coastguard Worker    IMPACT_NONE = 3;
247*d5c09012SAndroid Build Coastguard Worker  }
248*d5c09012SAndroid Build Coastguard Worker
249*d5c09012SAndroid Build Coastguard Worker  // The base score is a function of the base metric scores.
250*d5c09012SAndroid Build Coastguard Worker  double base_score = 1;
251*d5c09012SAndroid Build Coastguard Worker
252*d5c09012SAndroid Build Coastguard Worker  // Base Metrics
253*d5c09012SAndroid Build Coastguard Worker  // Represents the intrinsic characteristics of a vulnerability that are
254*d5c09012SAndroid Build Coastguard Worker  // constant over time and across user environments.
255*d5c09012SAndroid Build Coastguard Worker  // This metric reflects the context by which vulnerability exploitation is
256*d5c09012SAndroid Build Coastguard Worker  // possible.
257*d5c09012SAndroid Build Coastguard Worker  AttackVector attack_vector = 5;
258*d5c09012SAndroid Build Coastguard Worker
259*d5c09012SAndroid Build Coastguard Worker  // This metric describes the conditions beyond the attacker's control that
260*d5c09012SAndroid Build Coastguard Worker  // must exist in order to exploit the vulnerability.
261*d5c09012SAndroid Build Coastguard Worker  AttackComplexity attack_complexity = 6;
262*d5c09012SAndroid Build Coastguard Worker
263*d5c09012SAndroid Build Coastguard Worker  // This metric describes the level of privileges an attacker must possess
264*d5c09012SAndroid Build Coastguard Worker  // before successfully exploiting the vulnerability.
265*d5c09012SAndroid Build Coastguard Worker  PrivilegesRequired privileges_required = 7;
266*d5c09012SAndroid Build Coastguard Worker
267*d5c09012SAndroid Build Coastguard Worker  // This metric captures the requirement for a human user, other than the
268*d5c09012SAndroid Build Coastguard Worker  // attacker, to participate in the successful compromise of the vulnerable
269*d5c09012SAndroid Build Coastguard Worker  // component.
270*d5c09012SAndroid Build Coastguard Worker  UserInteraction user_interaction = 8;
271*d5c09012SAndroid Build Coastguard Worker
272*d5c09012SAndroid Build Coastguard Worker  // The Scope metric captures whether a vulnerability in one vulnerable
273*d5c09012SAndroid Build Coastguard Worker  // component impacts resources in components beyond its security scope.
274*d5c09012SAndroid Build Coastguard Worker  Scope scope = 9;
275*d5c09012SAndroid Build Coastguard Worker
276*d5c09012SAndroid Build Coastguard Worker  // This metric measures the impact to the confidentiality of the information
277*d5c09012SAndroid Build Coastguard Worker  // resources managed by a software component due to a successfully exploited
278*d5c09012SAndroid Build Coastguard Worker  // vulnerability.
279*d5c09012SAndroid Build Coastguard Worker  Impact confidentiality_impact = 10;
280*d5c09012SAndroid Build Coastguard Worker
281*d5c09012SAndroid Build Coastguard Worker  // This metric measures the impact to integrity of a successfully exploited
282*d5c09012SAndroid Build Coastguard Worker  // vulnerability.
283*d5c09012SAndroid Build Coastguard Worker  Impact integrity_impact = 11;
284*d5c09012SAndroid Build Coastguard Worker
285*d5c09012SAndroid Build Coastguard Worker  // This metric measures the impact to the availability of the impacted
286*d5c09012SAndroid Build Coastguard Worker  // component resulting from a successfully exploited vulnerability.
287*d5c09012SAndroid Build Coastguard Worker  Impact availability_impact = 12;
288*d5c09012SAndroid Build Coastguard Worker}
289*d5c09012SAndroid Build Coastguard Worker
290*d5c09012SAndroid Build Coastguard Worker// Package is a generic definition of a package.
291*d5c09012SAndroid Build Coastguard Workermessage Package {
292*d5c09012SAndroid Build Coastguard Worker  // The name of the package where the vulnerability was detected.
293*d5c09012SAndroid Build Coastguard Worker  string package_name = 1;
294*d5c09012SAndroid Build Coastguard Worker
295*d5c09012SAndroid Build Coastguard Worker  // The CPE URI where the vulnerability was detected.
296*d5c09012SAndroid Build Coastguard Worker  string cpe_uri = 2;
297*d5c09012SAndroid Build Coastguard Worker
298*d5c09012SAndroid Build Coastguard Worker  // Type of package, for example, os, maven, or go.
299*d5c09012SAndroid Build Coastguard Worker  string package_type = 3;
300*d5c09012SAndroid Build Coastguard Worker
301*d5c09012SAndroid Build Coastguard Worker  // The version of the package.
302*d5c09012SAndroid Build Coastguard Worker  string package_version = 4;
303*d5c09012SAndroid Build Coastguard Worker}
304*d5c09012SAndroid Build Coastguard Worker
305*d5c09012SAndroid Build Coastguard Worker// SecurityBulletin are notifications of vulnerabilities of Google products.
306*d5c09012SAndroid Build Coastguard Workermessage SecurityBulletin {
307*d5c09012SAndroid Build Coastguard Worker  // ID of the bulletin corresponding to the vulnerability.
308*d5c09012SAndroid Build Coastguard Worker  string bulletin_id = 1;
309*d5c09012SAndroid Build Coastguard Worker
310*d5c09012SAndroid Build Coastguard Worker  // Submission time of this Security Bulletin.
311*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp submission_time = 2;
312*d5c09012SAndroid Build Coastguard Worker
313*d5c09012SAndroid Build Coastguard Worker  // This represents a version that the cluster receiving this notification
314*d5c09012SAndroid Build Coastguard Worker  // should be upgraded to, based on its current version. For example, 1.15.0
315*d5c09012SAndroid Build Coastguard Worker  string suggested_upgrade_version = 3;
316*d5c09012SAndroid Build Coastguard Worker}
317