mirror of https://github.com/MISP/misp-modules
commit
7a8aacb986
|
@ -1,5 +1,5 @@
|
|||
import json
|
||||
from ._dnsdb_query.dnsdb_query import DnsdbClient
|
||||
from ._dnsdb_query.dnsdb_query import DnsdbClient, QueryError
|
||||
|
||||
|
||||
misperrors = {'error': 'Error'}
|
||||
|
@ -41,26 +41,35 @@ def handler(q=False):
|
|||
|
||||
|
||||
def lookup_name(client, name):
|
||||
res = client.query_rrset(name) # RRSET = entries in the left-hand side of the domain name related labels
|
||||
for item in res:
|
||||
if item.get('rrtype') in ['A', 'AAAA', 'CNAME']:
|
||||
for i in item.get('rdata'):
|
||||
yield(i.rstrip('.'))
|
||||
if item.get('rrtype') in ['SOA']:
|
||||
for i in item.get('rdata'):
|
||||
# grab email field and replace first dot by @ to convert to an email address
|
||||
yield(i.split(' ')[1].rstrip('.').replace('.', '@', 1))
|
||||
# res = client.query_rdata_name(name) # RDATA = entries on the right-hand side of the domain name related labels
|
||||
# for item in res:
|
||||
# if item.get('rrtype') in ['A', 'AAAA', 'CNAME']:
|
||||
# yield(item.get('rrname').rstrip('.'))
|
||||
try:
|
||||
res = client.query_rrset(name) # RRSET = entries in the left-hand side of the domain name related labels
|
||||
for item in res:
|
||||
if item.get('rrtype') in ['A', 'AAAA', 'CNAME']:
|
||||
for i in item.get('rdata'):
|
||||
yield(i.rstrip('.'))
|
||||
if item.get('rrtype') in ['SOA']:
|
||||
for i in item.get('rdata'):
|
||||
# grab email field and replace first dot by @ to convert to an email address
|
||||
yield(i.split(' ')[1].rstrip('.').replace('.', '@', 1))
|
||||
except QueryError as e:
|
||||
pass
|
||||
|
||||
try:
|
||||
res = client.query_rdata_name(name) # RDATA = entries on the right-hand side of the domain name related labels
|
||||
for item in res:
|
||||
if item.get('rrtype') in ['A', 'AAAA', 'CNAME']:
|
||||
yield(item.get('rrname').rstrip('.'))
|
||||
except QueryError as e:
|
||||
pass
|
||||
|
||||
|
||||
def lookup_ip(client, ip):
|
||||
res = client.query_rdata_ip(ip)
|
||||
for item in res:
|
||||
print(item)
|
||||
yield(item['rrname'].rstrip('.'))
|
||||
try:
|
||||
res = client.query_rdata_ip(ip)
|
||||
for item in res:
|
||||
yield(item['rrname'].rstrip('.'))
|
||||
except QueryError as e:
|
||||
pass
|
||||
|
||||
|
||||
def introspection():
|
||||
|
|
Loading…
Reference in New Issue