DependencyTrack / DependencyTrack/dependency-track

Offer alias-based de-duplication of vulnerabilities

Open
#1,994 6 comments 13 reactions 0 assignees View on GitHub
enhancement vuln-aliases
Dominant language
Java
Stars
4.2k
Forks
811
Avg merge
8h 39m
Merged PRs (30d)
237

Description

### Current Behavior:

#1642 introduced tracking of vulnerability aliases. We now know which vulnerabilities describe the same issue, but we don't yet use this data to reduce the overall noise of findings. Clients may perform de-duplication based on their specific needs (e.g., always preferring GHSA over CVE), but we should offer a canonical solution from the server-side.

### Proposed Behavior:

There should be a mechanism to de-duplicate vulnerabilities. In order to stay backwards-compatible, new API endpoints or opt-in parameters should be introduced.

Note that the intention is **not** to de-duplicate during vulnerability data ingestion! We still want to keep the data from all sources.

There are multiple constraints that need to be considered. Steve mentioned a few of them in https://github.com/DependencyTrack/dependency-track/pull/1912#issuecomment-1228505074:

> * The most desired approach would be to favor CVE's over any of the alternative identifiers. This assumption should not be hard-coded.
> * There will be occasions where a CVE does not exist, yet there are aliases between say GHSA and OSSINDEX. Need to figure out how to handle this case.
> * There will be occasions where a CVE does not exist initially, but a OSSINDEX finding does. That OSSINDEX finding could be audited. At a later time, a CVE may be created and now there's a mapping. This happened with log4j and is likely the norm for high-profile vulnerabilities. I don't think we want to de-dup any finding that has an existing audit.

(There will be more constraints than this)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.