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.
2276 2277 2278 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2276 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
2188 2189 2190 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2188 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
2194 2195 2196 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2194 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
2200 2201 2202 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2200 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
2206 2207 2208 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2206 def cvss3_score @cvss3_score end |
#description ⇒ String
Required. A description of the vulnerability.
Corresponds to the JSON property description
2211 2212 2213 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2211 def description @description end |
#disclosure_time ⇒ String
Optional. The disclosure time of the vulnerability.
Corresponds to the JSON property disclosureTime
2216 2217 2218 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2216 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
2222 2223 2224 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2222 def epss_score @epss_score end |
#exploitation_consequences ⇒ Array<String>
Optional. List of exploitation consequences for the vulnerability.
Corresponds to the JSON property exploitationConsequences
2227 2228 2229 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2227 def exploitation_consequences @exploitation_consequences end |
#exploitation_state ⇒ String
Required. The exploitation state of the vulnerability.
Corresponds to the JSON property exploitationState
2232 2233 2234 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2232 def exploitation_state @exploitation_state end |
#exploitation_vectors ⇒ Array<String>
Optional. List of exploitation vectors for the vulnerability.
Corresponds to the JSON property exploitationVectors
2237 2238 2239 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2237 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
2243 2244 2245 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2243 def matched_technologies @matched_technologies end |
#priority ⇒ String
Optional. The priority level of the vulnerability data. Ex: "P1".
Corresponds to the JSON property priority
2248 2249 2250 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2248 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
2253 2254 2255 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2253 def product_fixes @product_fixes end |
#public_exploits ⇒ Array<Google::Apis::ThreatintelligenceV1beta::PublicExploit>
Optional. List of public exploits.
Corresponds to the JSON property publicExploits
2258 2259 2260 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2258 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
2263 2264 2265 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2263 def publicly_available_exploit @publicly_available_exploit end |
#risk_rating ⇒ String
Required. The risk rating of the vulnerability.
Corresponds to the JSON property riskRating
2269 2270 2271 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2269 def @risk_rating end |
#technologies ⇒ Array<String>
Required. All technologies affected by the vulnerability. Ex: "Apache Struts".
Corresponds to the JSON property technologies
2274 2275 2276 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2274 def technologies @technologies end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2281 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 |