Class: Google::Apis::OsconfigV1::CvsSv3

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/osconfig_v1/classes.rb,
lib/google/apis/osconfig_v1/representations.rb,
lib/google/apis/osconfig_v1/representations.rb

Overview

Common Vulnerability Scoring System version 3. For details, see https://www. first.org/cvss/specification-document

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ CvsSv3

Returns a new instance of CvsSv3.



132
133
134
# File 'lib/google/apis/osconfig_v1/classes.rb', line 132

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#attack_complexityString

This metric describes the conditions beyond the attacker's control that must exist in order to exploit the vulnerability. Corresponds to the JSON property attackComplexity

Returns:

  • (String)


69
70
71
# File 'lib/google/apis/osconfig_v1/classes.rb', line 69

def attack_complexity
  @attack_complexity
end

#attack_vectorString

This metric reflects the context by which vulnerability exploitation is possible. Corresponds to the JSON property attackVector

Returns:

  • (String)


75
76
77
# File 'lib/google/apis/osconfig_v1/classes.rb', line 75

def attack_vector
  @attack_vector
end

#availability_impactString

This metric measures the impact to the availability of the impacted component resulting from a successfully exploited vulnerability. Corresponds to the JSON property availabilityImpact

Returns:

  • (String)


81
82
83
# File 'lib/google/apis/osconfig_v1/classes.rb', line 81

def availability_impact
  @availability_impact
end

#base_scoreFloat

The base score is a function of the base metric scores. https://www.first.org/ cvss/specification-document#Base-Metrics Corresponds to the JSON property baseScore

Returns:

  • (Float)


87
88
89
# File 'lib/google/apis/osconfig_v1/classes.rb', line 87

def base_score
  @base_score
end

#confidentiality_impactString

This metric measures the impact to the confidentiality of the information resources managed by a software component due to a successfully exploited vulnerability. Corresponds to the JSON property confidentialityImpact

Returns:

  • (String)


94
95
96
# File 'lib/google/apis/osconfig_v1/classes.rb', line 94

def confidentiality_impact
  @confidentiality_impact
end

#exploitability_scoreFloat

The Exploitability sub-score equation is derived from the Base Exploitability metrics. https://www.first.org/cvss/specification-document#2-1-Exploitability- Metrics Corresponds to the JSON property exploitabilityScore

Returns:

  • (Float)


101
102
103
# File 'lib/google/apis/osconfig_v1/classes.rb', line 101

def exploitability_score
  @exploitability_score
end

#impact_scoreFloat

The Impact sub-score equation is derived from the Base Impact metrics. Corresponds to the JSON property impactScore

Returns:

  • (Float)


106
107
108
# File 'lib/google/apis/osconfig_v1/classes.rb', line 106

def impact_score
  @impact_score
end

#integrity_impactString

This metric measures the impact to integrity of a successfully exploited vulnerability. Corresponds to the JSON property integrityImpact

Returns:

  • (String)


112
113
114
# File 'lib/google/apis/osconfig_v1/classes.rb', line 112

def integrity_impact
  @integrity_impact
end

#privileges_requiredString

This metric describes the level of privileges an attacker must possess before successfully exploiting the vulnerability. Corresponds to the JSON property privilegesRequired

Returns:

  • (String)


118
119
120
# File 'lib/google/apis/osconfig_v1/classes.rb', line 118

def privileges_required
  @privileges_required
end

#scopeString

The Scope metric captures whether a vulnerability in one vulnerable component impacts resources in components beyond its security scope. Corresponds to the JSON property scope

Returns:

  • (String)


124
125
126
# File 'lib/google/apis/osconfig_v1/classes.rb', line 124

def scope
  @scope
end

#user_interactionString

This metric captures the requirement for a human user, other than the attacker, to participate in the successful compromise of the vulnerable component. Corresponds to the JSON property userInteraction

Returns:

  • (String)


130
131
132
# File 'lib/google/apis/osconfig_v1/classes.rb', line 130

def user_interaction
  @user_interaction
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



137
138
139
140
141
142
143
144
145
146
147
148
149
# File 'lib/google/apis/osconfig_v1/classes.rb', line 137

def update!(**args)
  @attack_complexity = args[:attack_complexity] if args.key?(:attack_complexity)
  @attack_vector = args[:attack_vector] if args.key?(:attack_vector)
  @availability_impact = args[:availability_impact] if args.key?(:availability_impact)
  @base_score = args[:base_score] if args.key?(:base_score)
  @confidentiality_impact = args[:confidentiality_impact] if args.key?(:confidentiality_impact)
  @exploitability_score = args[:exploitability_score] if args.key?(:exploitability_score)
  @impact_score = args[:impact_score] if args.key?(:impact_score)
  @integrity_impact = args[:integrity_impact] if args.key?(:integrity_impact)
  @privileges_required = args[:privileges_required] if args.key?(:privileges_required)
  @scope = args[:scope] if args.key?(:scope)
  @user_interaction = args[:user_interaction] if args.key?(:user_interaction)
end