Class: Google::Apis::ThreatintelligenceV1beta::VulnerabilityMatch
- Inherits:
-
Object
- Object
- Google::Apis::ThreatintelligenceV1beta::VulnerabilityMatch
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/threatintelligence_v1beta/classes.rb,
lib/google/apis/threatintelligence_v1beta/representations.rb,
lib/google/apis/threatintelligence_v1beta/representations.rb
Overview
Contains details about a vulnerability match.
Instance Attribute Summary collapse
-
#associations ⇒ Array<Google::Apis::ThreatintelligenceV1beta::Association>
Optional.
-
#collection_id ⇒ String
Required.
-
#cve_id ⇒ String
Required.
-
#cvss3_score ⇒ Float
Required.
-
#description ⇒ String
Required.
-
#disclosure_time ⇒ String
Optional.
-
#epss_score ⇒ Float
Optional.
-
#exploitation_consequences ⇒ Array<String>
Optional.
-
#exploitation_state ⇒ String
Required.
-
#exploitation_vectors ⇒ Array<String>
Optional.
-
#matched_technologies ⇒ Array<String>
Optional.
-
#priority ⇒ String
Optional.
-
#product_fixes ⇒ Array<Google::Apis::ThreatintelligenceV1beta::ProductFix>
Optional.
-
#public_exploits ⇒ Array<Google::Apis::ThreatintelligenceV1beta::PublicExploit>
Optional.
-
#publicly_available_exploit ⇒ Boolean
(also: #publicly_available_exploit?)
Output only.
-
#risk_rating ⇒ String
Required.
-
#technologies ⇒ Array<String>
Required.
Instance Method Summary collapse
-
#initialize(**args) ⇒ VulnerabilityMatch
constructor
A new instance of VulnerabilityMatch.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ VulnerabilityMatch
Returns a new instance of VulnerabilityMatch.
2419 2420 2421 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2419 def initialize(**args) update!(**args) end |
Instance Attribute Details
#associations ⇒ Array<Google::Apis::ThreatintelligenceV1beta::Association>
Optional. Associated threat actors, malware, etc. This is embedded as a
snapshot because the details of the association at the time of the
vulnerability match are important for context and reporting.
Corresponds to the JSON property associations
2331 2332 2333 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2331 def associations @associations end |
#collection_id ⇒ String
Required. The collection ID of the vulnerability. Ex: "vulnerability--cve-2025-
9876".
Corresponds to the JSON property collectionId
2337 2338 2339 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2337 def collection_id @collection_id end |
#cve_id ⇒ String
Required. The CVE ID of the vulnerability. Ex: "CVE-2025-9876". See https://
www.cve.org/ for more information.
Corresponds to the JSON property cveId
2343 2344 2345 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2343 def cve_id @cve_id end |
#cvss3_score ⇒ Float
Required. The CVSS score of the vulnerability. Evaluates to CVSS v3 when
available with a fallback to v2 and v4. Example: 6.4.
Corresponds to the JSON property cvss3Score
2349 2350 2351 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2349 def cvss3_score @cvss3_score end |
#description ⇒ String
Required. A description of the vulnerability.
Corresponds to the JSON property description
2354 2355 2356 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2354 def description @description end |
#disclosure_time ⇒ String
Optional. The disclosure time of the vulnerability.
Corresponds to the JSON property disclosureTime
2359 2360 2361 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2359 def disclosure_time @disclosure_time end |
#epss_score ⇒ Float
Optional. The EPSS score, representing the probability of exploitation.
Example: 0.87.
Corresponds to the JSON property epssScore
2365 2366 2367 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2365 def epss_score @epss_score end |
#exploitation_consequences ⇒ Array<String>
Optional. List of exploitation consequences for the vulnerability.
Corresponds to the JSON property exploitationConsequences
2370 2371 2372 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2370 def exploitation_consequences @exploitation_consequences end |
#exploitation_state ⇒ String
Required. The exploitation state of the vulnerability.
Corresponds to the JSON property exploitationState
2375 2376 2377 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2375 def exploitation_state @exploitation_state end |
#exploitation_vectors ⇒ Array<String>
Optional. List of exploitation vectors for the vulnerability.
Corresponds to the JSON property exploitationVectors
2380 2381 2382 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2380 def exploitation_vectors @exploitation_vectors end |
#matched_technologies ⇒ Array<String>
Optional. The specific technologies from the configured watchlist that
triggered the match. Ex: "Apache Struts".
Corresponds to the JSON property matchedTechnologies
2386 2387 2388 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2386 def matched_technologies @matched_technologies end |
#priority ⇒ String
Optional. The priority level of the vulnerability data. Ex: "P1".
Corresponds to the JSON property priority
2391 2392 2393 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2391 def priority @priority end |
#product_fixes ⇒ Array<Google::Apis::ThreatintelligenceV1beta::ProductFix>
Optional. List of product fixes for the vulnerability.
Corresponds to the JSON property productFixes
2396 2397 2398 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2396 def product_fixes @product_fixes end |
#public_exploits ⇒ Array<Google::Apis::ThreatintelligenceV1beta::PublicExploit>
Optional. List of public exploits.
Corresponds to the JSON property publicExploits
2401 2402 2403 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2401 def public_exploits @public_exploits end |
#publicly_available_exploit ⇒ Boolean Also known as: publicly_available_exploit?
Output only. Whether a publicly available exploit exists.
Corresponds to the JSON property publiclyAvailableExploit
2406 2407 2408 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2406 def publicly_available_exploit @publicly_available_exploit end |
#risk_rating ⇒ String
Required. The risk rating of the vulnerability.
Corresponds to the JSON property riskRating
2412 2413 2414 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2412 def @risk_rating end |
#technologies ⇒ Array<String>
Required. All technologies affected by the vulnerability. Ex: "Apache Struts".
Corresponds to the JSON property technologies
2417 2418 2419 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2417 def technologies @technologies end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2424 def update!(**args) @associations = args[:associations] if args.key?(:associations) @collection_id = args[:collection_id] if args.key?(:collection_id) @cve_id = args[:cve_id] if args.key?(:cve_id) @cvss3_score = args[:cvss3_score] if args.key?(:cvss3_score) @description = args[:description] if args.key?(:description) @disclosure_time = args[:disclosure_time] if args.key?(:disclosure_time) @epss_score = args[:epss_score] if args.key?(:epss_score) @exploitation_consequences = args[:exploitation_consequences] if args.key?(:exploitation_consequences) @exploitation_state = args[:exploitation_state] if args.key?(:exploitation_state) @exploitation_vectors = args[:exploitation_vectors] if args.key?(:exploitation_vectors) @matched_technologies = args[:matched_technologies] if args.key?(:matched_technologies) @priority = args[:priority] if args.key?(:priority) @product_fixes = args[:product_fixes] if args.key?(:product_fixes) @public_exploits = args[:public_exploits] if args.key?(:public_exploits) @publicly_available_exploit = args[:publicly_available_exploit] if args.key?(:publicly_available_exploit) @risk_rating = args[:risk_rating] if args.key?(:risk_rating) @technologies = args[:technologies] if args.key?(:technologies) end |