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