Class: Google::Apis::OsconfigV1alpha::CvsSv3

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/osconfig_v1alpha/classes.rb,
lib/google/apis/osconfig_v1alpha/representations.rb,
lib/google/apis/osconfig_v1alpha/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.



97
98
99
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 97

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)


34
35
36
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 34

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)


40
41
42
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 40

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)


46
47
48
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 46

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)


52
53
54
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 52

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)


59
60
61
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 59

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)


66
67
68
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 66

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)


71
72
73
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 71

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)


77
78
79
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 77

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)


83
84
85
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 83

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)


89
90
91
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 89

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)


95
96
97
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 95

def user_interaction
  @user_interaction
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



102
103
104
105
106
107
108
109
110
111
112
113
114
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 102

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