diff --git a/grinder/core.py b/grinder/core.py index 1265cb8..8e71b54 100644 --- a/grinder/core.py +++ b/grinder/core.py @@ -1191,7 +1191,7 @@ def vulners_scan( # Check for top-ports if defined arguments = ( - f"-Pn -sV --script=.{vulners_path} --host-timeout {str(host_timeout)}s" + f"-Pn -sV --open --script=.{vulners_path} --host-timeout {str(host_timeout)}s" ) if top_ports: arguments = f"{arguments} --top-ports {str(top_ports)}" diff --git a/grinder/decorators.py b/grinder/decorators.py index a633f9f..4f861ed 100644 --- a/grinder/decorators.py +++ b/grinder/decorators.py @@ -2,7 +2,7 @@ import sys from functools import wraps -from os import path, makedirs, system +from os import system from time import time, strftime, gmtime diff --git a/grinder/defaultvalues.py b/grinder/defaultvalues.py index 20afea0..4ce5b94 100644 --- a/grinder/defaultvalues.py +++ b/grinder/defaultvalues.py @@ -114,7 +114,7 @@ class DefaultNmapScanValues: TOP_PORTS = None SUDO = False HOST_TIMEOUT = 30 - ARGUMENTS = "-Pn -T4 -A" + ARGUMENTS = "-Pn -T4 -A --open" WORKERS = 10 @@ -124,7 +124,7 @@ class DefaultProcessManagerValues: """ PORTS = None SUDO = False - ARGUMENTS = "-Pn -A" + ARGUMENTS = "-Pn -A --open" WORKERS = 10 diff --git a/grinder/nmapprocessmanager.py b/grinder/nmapprocessmanager.py index 76eacba..5193a0d 100644 --- a/grinder/nmapprocessmanager.py +++ b/grinder/nmapprocessmanager.py @@ -21,7 +21,6 @@ class NmapProcessingDefaultManagerValues: POLLING_RATE = 0.5 EMPTY_QUEUE_POLLING_RATE = 1.0 - PROCESS_TIMEOUT = 300 class NmapProcessing(Process): @@ -166,7 +165,8 @@ def organize_processes(self) -> None: queue.put((None, None)) queue.join() for process in processes: - process.join(timeout=NmapProcessingDefaultManagerValues.PROCESS_TIMEOUT) + if process.is_alive(): + process.terminate() def start(self) -> None: """ diff --git a/grinder/pyscriptexecutor.py b/grinder/pyscriptexecutor.py index 4a293f2..86102cf 100644 --- a/grinder/pyscriptexecutor.py +++ b/grinder/pyscriptexecutor.py @@ -24,7 +24,6 @@ class PyProcessingValues: POLLING_RATE = 0.5 EMPTY_QUEUE_POLLING_RATE = 1.0 - PROCESS_TIMEOUT = 300 class PyProcessing(Process): @@ -238,7 +237,8 @@ def organize_processes(self) -> None: queue.put((None, None, None)) queue.join() for process in processes: - process.join(timeout=PyProcessingValues.PROCESS_TIMEOUT) + if process.is_alive(): + process.terminate() def start(self) -> None: """