Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New Feature: Download VulnDB Vulnerabilities Without NVD Matches #185

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

LaVibeX
Copy link
Contributor

@LaVibeX LaVibeX commented Dec 11, 2024

Feature:

  • Adds the --mirror-vulnerabilities --no-nvd-additional option to filter and download vulnerabilities from VulnDB that do not have corresponding NVD entries.
  • Addressing gaps in NVD reports.
  • Implements filtering using the nvd_additional_information property, verifying that the array size is 0.

Why this is important:
We are implementing this to specifically target gaps in NVD reports. Vulnerabilities from VulnDB that are not matched to a CVE provide additional and valuable information, helping us fill in areas where NVD reports may be incomplete or lacking.

Fix: Correct Logical Condition for Default Feed Mirroring

Resolves an issue where specifying only one mirroring option (--mirror-vendors, --mirror-products, or --mirror-vulnerabilities) incorrectly triggered the default behavior of mirroring all feeds.
Updates the condition to use || (OR), ensuring default mirroring occurs only when none of the options are specified.

…matches

To prevent duplicates in Dependency-Track, this update introduces the ability
to download vulnerabilities from VulnDB that lack NVD matches.
This helps fill the gap in NVD reports by ensuring only unique
vulnerabilities are processed.

New Option:
--mirror-vulnerabilities --no-nvd-additional

Details:
- Utilizes the VulnDB property `nvd_additional_information`.
- Checks if the `nvd_additional_information` array size is 0
to filter vulnerabilities without NVD matches.

Signed-off-by: Andres Tito <[email protected]>
The previous condition used `&&` (AND), causing the default mirroring
behavior to trigger even when only one feed option was specified.
This led to unexpected behavior where all feeds were mirrored despite a valid single feed selection.

Updated the condition to use `||` (OR), ensuring the default behavior
only occurs when *none* of the feed options
(`--mirror-vendors`, `--mirror-products`, `--mirror-vulnerabilities`) are specified.

This change prevents unnecessary mirroring and ensures the specified feed options are respected.

Signed-off-by: Andres Tito <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant