Vulnerability Management
Manual for the vulnerability management using Ketryx Software Supply Chain Management
1. Introduction
Vulnerability management is the process of identifying, evaluating, treating, and reporting on security vulnerabilities in systems and the software that runs on them. The process is a continuous cycle of discovery, prioritization, and remediation. Vulnerability management is integral to computer security and network security.
When developing medical devices following IEC 62304, vulnerability management becomes even more crucial. Medical devices often rely on Software of Unknown Provenance (SOUP) and Off-the-shelf (OTS) software components and dependencies, making them vulnerable to security risks. Proper vulnerability management ensures that potential vulnerabilities are identified and addressed, reducing the risk of security breaches and ensuring the safety and effectiveness of the medical devices.
Ketryx Software Supply Chain Management offers a vulnerability management module designed to assist users in monitoring vulnerabilities within their software supply chain. This module presents a centralized view of all vulnerabilities in the software supply chain, aiding users in prioritizing and remedying them.
1.1. Purpose
The purpose of this document instruct users on how to use the Vulnerability management module in Ketryx Software Supply Chain Management to manage vulnerabilities in the software supply chain.
1.2. Scope
This document describes the features and functionality of the Vulnerability management module in Ketryx Software Supply Chain Management.
2. Terms and definitions
The definitions of this document conform to the ones of ISO/IEC 27001, ANSI/AAMI SW96:2023, and AAMI TIR57:2016/(R)2019.
GHSA
GitHub Security Advisory
OTS
Off-the-shelf
SBOM
Software Bill of Materials
SOUP
Software of Unknown Provenance
SPDX
Software Package Data Exchange
3. Project setup
Once you have a project set up, you can start using the Vulnerability management module. The module is available in the SBOM > Vulnerabilities section of the project.
4. Manage vulnerabilities
The Manage vulnerabilities (available in the SBOM > Vulnerabilities section of the project) screen displays a list of all identified vulnerabilities in the software supply chain of the project. It is also possible to create, edit, and manage vulnerability impact assessments on this screen, as well as to create, edit, and manage manual vulnerabilities.
The vulnerabilities list displays the following information for each identified vulnerability:
Title: The title of the vulnerability. Below the title, the vulnerable SOUP or OTS component is displayed. Clicking on the SOUP/OTS component will take you to the detail screen, where you can view more information about the component.
Reported on: The date the vulnerability was reported.
Severity: The severity of the vulnerability and its score.
Risks: The number of risks associated with the vulnerability, if any.
Mitigations: The number of mitigations associated with the vulnerability, if any.
Resolution: The resolution status of the vulnerability impact assessment.
Status: The status of the vulnerability.
Expand: Clicking on the expand icon will display more information about the vulnerability, such as the description, the affected version, etc. and if available, the vulnerability impact assessment.
4.1. Withdrawn vulnerabilities
Occasionally, vulnerability advisories (e.g., GitHub Security Advisories - GHSA) may be withdrawn, often because they are duplicates of other advisories or found to be incorrect.
Depending on your organization's settings, Ketryx can either hide these withdrawn vulnerabilities entirely or display them with a distinct "Withdrawn" tag in the Title column.
Expanding a withdrawn vulnerability will show details about the withdrawal, including the reason and the date it was withdrawn.
5. Manual vulnerabilities
For many ecosystems, Ketryx can automatically detect vulnerabilities by leveraging the GHSA (GitHub Security Advisory). However, for the product itself or certain OTS (Off-The-Shelf) software, Ketryx allows users to create and manage their own vulnerabilities.
5.1. Creating a manual vulnerability
Clicking on the Add vulnerability button opens the manual vulnerability dialog.
Manual vulnerabilities can be created by populating the vulnerability details and then clicking the Add vulnerability button. The following fields are available:
Title
Introduced in Version
Obsolete in Version
Description
CVE ID
External URL
Reported On
Severity (Severity level and/or Severity CVSS Vector string)
5.1.1. Manual vulnerability severity
Manual vulnerability severity is set by a severity level dropdown with an option to assess severity using a CVSS vector string. Currently, CVSS vectors of version 3.0, 3.1, and 4.0 are supported.
5.2. Editing a manual vulnerability
To edit a manual vulnerability, select a vulnerability from the Vulnerabilities list and click on the Edit vulnerability impact assessment button.
This will open the Edit item page where you can edit the manual vulnerability fields alongside its impact assessment. Clicking the Save changes button saves the new version.
6. Vulnerability impact assessment
The Vulnerability impact assessment is a detailed analysis of the impact of a vulnerability on the product. It includes information about the affected components, the potential risks, and the mitigations that can be taken to reduce the impact of the vulnerability.
It is available for each identified vulnerability (including manual vulnerabilities). To view the Vulnerability impact assessment, click on the expand icon in the Vulnerabilities list.
6.1. Creating a vulnerability impact assessment
To create a vulnerability impact assessment, select one or more vulnerabilities from the Vulnerabilities list and click on the Create impact assessment button. This will open a dialog where you can fill in the details of the impact assessment.
In the dialog, details of the impact assessment, such as rationales, justifications, potential risks, and mitigations that can be taken to reduce the impact of the vulnerability, can be filled in. By default, the following fields are available:
Severity: This section can be used to modify the severity of the selected vulnerabilities.
CVSS vectors of version 3.0, 3.1, and 4.0 are supported.
During impact assessment creation, leaving the severity field empty will keep the severity of the vulnerability unchanged.
When creating an impact assessment for multiple vulnerabilities in batch, the modifying severity will be applied to all selected vulnerabilities.
Resolution: The resolution status of the vulnerability impact assessment. This field serves to quickly identify the status of the impact assessment, e.g. if a vulnerability is not relevant or exploitable.
Justification for resolution: A justification for the resolution status.
Rationale for connecting risks: A rationale for connecting the risks.
Mitigations: A list of mitigations connected to the vulnerability. By default, any item type but the Risk item type are available. The available item types can be changed in the advanced project settings.
Rationale for connecting mitigations: A rationale for connecting the mitigations.
6.2. Editing a vulnerability impact assessment
To edit a vulnerability impact assessment, select a vulnerability with an existing assessment in the Vulnerabilities list. Then, click on the Edit vulnerability impact assessment button. This will open the Edit item page where you can edit the details of the impact assessment.
7. Download the vulnerability report
Title: The title of the vulnerability.
Severity: The severity of the vulnerability.
Score: The score of the vulnerability.
Ecosystem: The ecosystem of the vulnerability.
Dependency: The dependency which is affected by the vulnerability.
Affected versions: The affected versions of the dependency.
Used dependency versions: The versions of the dependency used in the project.
Introduced in version (applicable only for manual vulnerabilities, empty otherwise): The first version of the product this vulnerability is effective in. If empty, the vulnerability is considered effective from the initial version of the product.
Obsolete in version (applicable only for manual vulnerabilities, empty otherwise): The version of the product the vulnerability is becoming obsolete in, i.e., the first version for which this vulnerability is not effective anymore.
Reported on: The date the vulnerability was reported.
CVE ID: The Common Vulnerabilities and Exposures (CVE) ID of the vulnerability.
Description: The description of the vulnerability.
URLs: The URLs related to the vulnerability.
Status: The status of the vulnerability.
Connected risks: URLs to the connected risks.
Connected mitigations: URLs to the connected mitigations.
Resolution: The resolution status of the vulnerability impact assessment.
Justification for resolution: A justification for the resolution status.
Rationale for connecting risks: A rationale for connecting the risks.
Rationale for connecting mitigations: A rationale for connecting the mitigations.
8. Vulnerability management of an individual SOUP/OTS component/dependency
To manage the vulnerabilities of an individual SOUP/OTS component/dependency, navigate to the SBOM page of the project and click the dependency you want to manage. On its details page, click on the Vulnerabilities tab. There, the same functionality as on the Vulnerabilities page is available, but only for the selected dependency, listing only the vulnerabilities of the selected dependency.
Similarly, on the page SBOM > Vulnerabilities, the dependency details page can be reached by clicking on the dependency name below the vulnerability title in the Vulnerabilities list.
9. Vulnerability notifications
Last updated
Was this helpful?