Skip to content
This repository has been archived by the owner on Nov 3, 2021. It is now read-only.

Commit

Permalink
Merge pull request #232 from ameihm0912/master
Browse files Browse the repository at this point in the history
sourcename in vuln event docid to add isolation between different writer...
  • Loading branch information
jeffbryner committed Feb 2, 2015
2 parents eb7a528 + 67d7d84 commit 745364e
Showing 1 changed file with 7 additions and 4 deletions.
11 changes: 7 additions & 4 deletions mq/plugins/vulnerability.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,8 @@ def __init__(self):
self.priority = 20

def validate(self,message):
for k in ['utctimestamp', 'description', 'vuln', 'asset']:
for k in ['utctimestamp', 'description', 'vuln', 'asset',
'sourcename']:
if k not in message.keys():
return False
for k in ['assetid', 'ipv4address', 'hostname', 'macaddress']:
Expand All @@ -29,7 +30,8 @@ def validate(self,message):
return True

def calculate_id(self, message):
s = '{0}|{1}'.format(message['asset']['assetid'], message['vuln']['vulnid'])
s = '{0}|{1}|{2}'.format(message['asset']['assetid'],
message['vuln']['vulnid'], message['sourcename'])
return hashlib.md5(s).hexdigest()

def onMessage(self, message, metadata):
Expand All @@ -50,6 +52,7 @@ def setUp(self):
self.msg = {}
self.msg['description'] = 'system vulnerability management automation'
self.msg['utctimestamp'] = '2015-01-21T15:33:51.136378+00:00'
self.msg['sourcename'] = 'development'
self.msg['asset'] = {}
self.msg['asset']['assetid'] = 23
self.msg['asset']['ipv4address'] = '1.2.3.4'
Expand All @@ -72,10 +75,10 @@ def test_onMessage(self):
(retmessage, retmeta) = self.msgobj.onMessage(self.msg, metadata)
self.assertIsNotNone(retmessage)
self.assertIsNotNone(retmeta)
self.assertEquals(retmeta['id'], 'ed40885b25e1c5b03c95f689924b5d8e')
self.assertEquals(retmeta['id'], '793fd2bebd558dd8e358d8e80dd8cdc2')

def test_calculate_id(self):
self.assertEquals(self.msgobj.calculate_id(self.msg), 'ed40885b25e1c5b03c95f689924b5d8e')
self.assertEquals(self.msgobj.calculate_id(self.msg), '793fd2bebd558dd8e358d8e80dd8cdc2')

def test_validate_correct(self):
self.assertTrue(self.msgobj.validate(self.msg))
Expand Down

0 comments on commit 745364e

Please sign in to comment.