diff --git a/nbs/nmap.py b/nbs/nmap.py index 2850530..5360e2d 100644 --- a/nbs/nmap.py +++ b/nbs/nmap.py @@ -1,8 +1,5 @@ -import socket - import nmap3 - class Nmap(object): def __init__(self, unknown, networks): @@ -14,27 +11,14 @@ class Nmap(object): def scan(self): nmap = nmap3.NmapHostDiscovery() # instantiate nmap object for item in self.networks: - temp_scan_result = nmap.nmap_no_portscan(item.replace('\n', '')) + temp_scan_result = nmap.nmap_no_portscan(item.replace('\n', ''), args="-R --system-dns") self.scan_results = {**self.scan_results, **temp_scan_result} self.scan_results.pop("stats") self.scan_results.pop("runtime") return self.scan_results - def dns_resolution(self): - # Try to improve DNS resolution since NMAP is not consistent - for ip, v in self.scan_results.items(): - try: - name, arpa, ip = socket.gethostbyaddr(ip) - try: - v["hostname"][0]["name"] - except (TypeError, IndexError): - v.update({"hostname": {"name": name, "type": 'PTR'}}) - except socket.herror: - pass - def run(self): self.scan() - self.dns_resolution() for k,v in self.scan().items(): try: self.hosts.append((