Class: Google::Apis::ContaineranalysisV1alpha1::VulnerabilityDetails

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

Overview

Used by Occurrence to point to where the vulnerability exists and how to fix it.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ VulnerabilityDetails

Returns a new instance of VulnerabilityDetails.



8763
8764
8765
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 8763

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

Instance Attribute Details

#cvss_scoreFloat

Output only. The CVSS score of this vulnerability. CVSS score is on a scale of 0-10 where 0 indicates low severity and 10 indicates high severity. Corresponds to the JSON property cvssScore

Returns:

  • (Float)


8675
8676
8677
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 8675

def cvss_score
  @cvss_score
end

#cvss_v2Google::Apis::ContaineranalysisV1alpha1::Cvss

Common Vulnerability Scoring System. This message is compatible with CVSS v2 and v3. For CVSS v2 details, see https://www.first.org/cvss/v2/guide CVSS v2 calculator: https://nvd.nist.gov/vuln-metrics/cvss/v2-calculator For CVSS v3 details, see https://www.first.org/cvss/specification-document CVSS v3 calculator: https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator For CVSS v4 details, see https://www.first.org/cvss/v4.0/user-guide CVSS v4 calculator: https://nvd.nist.gov/vuln-metrics/cvss/v4-calculator Corresponds to the JSON property cvssV2



8686
8687
8688
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 8686

def cvss_v2
  @cvss_v2
end

#cvss_v3Google::Apis::ContaineranalysisV1alpha1::Cvss

Common Vulnerability Scoring System. This message is compatible with CVSS v2 and v3. For CVSS v2 details, see https://www.first.org/cvss/v2/guide CVSS v2 calculator: https://nvd.nist.gov/vuln-metrics/cvss/v2-calculator For CVSS v3 details, see https://www.first.org/cvss/specification-document CVSS v3 calculator: https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator For CVSS v4 details, see https://www.first.org/cvss/v4.0/user-guide CVSS v4 calculator: https://nvd.nist.gov/vuln-metrics/cvss/v4-calculator Corresponds to the JSON property cvssV3



8697
8698
8699
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 8697

def cvss_v3
  @cvss_v3
end

#cvss_v4Google::Apis::ContaineranalysisV1alpha1::Cvss

Common Vulnerability Scoring System. This message is compatible with CVSS v2 and v3. For CVSS v2 details, see https://www.first.org/cvss/v2/guide CVSS v2 calculator: https://nvd.nist.gov/vuln-metrics/cvss/v2-calculator For CVSS v3 details, see https://www.first.org/cvss/specification-document CVSS v3 calculator: https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator For CVSS v4 details, see https://www.first.org/cvss/v4.0/user-guide CVSS v4 calculator: https://nvd.nist.gov/vuln-metrics/cvss/v4-calculator Corresponds to the JSON property cvssV4



8708
8709
8710
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 8708

def cvss_v4
  @cvss_v4
end

#cvss_versionString

Output only. CVSS version used to populate cvss_score and severity. Corresponds to the JSON property cvssVersion

Returns:

  • (String)


8713
8714
8715
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 8713

def cvss_version
  @cvss_version
end

#effective_severityString

The distro assigned severity for this vulnerability when that is available and note provider assigned severity when distro has not yet assigned a severity for this vulnerability. When there are multiple package issues for this vulnerability, they can have different effective severities because some might come from the distro and some might come from installed language packs (e.g. Maven JARs or Go binaries). For this reason, it is advised to use the effective severity on the PackageIssue level, as this field may eventually be deprecated. In the case where multiple PackageIssues have different effective severities, the one set here will be the highest severity of any of the PackageIssues. Corresponds to the JSON property effectiveSeverity

Returns:

  • (String)


8727
8728
8729
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 8727

def effective_severity
  @effective_severity
end

#extra_detailsString

Occurrence-specific extra details about the vulnerability. Corresponds to the JSON property extraDetails

Returns:

  • (String)


8732
8733
8734
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 8732

def extra_details
  @extra_details
end

#package_issueArray<Google::Apis::ContaineranalysisV1alpha1::PackageIssue>

The set of affected locations and their fixes (if available) within the associated resource. Corresponds to the JSON property packageIssue



8738
8739
8740
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 8738

def package_issue
  @package_issue
end

#riskGoogle::Apis::ContaineranalysisV1alpha1::Risk

The Risk message provides information about the risk of a vulnerability. Corresponds to the JSON property risk



8743
8744
8745
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 8743

def risk
  @risk
end

#severityString

Output only. The note provider assigned Severity of the vulnerability. Corresponds to the JSON property severity

Returns:

  • (String)


8748
8749
8750
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 8748

def severity
  @severity
end

#typeString

The type of package; whether native or non native(ruby gems, node.js packages etc). This may be deprecated in the future because we can have multiple PackageIssues with different package types. Corresponds to the JSON property type

Returns:

  • (String)


8755
8756
8757
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 8755

def type
  @type
end

#vex_assessmentGoogle::Apis::ContaineranalysisV1alpha1::VexAssessment

VexAssessment provides all publisher provided Vex information that is related to this vulnerability. Corresponds to the JSON property vexAssessment



8761
8762
8763
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 8761

def vex_assessment
  @vex_assessment
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



8768
8769
8770
8771
8772
8773
8774
8775
8776
8777
8778
8779
8780
8781
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 8768

def update!(**args)
  @cvss_score = args[:cvss_score] if args.key?(:cvss_score)
  @cvss_v2 = args[:cvss_v2] if args.key?(:cvss_v2)
  @cvss_v3 = args[:cvss_v3] if args.key?(:cvss_v3)
  @cvss_v4 = args[:cvss_v4] if args.key?(:cvss_v4)
  @cvss_version = args[:cvss_version] if args.key?(:cvss_version)
  @effective_severity = args[:effective_severity] if args.key?(:effective_severity)
  @extra_details = args[:extra_details] if args.key?(:extra_details)
  @package_issue = args[:package_issue] if args.key?(:package_issue)
  @risk = args[:risk] if args.key?(:risk)
  @severity = args[:severity] if args.key?(:severity)
  @type = args[:type] if args.key?(:type)
  @vex_assessment = args[:vex_assessment] if args.key?(:vex_assessment)
end