Merge pull request #1813 from guardicore/1801-fix-failure-quitting-tunnel

1801 fix failure quitting tunnel
This commit is contained in:
Mike Salvatore 2022-03-24 14:57:24 -04:00 committed by GitHub
commit 8d4edca419
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 6 additions and 13 deletions

View File

@ -85,7 +85,7 @@ class Configuration(object):
current_server = "" current_server = ""
# Configuration servers to try to connect to, in this order. # Configuration servers to try to connect to, in this order.
command_servers = ["192.0.2.0:5000"] command_servers = []
keep_tunnel_open_time = 60 keep_tunnel_open_time = 60

View File

@ -87,13 +87,13 @@ class SMBExploiter(HostExploiter):
return self.exploit_result return self.exploit_result
# execute the remote dropper in case the path isn't final # execute the remote dropper in case the path isn't final
if remote_full_path.lower() != dest_path.lower(): if remote_full_path.lower() != str(dest_path).lower():
cmdline = DROPPER_CMDLINE_DETACHED_WINDOWS % { cmdline = DROPPER_CMDLINE_DETACHED_WINDOWS % {
"dropper_path": remote_full_path "dropper_path": remote_full_path
} + build_monkey_commandline( } + build_monkey_commandline(
self.host, self.host,
self.current_depth - 1, self.current_depth - 1,
dest_path, str(dest_path),
) )
else: else:
cmdline = MONKEY_CMDLINE_DETACHED_WINDOWS % { cmdline = MONKEY_CMDLINE_DETACHED_WINDOWS % {

View File

@ -120,13 +120,8 @@ class InfectionMonkey:
@staticmethod @staticmethod
def _add_default_server_to_config(default_server: str): def _add_default_server_to_config(default_server: str):
if default_server: if default_server:
if default_server not in WormConfiguration.command_servers: logger.debug("Added default server: %s" % default_server)
logger.debug("Added default server: %s" % default_server) WormConfiguration.command_servers.insert(0, default_server)
WormConfiguration.command_servers.insert(0, default_server)
else:
logger.debug(
"Default server: %s is already in command servers list" % default_server
)
def _connect_to_island(self): def _connect_to_island(self):
# Sets island's IP and port for monkey to communicate to # Sets island's IP and port for monkey to communicate to
@ -302,9 +297,7 @@ class InfectionMonkey:
@staticmethod @staticmethod
def _close_tunnel(): def _close_tunnel():
tunnel_address = ( tunnel_address = ControlClient.proxies.get("https", "").replace("http://", "").split(":")[0]
ControlClient.proxies.get("https", "").replace("https://", "").split(":")[0]
)
if tunnel_address: if tunnel_address:
logger.info("Quitting tunnel %s", tunnel_address) logger.info("Quitting tunnel %s", tunnel_address)
tunnel.quit_tunnel(tunnel_address) tunnel.quit_tunnel(tunnel_address)