Skip to content

Commit 65cb0ff

Browse files
Maffoochclaude
andauthored
docs: add Similar Findings pages for Open Source and Pro (#15190)
Document the Similar Findings feature on the View Finding page, with separate Open Source and Pro pages (audience-scoped) reflecting the distinct UIs: the collapsible filter panel in OS and the Duplicate & Similar Findings card with tabs in Pro. Cover the matching fields, how it differs from automatic deduplication, the manual mark-as-duplicate / set-as-original actions, and the enable/disable system setting. Adds screenshots and a cross-link from the deduplication overview. Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent 4954365 commit 65cb0ff

10 files changed

Lines changed: 132 additions & 0 deletions
137 KB
Loading
144 KB
Loading
278 KB
Loading
91.5 KB
Loading
123 KB
Loading
220 KB
Loading
5.35 KB
Loading
Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
---
2+
title: "Similar Findings"
3+
description: "Find related Findings on the View Finding page and manually link them as duplicates"
4+
audience: opensource
5+
weight: 3
6+
---
7+
8+
While [Deduplication](../about_deduplication) runs automatically at import time, **Similar Findings** is a manual, interactive tool that lives on the **View Finding** page. It surfaces other Findings in the same Asset that resemble the one you are looking at, and lets you link them into a duplicate cluster by hand.
9+
10+
Use it when automatic deduplication did not group Findings you believe belong together, or when you want to explore what else in an Asset looks like the current vulnerability.
11+
12+
## Where to find it
13+
14+
Open any Finding to reach its View Finding page. Scroll down to the **Similar Findings** panel. The number in the heading is the count of Findings in the Asset that match the current Finding's values.
15+
16+
![The Similar Findings panel heading on the View Finding page](images/similar_findings_panel.png)
17+
18+
The panel is collapsed by default. Click the panel heading (or the chevron / filter button on the right) to expand it and run the query.
19+
20+
## How Findings are matched
21+
22+
When you open the panel, DefectDojo pre-fills a filter with the current Finding's values and searches the **same Asset** for other Findings that match. The fields used to seed the match are:
23+
24+
- Vulnerability IDs (for example, CVE identifiers)
25+
- CWE
26+
- File path
27+
- Line number
28+
- Unique ID from tool
29+
- Test type
30+
- Asset (and Asset type)
31+
32+
The current Finding is always excluded from its own results. Matching is scoped to the Asset, so Similar Findings never reaches across Assets. If either Engagement has Engagement-level deduplication enabled, matches that cross an Engagement boundary cannot be linked (see [Actions](#actions) below).
33+
34+
This is different from the automatic deduplication algorithm, which compares `hash_code` (or Unique ID from tool) to decide matches. Similar Findings deliberately casts a wider net so you can discover related Findings that strict hash matching would miss.
35+
36+
## Refining the match
37+
38+
The seeded values are only a starting point. The filter panel at the top of the section lets you make matching stricter or looser: remove a field to broaden the results, or add criteria (severity, status, endpoint, dates, EPSS, and more) to narrow them.
39+
40+
![The Similar Findings filter panel](images/similar_findings_filters.png)
41+
42+
- **Clear filters** empties every field so you can build a query from scratch.
43+
- **Restart** returns to the default match based on the current Finding's values.
44+
45+
## Reading the results
46+
47+
Each matching Finding is listed in a table. The **Relationship** column tells you how that Finding relates to the one you are viewing:
48+
49+
- **Original** – the root/original Finding of the current Finding's duplicate cluster
50+
- **Duplicate** – a Finding already marked as a duplicate of the current one
51+
- **Similar** – a match that is not yet part of the current Finding's cluster
52+
53+
![The Similar Findings results table](images/similar_findings_list.png)
54+
55+
The table also shows Severity, Title, Date, Status, Test, Engagement, CWE, Vulnerability Id, EPSS score, File (with line number), and JIRA (when the JIRA integration is enabled). Every column is sortable, and the results can be exported (Copy, Excel, CSV, PDF).
56+
57+
## Actions
58+
59+
If you have edit permission on a Finding, the **Action** column offers a dropdown to manage the duplicate cluster directly from this page:
60+
61+
![The Similar Findings row action menu](images/similar_findings_actions.png)
62+
63+
- **Mark as duplicate** – link the similar Finding into the current Finding's duplicate cluster.
64+
- **Set as original** – promote a Finding to be the original (cluster root).
65+
- **Reset finding duplicate status** – remove a Finding from its cluster.
66+
67+
An action may be unavailable (shown as **None**) when it is not valid, for example when the similar Finding lives in a different Engagement and Engagement-level deduplication is enabled, or when it is already the original of a different cluster. These actions manipulate the same duplicate relationships that automatic deduplication uses, so a Finding you mark here behaves exactly like an automatically detected duplicate.
68+
69+
## Enabling and disabling Similar Findings
70+
71+
Similar Findings is controlled by a global system setting. Go to **Configuration > System Settings** and toggle **Enable Similar Findings**. It is enabled by default.
72+
73+
![The Enable Similar Findings system setting](images/similar_findings_enable_setting.png)
74+
75+
Because the query looks across an entire Asset, it can be expensive on large Assets. If you notice slow View Finding pages, you can disable the feature here, or limit the number of results returned with the `DD_SIMILAR_FINDINGS_MAX_RESULTS` environment variable (default `25`).
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
---
2+
title: "Similar Findings"
3+
description: "Find related Findings on the View Finding page and manually link them as duplicates"
4+
audience: pro
5+
weight: 3
6+
---
7+
8+
While [Deduplication](../about_deduplication) runs automatically at import time, **Similar Findings** is a manual, interactive tool on the **View Finding** page. It surfaces other Findings in the same Asset that resemble the one you are looking at, and lets you link them into a duplicate cluster by hand.
9+
10+
Use it when automatic deduplication did not group Findings you believe belong together, or when you want to explore what else in an Asset looks like the current vulnerability.
11+
12+
## Where to find it
13+
14+
Open any Finding and scroll to the **Duplicate & Similar Findings** card. It has two tabs:
15+
16+
- **Duplicate Findings** – the Findings already linked to this one as duplicates (the automatic cluster).
17+
- **Similar Findings** – other Findings in the Asset that match the current Finding's values but are not yet part of its cluster.
18+
19+
Select the **Similar Findings** tab to run the query.
20+
21+
![The Duplicate & Similar Findings card on the View Finding page](images/pro_similar_findings.png)
22+
23+
## How Findings are matched
24+
25+
DefectDojo searches the **same Asset** for Findings that resemble the current one, based on values such as Vulnerability IDs (for example, CVE identifiers), CWE, file path, line number, and unique ID from tool. The current Finding is always excluded from its own results, and matching never reaches across Assets.
26+
27+
This is different from the automatic deduplication algorithm, which compares `hash_code` (or Unique ID from tool) to decide matches. Similar Findings deliberately casts a wider net so you can discover related Findings that strict hash matching would miss.
28+
29+
## Working with the results
30+
31+
The Similar Findings tab is a full data table with the same controls you use elsewhere in the Pro UI:
32+
33+
- **Keyword Search** and the per-column filter (funnel) and sort controls let you narrow the list.
34+
- The **saved views** dropdown (**Default**) and the save icon let you store a filter/column layout for reuse.
35+
- The column settings and layout buttons control which columns are shown.
36+
- **Export** downloads the current results, and **Clear Filters** resets the table.
37+
38+
Each row shows the matching Finding's ID, Severity, Priority, Risk, Finding name, CWE, CVSS scores, Vulnerability IDs, EPSS data, exploit intelligence (Known Exploited / Ransomware), status, Asset, and more. Click a Finding name to open it.
39+
40+
## Actions
41+
42+
Open the action menu (the **** button at the start of a row) to manage the duplicate cluster directly from this page:
43+
44+
![The Similar Findings row action menu](images/pro_similar_findings_actions.png)
45+
46+
- **Set As Original Finding** – promote a Finding to be the original (cluster root).
47+
- **Mark As Duplicate** – link the similar Finding into the current Finding's duplicate cluster.
48+
49+
These actions manipulate the same duplicate relationships that automatic deduplication uses, so a Finding you link here behaves exactly like an automatically detected duplicate. Any Finding you mark as a duplicate then appears under the **Duplicate Findings** tab of this card.
50+
51+
An action may be unavailable when it is not valid, for example when the similar Finding is already the original of a different cluster, or when linking it would cross an Engagement boundary while Engagement-level deduplication is enabled.
52+
53+
## Enabling and disabling Similar Findings
54+
55+
Similar Findings is controlled by the global **Enable Similar Findings** system setting, which is enabled by default. Because the query looks across an entire Asset, it can be expensive on large Assets; if you notice slow View Finding pages, this setting can be turned off.

docs/content/triage_findings/finding_deduplication/about_deduplication.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,3 +159,5 @@ Sometimes, Deduplication does not work as expected. Here are some examples of w
159159
| Duplicates are created across different tools | Cross-tool matching is disabled or too strict | <strong>Cross Tool Deduplication (Pro only)</strong> (hash-based matching) |
160160
| The same SCA dependency imported into multiple Products creates separate Findings instead of duplicates | Deduplication is scoped per Product by default | <strong>Global Component Deduplication (Pro only)</strong> ([enable for your SCA tools](/triage_findings/finding_deduplication/pro__global_component_deduplication/)) |
161161
| Excess duplicates of the same Finding are being created, across Tests | Asset Hierarchy is not set up correctly | [Consider Reimport for continual testing](/triage_findings/finding_deduplication/avoid_excess_duplicates/) |
162+
163+
When automatic deduplication misses Findings that you believe belong together, you can link them by hand from the View Finding page. See Similar Findings for how to discover related Findings and mark them as duplicates manually ([Open Source](/triage_findings/finding_deduplication/os__similar_findings/) | [Pro](/triage_findings/finding_deduplication/pro__similar_findings/)).

0 commit comments

Comments
 (0)