diff --git a/dojo/tools/ms_defender/parser.py b/dojo/tools/ms_defender/parser.py index e6de4956304..28250e461c7 100644 --- a/dojo/tools/ms_defender/parser.py +++ b/dojo/tools/ms_defender/parser.py @@ -34,9 +34,8 @@ def get_findings(self, file, test): input_zip = zipfile.ZipFile(file.name, "r") else: input_zip = zipfile.ZipFile(file, "r") + zipdata = {name: input_zip.read(name) for name in input_zip.namelist()} - if zipdata.get("vulnerabilities/") is None: - return [] vulnerabilityfiles = [] machinefiles = [] for content in list(zipdata): @@ -44,6 +43,11 @@ def get_findings(self, file, test): vulnerabilityfiles.append(content) if "machines/" in content and content != "machines/": machinefiles.append(content) + + if len(vulnerabilityfiles) == 0: + logger.debug("No vulnerabilities.json files found in the vulnerabilities/ folder") + return [] + vulnerabilities = [] machines = {} for vulnerabilityfile in vulnerabilityfiles: