Fix host domain display output when specifying domain in smb
parent
303a051003
commit
02bdbef712
|
@ -214,8 +214,23 @@ class smb(connection):
|
||||||
# no ntlm supported
|
# no ntlm supported
|
||||||
self.no_ntlm = True
|
self.no_ntlm = True
|
||||||
|
|
||||||
self.domain = self.conn.getServerDNSDomainName() if not self.no_ntlm else self.args.domain
|
# self.domain is the attribute we authenticate with
|
||||||
self.hostname = self.conn.getServerName() if not self.no_ntlm else self.host
|
# self.targetDomain is the attribute which gets displayed as host domain
|
||||||
|
if not self.no_ntlm:
|
||||||
|
self.hostname = self.conn.getServerName()
|
||||||
|
self.targetDomain = self.conn.getServerDNSDomainName()
|
||||||
|
if not self.targetDomain: # Not sure if that can even happen but now we are safe
|
||||||
|
self.targetDomain = self.hostname
|
||||||
|
else:
|
||||||
|
self.hostname = self.host
|
||||||
|
self.targetDomain = self.hostname
|
||||||
|
|
||||||
|
self.domain = self.targetDomain if not self.args.domain else self.args.domain
|
||||||
|
|
||||||
|
if self.args.local_auth:
|
||||||
|
self.domain = self.hostname
|
||||||
|
self.targetDomain = self.hostname
|
||||||
|
|
||||||
self.server_os = self.conn.getServerOS()
|
self.server_os = self.conn.getServerOS()
|
||||||
self.logger.extra["hostname"] = self.hostname
|
self.logger.extra["hostname"] = self.hostname
|
||||||
|
|
||||||
|
@ -230,9 +245,6 @@ class smb(connection):
|
||||||
self.os_arch = self.get_os_arch()
|
self.os_arch = self.get_os_arch()
|
||||||
self.output_filename = os.path.expanduser(f"~/.nxc/logs/{self.hostname}_{self.host}_{datetime.now().strftime('%Y-%m-%d_%H%M%S')}".replace(":", "-"))
|
self.output_filename = os.path.expanduser(f"~/.nxc/logs/{self.hostname}_{self.host}_{datetime.now().strftime('%Y-%m-%d_%H%M%S')}".replace(":", "-"))
|
||||||
|
|
||||||
if not self.domain:
|
|
||||||
self.domain = self.hostname
|
|
||||||
|
|
||||||
self.db.add_host(
|
self.db.add_host(
|
||||||
self.host,
|
self.host,
|
||||||
self.hostname,
|
self.hostname,
|
||||||
|
@ -248,11 +260,6 @@ class smb(connection):
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
self.logger.debug(f"Error logging off system: {e}")
|
self.logger.debug(f"Error logging off system: {e}")
|
||||||
|
|
||||||
if self.args.domain:
|
|
||||||
self.domain = self.args.domain
|
|
||||||
if self.args.local_auth:
|
|
||||||
self.domain = self.hostname
|
|
||||||
|
|
||||||
def laps_search(self, username, password, ntlm_hash, domain):
|
def laps_search(self, username, password, ntlm_hash, domain):
|
||||||
self.logger.extra["protocol"] = "LDAP"
|
self.logger.extra["protocol"] = "LDAP"
|
||||||
self.logger.extra["port"] = "389"
|
self.logger.extra["port"] = "389"
|
||||||
|
@ -348,7 +355,7 @@ class smb(connection):
|
||||||
def print_host_info(self):
|
def print_host_info(self):
|
||||||
signing = colored(f"signing:{self.signing}", host_info_colors[0], attrs=["bold"]) if self.signing else colored(f"signing:{self.signing}", host_info_colors[1], attrs=["bold"])
|
signing = colored(f"signing:{self.signing}", host_info_colors[0], attrs=["bold"]) if self.signing else colored(f"signing:{self.signing}", host_info_colors[1], attrs=["bold"])
|
||||||
smbv1 = colored(f"SMBv1:{self.smbv1}", host_info_colors[2], attrs=["bold"]) if self.smbv1 else colored(f"SMBv1:{self.smbv1}", host_info_colors[3], attrs=["bold"])
|
smbv1 = colored(f"SMBv1:{self.smbv1}", host_info_colors[2], attrs=["bold"]) if self.smbv1 else colored(f"SMBv1:{self.smbv1}", host_info_colors[3], attrs=["bold"])
|
||||||
self.logger.display(f"{self.server_os}{f' x{self.os_arch}' if self.os_arch else ''} (name:{self.hostname}) (domain:{self.domain}) ({signing}) ({smbv1})")
|
self.logger.display(f"{self.server_os}{f' x{self.os_arch}' if self.os_arch else ''} (name:{self.hostname}) (domain:{self.targetDomain}) ({signing}) ({smbv1})")
|
||||||
if self.args.laps:
|
if self.args.laps:
|
||||||
return self.laps_search(self.args.username, self.args.password, self.args.hash, self.domain)
|
return self.laps_search(self.args.username, self.args.password, self.args.hash, self.domain)
|
||||||
return True
|
return True
|
||||||
|
|
Loading…
Reference in New Issue