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.
2248 2249 2250 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2248 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
2160 2161 2162 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2160 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
2166 2167 2168 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2166 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
2172 2173 2174 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2172 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
2178 2179 2180 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2178 def cvss3_score @cvss3_score end |
#description ⇒ String
Required. A description of the vulnerability.
Corresponds to the JSON property description
2183 2184 2185 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2183 def description @description end |
#disclosure_time ⇒ String
Optional. The disclosure time of the vulnerability.
Corresponds to the JSON property disclosureTime
2188 2189 2190 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2188 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
2194 2195 2196 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2194 def epss_score @epss_score end |
#exploitation_consequences ⇒ Array<String>
Optional. List of exploitation consequences for the vulnerability.
Corresponds to the JSON property exploitationConsequences
2199 2200 2201 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2199 def exploitation_consequences @exploitation_consequences end |
#exploitation_state ⇒ String
Required. The exploitation state of the vulnerability.
Corresponds to the JSON property exploitationState
2204 2205 2206 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2204 def exploitation_state @exploitation_state end |
#exploitation_vectors ⇒ Array<String>
Optional. List of exploitation vectors for the vulnerability.
Corresponds to the JSON property exploitationVectors
2209 2210 2211 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2209 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
2215 2216 2217 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2215 def matched_technologies @matched_technologies end |
#priority ⇒ String
Optional. The priority level of the vulnerability data. Ex: "P1".
Corresponds to the JSON property priority
2220 2221 2222 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2220 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
2225 2226 2227 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2225 def product_fixes @product_fixes end |
#public_exploits ⇒ Array<Google::Apis::ThreatintelligenceV1beta::PublicExploit>
Optional. List of public exploits.
Corresponds to the JSON property publicExploits
2230 2231 2232 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2230 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
2235 2236 2237 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2235 def publicly_available_exploit @publicly_available_exploit end |
#risk_rating ⇒ String
Required. The risk rating of the vulnerability.
Corresponds to the JSON property riskRating
2241 2242 2243 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2241 def @risk_rating end |
#technologies ⇒ Array<String>
Required. All technologies affected by the vulnerability. Ex: "Apache Struts".
Corresponds to the JSON property technologies
2246 2247 2248 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2246 def technologies @technologies end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 |
# File 'lib/google/apis/threatintelligence_v1beta/classes.rb', line 2253 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 |