mirror of https://github.com/MISP/misp-modules
config parameters are now exposed via the meta information
config uses a specific list of values exposed via the introspection of the module. config is now passed as an additional dictionary to the request. MISP attributes include only MISP attributes.pull/2/head
parent
ab7d93292e
commit
340d506b7c
|
@ -4,14 +4,21 @@ import requests
|
|||
misperrors = {'error' : 'Error'}
|
||||
mispattributes = {'input': ['hostname', 'domain', 'ip-src', 'ip-dst', 'module-username','module-password'], 'output': ['ip-src', 'ip-dst', 'hostname', 'domain']}
|
||||
moduleinfo = {'version': '0.1', 'author': 'Alexandre Dulaunoy', 'description': 'PassiveTotal expansion service to expand values with multiple Passive DNS sources'}
|
||||
moduleconfig = ['username', 'password']
|
||||
passivetotal_url = 'https://api.passivetotal.org/v2/dns/passive?query='
|
||||
|
||||
|
||||
def handler(q=False):
|
||||
if q is False:
|
||||
return False
|
||||
request = json.loads(q)
|
||||
if (request.get('module-username') is False) or (request.get('module-password') is False):
|
||||
misperrors['error'] = 'Passivetotal authentication is missing'
|
||||
|
||||
if (request.get('config')):
|
||||
if (request['config'].get('username') is None) or (request['config'].get('password') is None):
|
||||
misperrors['error'] = 'Passivetotal authentication is missing'
|
||||
return misperrors
|
||||
else:
|
||||
misperrors['error'] = 'config is missing'
|
||||
return misperrors
|
||||
if request.get('hostname'):
|
||||
toquery = request['hostname']
|
||||
|
@ -28,7 +35,7 @@ def handler(q=False):
|
|||
else:
|
||||
return False
|
||||
|
||||
r = requests.get(passivetotal_url+toquery, auth=(request.get('module-username'),request.get('module-password')))
|
||||
r = requests.get(passivetotal_url+toquery, auth=(request['config'].get('username'),request['config'].get('password')))
|
||||
if r.status_code == 200:
|
||||
x = json.loads(r.text)
|
||||
a = []
|
||||
|
@ -58,4 +65,5 @@ def introspection():
|
|||
|
||||
|
||||
def version():
|
||||
moduleinfo['config'] = moduleconfig
|
||||
return moduleinfo
|
||||
|
|
Loading…
Reference in New Issue