|
@@ -160,15 +160,20 @@ def update_db(c, jsondata):
|
|
|
if not elt['impact']:
|
|
|
continue
|
|
|
|
|
|
+ accessVector = None
|
|
|
cveId = elt['cve']['CVE_data_meta']['ID']
|
|
|
cveDesc = elt['cve']['description']['description_data'][0]['value']
|
|
|
date = elt['lastModifiedDate']
|
|
|
- accessVector = elt['impact']['baseMetricV2']['cvssV2']['accessVector']
|
|
|
- cvssv2 = elt['impact']['baseMetricV2']['cvssV2']['baseScore']
|
|
|
-
|
|
|
try:
|
|
|
+ accessVector = elt['impact']['baseMetricV2']['cvssV2']['accessVector']
|
|
|
+ cvssv2 = elt['impact']['baseMetricV2']['cvssV2']['baseScore']
|
|
|
+ except KeyError:
|
|
|
+ cvssv2 = 0.0
|
|
|
+ try:
|
|
|
+ accessVector = accessVector or elt['impact']['baseMetricV3']['cvssV3']['attackVector']
|
|
|
cvssv3 = elt['impact']['baseMetricV3']['cvssV3']['baseScore']
|
|
|
- except:
|
|
|
+ except KeyError:
|
|
|
+ accessVector = accessVector or "UNKNOWN"
|
|
|
cvssv3 = 0.0
|
|
|
|
|
|
c.execute("insert or replace into NVD values (?, ?, ?, ?, ?, ?)",
|