regscale-cli 6.16.4.0__py3-none-any.whl → 6.17.0.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of regscale-cli might be problematic. Click here for more details.

Files changed (32) hide show
  1. regscale/__init__.py +1 -1
  2. regscale/core/app/api.py +4 -1
  3. regscale/core/app/utils/regscale_utils.py +2 -3
  4. regscale/dev/code_gen.py +10 -7
  5. regscale/integrations/commercial/aws/inventory/base.py +0 -2
  6. regscale/integrations/commercial/durosuite/api.py +20 -9
  7. regscale/integrations/commercial/opentext/scanner.py +2 -2
  8. regscale/integrations/commercial/sap/sysdig/sysdig_scanner.py +40 -21
  9. regscale/integrations/commercial/sap/tenable/scanner.py +41 -15
  10. regscale/integrations/commercial/sicura/api.py +9 -1
  11. regscale/integrations/commercial/synqly/edr.py +84 -0
  12. regscale/integrations/commercial/tenablev2/click.py +20 -2
  13. regscale/integrations/commercial/tenablev2/scanner.py +1 -1
  14. regscale/integrations/scanner_integration.py +84 -30
  15. regscale/models/integration_models/cisa_kev_data.json +100 -10
  16. regscale/models/integration_models/synqly_models/capabilities.json +1 -1
  17. regscale/models/integration_models/synqly_models/connectors/__init__.py +1 -0
  18. regscale/models/integration_models/synqly_models/connectors/edr.py +137 -0
  19. regscale/models/integration_models/synqly_models/ocsf_mapper.py +61 -11
  20. regscale/models/integration_models/synqly_models/synqly_model.py +8 -5
  21. regscale/models/regscale_models/file.py +3 -1
  22. regscale/models/regscale_models/master_assessment.py +127 -0
  23. regscale/models/regscale_models/regscale_model.py +2 -4
  24. regscale/models/regscale_models/risk.py +26 -31
  25. regscale/models/regscale_models/supply_chain.py +5 -5
  26. regscale/regscale.py +2 -0
  27. {regscale_cli-6.16.4.0.dist-info → regscale_cli-6.17.0.0.dist-info}/METADATA +1 -1
  28. {regscale_cli-6.16.4.0.dist-info → regscale_cli-6.17.0.0.dist-info}/RECORD +32 -29
  29. {regscale_cli-6.16.4.0.dist-info → regscale_cli-6.17.0.0.dist-info}/LICENSE +0 -0
  30. {regscale_cli-6.16.4.0.dist-info → regscale_cli-6.17.0.0.dist-info}/WHEEL +0 -0
  31. {regscale_cli-6.16.4.0.dist-info → regscale_cli-6.17.0.0.dist-info}/entry_points.txt +0 -0
  32. {regscale_cli-6.16.4.0.dist-info → regscale_cli-6.17.0.0.dist-info}/top_level.txt +0 -0
@@ -6,9 +6,9 @@ import datetime
6
6
  import json
7
7
  import linecache
8
8
  import logging
9
+ from pathlib import Path
9
10
  from typing import Any, Dict, Iterator, List, Optional, Tuple
10
11
 
11
- from pathlib import Path
12
12
  from tenable.errors import TioExportsError
13
13
 
14
14
  from regscale.core.app.utils.app_utils import get_current_datetime
@@ -2392,53 +2392,97 @@ class ScannerIntegration(ABC):
2392
2392
  :rtype: int
2393
2393
  """
2394
2394
  if not self.close_outdated_findings:
2395
- # This should normally be set to True, but on POAM import, we do not want to automatically close issues,
2396
- # unless the sheet specifies to do so
2397
2395
  logger.info("Skipping closing outdated issues.")
2398
2396
  return 0
2399
2397
 
2400
2398
  closed_count = 0
2401
2399
  affected_control_ids = set()
2400
+ count_lock = threading.Lock()
2402
2401
 
2403
- # Get all open issues for this security plan
2404
2402
  open_issues = regscale_models.Issue.fetch_issues_by_ssp(
2405
2403
  None, ssp_id=self.plan_id, status=regscale_models.IssueStatus.Open.value
2406
2404
  )
2407
-
2408
- # Create a progress bar
2409
2405
  task_id = self.finding_progress.add_task(
2410
2406
  f"[cyan]Analyzing {len(open_issues)} issue(s) and closing any outdated issue(s)...", total=len(open_issues)
2411
2407
  )
2412
2408
 
2413
- for issue in open_issues:
2414
- if self.should_close_issue(issue, current_vulnerabilities):
2415
- issue.status = regscale_models.IssueStatus.Closed
2416
- issue.dateCompleted = get_current_datetime()
2417
- changes_text = f"{get_current_datetime('%b %d, %Y')} - Closed by {self.title} for having no current vulnerabilities."
2418
- if issue.changes:
2419
- issue.changes += f"\n{changes_text}"
2420
- else:
2421
- issue.changes = changes_text
2422
- issue.save()
2423
- closed_count += 1
2409
+ def _process_single_issue(iss: regscale_models.Issue):
2410
+ """
2411
+ Process a single issue and update its status if necessary.
2424
2412
 
2425
- # Track affected control implementations
2426
- if issue.controlImplementationIds:
2427
- affected_control_ids.update(issue.controlImplementationIds)
2413
+ :param regscale_models.Issue iss: The issue to process
2414
+ """
2415
+ if self.should_close_issue(iss, current_vulnerabilities):
2416
+ self._close_issue(iss, count_lock, affected_control_ids)
2417
+ with count_lock:
2418
+ self.finding_progress.update(task_id, advance=1)
2428
2419
 
2429
- # Update the progress bar
2430
- self.finding_progress.update(task_id, advance=1)
2420
+ max_workers = get_thread_workers_max()
2421
+ if max_workers == 1:
2422
+ for issue in open_issues:
2423
+ _process_single_issue(issue)
2424
+ else:
2425
+ self._process_issues_multithreaded(open_issues, _process_single_issue, max_workers)
2431
2426
 
2432
- # Update status of affected control implementations
2433
2427
  for control_id in affected_control_ids:
2434
2428
  self.update_control_implementation_status_after_close(control_id)
2435
2429
 
2436
- if closed_count > 0:
2430
+ (
2437
2431
  logger.info("Closed %d outdated issues.", closed_count)
2438
- else:
2439
- logger.info("No outdated issues to close.")
2432
+ if closed_count > 0
2433
+ else logger.info("No outdated issues to close.")
2434
+ )
2440
2435
  return closed_count
2441
2436
 
2437
+ def _close_issue(self, issue: regscale_models.Issue, count_lock: threading.Lock, affected_control_ids: set):
2438
+ """
2439
+ Close an issue and update related data.
2440
+
2441
+ :param regscale_models.Issue issue: The issue to close
2442
+ :param threading.Lock count_lock: A lock to synchronize access to shared variables
2443
+ :param set affected_control_ids: A set to store affected control implementation IDs
2444
+ """
2445
+ issue.status = regscale_models.IssueStatus.Closed
2446
+ issue.dateCompleted = get_current_datetime()
2447
+ changes_text = (
2448
+ f"{get_current_datetime('%b %d, %Y')} - Closed by {self.title} for having no current vulnerabilities."
2449
+ )
2450
+ issue.changes = f"{issue.changes}\n{changes_text}" if issue.changes else changes_text
2451
+ issue.save()
2452
+
2453
+ with count_lock:
2454
+ self.closed_count += 1
2455
+ if issue.controlImplementationIds:
2456
+ affected_control_ids.update(issue.controlImplementationIds)
2457
+
2458
+ def _process_issues_multithreaded(self, open_issues: list, process_issue: callable, max_workers: int):
2459
+ """
2460
+ Process issues using multiple threads.
2461
+
2462
+ :param list open_issues: List of open issues to process
2463
+ :param callable process_issue: Function to process an issue
2464
+ :param int max_workers: Maximum number of threads
2465
+ """
2466
+ batch_size = max_workers * 2
2467
+ with ThreadPoolExecutor(max_workers=max_workers) as executor:
2468
+ batch = []
2469
+ futures = []
2470
+
2471
+ for issue in open_issues:
2472
+ batch.append(issue)
2473
+ if len(batch) >= batch_size:
2474
+ futures.extend([executor.submit(process_issue, issue) for issue in batch])
2475
+ batch = []
2476
+
2477
+ if batch:
2478
+ futures.extend([executor.submit(process_issue, issue) for issue in batch])
2479
+
2480
+ for future in concurrent.futures.as_completed(futures):
2481
+ try:
2482
+ future.result()
2483
+ except Exception as exc:
2484
+ self.log_error("Error processing issue: %s", exc)
2485
+
2442
2486
  def update_control_implementation_status_after_close(self, control_id: int) -> None:
2443
2487
  """
2444
2488
  Updates the status of a control implementation after closing issues.
@@ -2520,6 +2564,8 @@ class ScannerIntegration(ABC):
2520
2564
  scan_history.vHigh += 1
2521
2565
  elif severity == regscale_models.IssueSeverity.Critical:
2522
2566
  scan_history.vCritical += 1
2567
+ else:
2568
+ scan_history.vInfo += 1
2523
2569
 
2524
2570
  @classmethod
2525
2571
  def cci_assessment(cls, plan_id: int) -> None:
@@ -2601,7 +2647,13 @@ class ScannerIntegration(ABC):
2601
2647
  logger.info("All findings have been processed successfully.")
2602
2648
 
2603
2649
  if scan_history := instance._results.get("scan_history"):
2604
- open_count = scan_history.vCritical + scan_history.vHigh + scan_history.vMedium + scan_history.vLow
2650
+ open_count = (
2651
+ scan_history.vCritical
2652
+ + scan_history.vHigh
2653
+ + scan_history.vMedium
2654
+ + scan_history.vLow
2655
+ + scan_history.vInfo
2656
+ )
2605
2657
  closed_count = findings_processed - open_count
2606
2658
  logger.info(
2607
2659
  "Processed %d total findings. Open vulnerabilities: %d & Closed vulnerabilities: %d",
@@ -2610,12 +2662,13 @@ class ScannerIntegration(ABC):
2610
2662
  closed_count,
2611
2663
  )
2612
2664
  logger.info(
2613
- "%d Open vulnerabilities: Critical(s): %d, High(s): %d, Medium(s): %d, Low(s): %d",
2665
+ "%d Open vulnerabilities: Critical(s): %d, High(s): %d, Medium(s): %d, Low(s): %d, and %d Info(s).",
2614
2666
  open_count,
2615
2667
  scan_history.vCritical,
2616
2668
  scan_history.vHigh,
2617
2669
  scan_history.vMedium,
2618
2670
  scan_history.vLow,
2671
+ scan_history.vInfo,
2619
2672
  )
2620
2673
  else:
2621
2674
  logger.info("Processed %d findings.", findings_processed)
@@ -2809,9 +2862,10 @@ class ScannerIntegration(ABC):
2809
2862
  :return: None
2810
2863
  :rtype: None
2811
2864
  """
2812
- logger.info(f"Updating scan history with scan_date {self.scan_date}")
2813
- scan_history.scanDate = datetime_str(self.scan_date)
2814
- scan_history.save()
2865
+ if scan_history.scanDate != datetime_str(self.scan_date):
2866
+ logger.debug("Updating scan history scan date to %s", datetime_str(self.scan_date))
2867
+ scan_history.scanDate = datetime_str(self.scan_date)
2868
+ scan_history.save()
2815
2869
 
2816
2870
  @staticmethod
2817
2871
  def get_date_completed(finding: IntegrationFinding, issue_status: regscale_models.IssueStatus) -> Optional[str]:
@@ -1,9 +1,99 @@
1
1
  {
2
2
  "title": "CISA Catalog of Known Exploited Vulnerabilities",
3
- "catalogVersion": "2025.04.03",
4
- "dateReleased": "2025-04-03T12:34:57.2906Z",
5
- "count": 1313,
3
+ "catalogVersion": "2025.04.11",
4
+ "dateReleased": "2025-04-11T17:52:01.5722Z",
5
+ "count": 1319,
6
6
  "vulnerabilities": [
7
+ {
8
+ "cveID": "CVE-2024-53150",
9
+ "vendorProject": "Linux",
10
+ "product": "Kernel",
11
+ "vulnerabilityName": "Linux Kernel Out-of-Bounds Read Vulnerability",
12
+ "dateAdded": "2025-04-09",
13
+ "shortDescription": "Linux Kernel contains an out-of-bounds read vulnerability in the USB-audio driver that allows a local, privileged attacker to obtain potentially sensitive information.",
14
+ "requiredAction": "Apply mitigations per vendor instructions, follow applicable BOD 22-01 guidance for cloud services, or discontinue use of the product if mitigations are unavailable.",
15
+ "dueDate": "2025-04-30",
16
+ "knownRansomwareCampaignUse": "Unknown",
17
+ "notes": "This vulnerability affects a common open-source component, third-party library, or a protocol used by different products. For more information, please see: https:\/\/lore.kernel.org\/linux-cve-announce\/2024122427-CVE-2024-53150-3a7d@gregkh\/ ; https:\/\/source.android.com\/docs\/security\/bulletin\/2025-04-01 ; https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2024-53150",
18
+ "cwes": [
19
+ "CWE-125"
20
+ ]
21
+ },
22
+ {
23
+ "cveID": "CVE-2024-53197",
24
+ "vendorProject": "Linux",
25
+ "product": "Kernel",
26
+ "vulnerabilityName": "Linux Kernel Out-of-Bounds Access Vulnerability",
27
+ "dateAdded": "2025-04-09",
28
+ "shortDescription": "Linux Kernel contains an out-of-bounds access vulnerability in the USB-audio driver that allows an attacker with physical access to the system to use a malicious USB device to potentially manipulate system memory, escalate privileges, or execute arbitrary code.",
29
+ "requiredAction": "Apply mitigations per vendor instructions, follow applicable BOD 22-01 guidance for cloud services, or discontinue use of the product if mitigations are unavailable.",
30
+ "dueDate": "2025-04-30",
31
+ "knownRansomwareCampaignUse": "Unknown",
32
+ "notes": "This vulnerability affects a common open-source component, third-party library, or a protocol used by different products. For more information, please see: https:\/\/lore.kernel.org\/linux-cve-announce\/2024122725-CVE-2024-53197-6aef@gregkh\/ ; https:\/\/source.android.com\/docs\/security\/bulletin\/2025-04-01 ; https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2024-53197",
33
+ "cwes": [
34
+ "CWE-787"
35
+ ]
36
+ },
37
+ {
38
+ "cveID": "CVE-2025-29824",
39
+ "vendorProject": "Microsoft",
40
+ "product": "Windows",
41
+ "vulnerabilityName": "Microsoft Windows Common Log File System (CLFS) Driver Use-After-Free Vulnerability",
42
+ "dateAdded": "2025-04-08",
43
+ "shortDescription": "Microsoft Windows Common Log File System (CLFS) Driver contains a use-after-free vulnerability that allows an authorized attacker to elevate privileges locally.",
44
+ "requiredAction": "Apply mitigations per vendor instructions, follow applicable BOD 22-01 guidance for cloud services, or discontinue use of the product if mitigations are unavailable.",
45
+ "dueDate": "2025-04-29",
46
+ "knownRansomwareCampaignUse": "Known",
47
+ "notes": "https:\/\/msrc.microsoft.com\/update-guide\/en-US\/vulnerability\/CVE-2025-29824 ; https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2025-29824",
48
+ "cwes": [
49
+ "CWE-416"
50
+ ]
51
+ },
52
+ {
53
+ "cveID": "CVE-2025-30406",
54
+ "vendorProject": "Gladinet",
55
+ "product": "CentreStack",
56
+ "vulnerabilityName": "Gladinet CentreStack Use of Hard-coded Cryptographic Key Vulnerability",
57
+ "dateAdded": "2025-04-08",
58
+ "shortDescription": "Gladinet CentreStack contains a use of hard-coded cryptographic key vulnerability in the way that the application manages keys used for ViewState integrity verification. Successful exploitation allows an attacker to forge ViewState payloads for server-side deserialization, allowing for remote code execution.",
59
+ "requiredAction": "Apply mitigations per vendor instructions, follow applicable BOD 22-01 guidance for cloud services, or discontinue use of the product if mitigations are unavailable.",
60
+ "dueDate": "2025-04-29",
61
+ "knownRansomwareCampaignUse": "Unknown",
62
+ "notes": "https:\/\/gladinetsupport.s3.us-east-1.amazonaws.com\/gladinet\/securityadvisory-cve-2005.pdf ; https:\/\/www.centrestack.com\/p\/gce_latest_release.html ; https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2025-30406",
63
+ "cwes": [
64
+ "CWE-321"
65
+ ]
66
+ },
67
+ {
68
+ "cveID": "CVE-2025-31161",
69
+ "vendorProject": "CrushFTP",
70
+ "product": "CrushFTP",
71
+ "vulnerabilityName": "CrushFTP Authentication Bypass Vulnerability",
72
+ "dateAdded": "2025-04-07",
73
+ "shortDescription": "CrushFTP contains an authentication bypass vulnerability in the HTTP authorization header that allows a remote unauthenticated attacker to authenticate to any known or guessable user account (e.g., crushadmin), potentially leading to a full compromise. ",
74
+ "requiredAction": "Apply mitigations per vendor instructions, follow applicable BOD 22-01 guidance for cloud services, or discontinue use of the product if mitigations are unavailable.",
75
+ "dueDate": "2025-04-28",
76
+ "knownRansomwareCampaignUse": "Known",
77
+ "notes": "https:\/\/www.crushftp.com\/crush11wiki\/Wiki.jsp?page=Update ; https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2025-31161",
78
+ "cwes": [
79
+ "CWE-305"
80
+ ]
81
+ },
82
+ {
83
+ "cveID": "CVE-2025-22457",
84
+ "vendorProject": "Ivanti",
85
+ "product": "Connect Secure, Policy Secure and ZTA Gateways",
86
+ "vulnerabilityName": "Ivanti Connect Secure, Policy Secure and ZTA Gateways Stack-Based Buffer Overflow Vulnerability",
87
+ "dateAdded": "2025-04-04",
88
+ "shortDescription": "Ivanti Connect Secure, Policy Secure and ZTA Gateways contains a stack-based buffer overflow vulnerability that allows a remote unauthenticated attacker to achieve remote code execution. ",
89
+ "requiredAction": "Apply mitigations as set forth in the CISA instructions linked below.",
90
+ "dueDate": "2025-04-11",
91
+ "knownRansomwareCampaignUse": "Unknown",
92
+ "notes": "CISA Mitigation Instructions: https:\/\/www.cisa.gov\/cisa-mitigation-instructions-cve-2025-22457 ; Additional References: https:\/\/forums.ivanti.com\/s\/article\/April-Security-Advisory-Ivanti-Connect-Secure-Policy-Secure-ZTA-Gateways-CVE-2025-22457) ; https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2025-22457",
93
+ "cwes": [
94
+ "CWE-121"
95
+ ]
96
+ },
7
97
  {
8
98
  "cveID": "CVE-2025-24813",
9
99
  "vendorProject": "Apache",
@@ -448,7 +538,7 @@
448
538
  "shortDescription": "Microsoft Windows Win32k contains an improper resource shutdown or release vulnerability that allows for local, authenticated privilege escalation. An attacker who successfully exploited this vulnerability could run arbitrary code in kernel mode.",
449
539
  "requiredAction": "Apply mitigations per vendor instructions, follow applicable BOD 22-01 guidance for cloud services, or discontinue use of the product if mitigations are unavailable.",
450
540
  "dueDate": "2025-03-24",
451
- "knownRansomwareCampaignUse": "Unknown",
541
+ "knownRansomwareCampaignUse": "Known",
452
542
  "notes": "https:\/\/msrc.microsoft.com\/update-guide\/en-US\/advisory\/CVE-2018-8639 ; https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2018-8639",
453
543
  "cwes": [
454
544
  "CWE-404"
@@ -1731,7 +1821,7 @@
1731
1821
  "shortDescription": "Microsoft SharePoint contains a deserialization vulnerability that allows for remote code execution.",
1732
1822
  "requiredAction": "Apply mitigations per vendor instructions or discontinue use of the product if mitigations are unavailable.",
1733
1823
  "dueDate": "2024-11-12",
1734
- "knownRansomwareCampaignUse": "Unknown",
1824
+ "knownRansomwareCampaignUse": "Known",
1735
1825
  "notes": "https:\/\/msrc.microsoft.com\/update-guide\/vulnerability\/CVE-2024-38094 ; https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2024-38094",
1736
1826
  "cwes": [
1737
1827
  "CWE-502"
@@ -3104,7 +3194,7 @@
3104
3194
  "shortDescription": "Microsoft DWM Core Library contains a privilege escalation vulnerability that allows an attacker to gain SYSTEM privileges.",
3105
3195
  "requiredAction": "Apply mitigations per vendor instructions or discontinue use of the product if mitigations are unavailable.",
3106
3196
  "dueDate": "2024-06-04",
3107
- "knownRansomwareCampaignUse": "Unknown",
3197
+ "knownRansomwareCampaignUse": "Known",
3108
3198
  "notes": "https:\/\/msrc.microsoft.com\/update-guide\/vulnerability\/CVE-2024-30051; https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2024-30051",
3109
3199
  "cwes": [
3110
3200
  "CWE-122"
@@ -3222,7 +3312,7 @@
3222
3312
  "shortDescription": "Palo Alto Networks PAN-OS GlobalProtect feature contains a command injection vulnerability that allows an unauthenticated attacker to execute commands with root privileges on the firewall.",
3223
3313
  "requiredAction": "Apply mitigations per vendor instructions as they become available. Otherwise, users with vulnerable versions of affected devices should enable Threat Prevention IDs available from the vendor. See the vendor bulletin for more details and a patch release schedule.",
3224
3314
  "dueDate": "2024-04-19",
3225
- "knownRansomwareCampaignUse": "Unknown",
3315
+ "knownRansomwareCampaignUse": "Known",
3226
3316
  "notes": "https:\/\/security.paloaltonetworks.com\/CVE-2024-3400 ; https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2024-3400",
3227
3317
  "cwes": [
3228
3318
  "CWE-20",
@@ -4469,10 +4559,10 @@
4469
4559
  "vulnerabilityName": "HTTP\/2 Rapid Reset Attack Vulnerability",
4470
4560
  "dateAdded": "2023-10-10",
4471
4561
  "shortDescription": "HTTP\/2 contains a rapid reset vulnerability that allows for a distributed denial-of-service attack (DDoS).",
4472
- "requiredAction": "Apply mitigations per vendor instructions or discontinue use of the product if mitigations are unavailable.",
4562
+ "requiredAction": "Apply mitigations per vendor instructions, follow applicable BOD 22-01 guidance for cloud services, or discontinue use of the product if mitigations are unavailable.",
4473
4563
  "dueDate": "2023-10-31",
4474
4564
  "knownRansomwareCampaignUse": "Unknown",
4475
- "notes": "This vulnerability affects a common open-source component, third-party library, or a protocol used by different products. Please check with specific vendors for information on patching status. For more information, please see: https:\/\/blog.cloudflare.com\/technical-breakdown-http2-rapid-reset-ddos-attack\/ ; https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2023-44487",
4565
+ "notes": "This vulnerability affects a common open-source component, third-party library, or protocol used by different products. For more information, please see: CVE: Common Vulnerabilities and Exposures; https:\/\/blog.cloudflare.com\/technical-breakdown-http2-rapid-reset-ddos-attack\/; https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2023-44487",
4476
4566
  "cwes": [
4477
4567
  "CWE-400"
4478
4568
  ]
@@ -6709,7 +6799,7 @@
6709
6799
  "shortDescription": "Multiple versions of Fortinet FortiOS SSL-VPN contain a heap-based buffer overflow vulnerability which can allow an unauthenticated, remote attacker to execute arbitrary code or commands via specifically crafted requests.",
6710
6800
  "requiredAction": "Apply updates per vendor instructions.",
6711
6801
  "dueDate": "2023-01-03",
6712
- "knownRansomwareCampaignUse": "Unknown",
6802
+ "knownRansomwareCampaignUse": "Known",
6713
6803
  "notes": "https:\/\/www.fortiguard.com\/psirt\/FG-IR-22-398; https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2022-42475",
6714
6804
  "cwes": [
6715
6805
  "CWE-197"