From f600d0b88cc3f74695e18b658d827edcda71d1dd Mon Sep 17 00:00:00 2001 From: pemontto Date: Wed, 8 May 2019 17:51:05 +0100 Subject: [PATCH] Only set IP if it's an IP --- vulnwhisp/frameworks/nessus.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/vulnwhisp/frameworks/nessus.py b/vulnwhisp/frameworks/nessus.py index 494baee..66f547b 100755 --- a/vulnwhisp/frameworks/nessus.py +++ b/vulnwhisp/frameworks/nessus.py @@ -206,10 +206,6 @@ class NessusAPI(object): self.logger.debug('Dropping redundant tenable fields') df.drop('CVSS', axis=1, inplace=True, errors='ignore') - if self.profile == 'nessus': - # Set IP from Host field - df['ip'] = df['Host'] - # Lowercase and map fields from COLUMN_MAPPING df.columns = [x.lower() for x in df.columns] df.rename(columns=self.COLUMN_MAPPING, inplace=True) @@ -222,6 +218,14 @@ class NessusAPI(object): df.fillna('', inplace=True) + if self.profile == 'nessus': + # Set IP from asset field + df.loc[ + df["asset"].str.match("^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$"), "ip" + ] = df.loc[ + df["asset"].str.match("^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$"), "asset" + ] + # upper/lowercase fields self.logger.debug('Changing case of fields') df['cve'] = df['cve'].str.upper()