diff --git a/dojo/tools/harbor_vulnerability/parser.py b/dojo/tools/harbor_vulnerability/parser.py index d99fab69088..4034eaaa982 100644 --- a/dojo/tools/harbor_vulnerability/parser.py +++ b/dojo/tools/harbor_vulnerability/parser.py @@ -47,6 +47,9 @@ def get_findings(self, filename, test): fix_version = item.get("fix_version") links = item.get("links") cwe_ids = item.get("cwe_ids") + fix_available = True + if item.get("fix_version") == "": + fix_available = False title = f"{item_id} - {package_name} ({package_version})" severity = transpose_severity(severity) @@ -82,6 +85,7 @@ def get_findings(self, filename, test): component_name=package_name, component_version=package_version, cwe=cwe, + fix_available=fix_available, ) if vulnerability_id: find.unsaved_vulnerability_ids = [vulnerability_id] diff --git a/unittests/tools/test_harbor_vulnerability_parser.py b/unittests/tools/test_harbor_vulnerability_parser.py index c9dd8c43e50..c75b6255b2c 100644 --- a/unittests/tools/test_harbor_vulnerability_parser.py +++ b/unittests/tools/test_harbor_vulnerability_parser.py @@ -32,6 +32,7 @@ def test_parse_file_with_one_vuln_has_one_findings(self): self.assertEqual(finding.component_name, "package") self.assertEqual(finding.component_version, "exploitable-version") self.assertEqual(finding.references, "https://github.com/goharbor/harbor\n") + self.assertEqual(finding.fix_available, True) # Sample with Multiple Test def test_parse_file_with_multiple_vuln_has_multiple_findings(self):