Skip to content
9 changes: 7 additions & 2 deletions dojo/tools/mend/parser.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
import hashlib
import json
import logging
from contextlib import suppress
from datetime import datetime

from dojo.models import Finding

Expand Down Expand Up @@ -36,10 +38,10 @@ def _build_common_output(node, lib_name=None):
component_name = None
component_version = None
impact = None
kev_date = None
ransomware_used = None
known_exploited = None
component_path = None
kev_date = None
description = "No Description Available"
cvss3_score = None
mitigation = "N/A"
Expand Down Expand Up @@ -68,7 +70,10 @@ def _build_common_output(node, lib_name=None):
+ "\n"
)
cvss3_score = node["vulnerability"].get("score", None)
kev_date = node["vulnerability"].get("publishDate", None)
kev_date_str = node["vulnerability"].get("publishDate", None)
if kev_date_str:
with suppress(ValueError):
kev_date = datetime.strptime(kev_date_str, "%Y-%m-%dT%H:%M:%SZ").date()
ransomware_used = node.get("malicious", None)
known_exploited = node.get("exploitable", None)
component_path = node["component"].get("path", None)
Expand Down