Skip to content

Commit d8e5e94

Browse files
committed
Add dns options to dc-list
1 parent fbd4e1a commit d8e5e94

1 file changed

Lines changed: 7 additions & 3 deletions

File tree

nxc/protocols/ldap.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
from re import sub, I
99
from zipfile import ZipFile
1010
from termcolor import colored
11+
from dns import resolver
1112

1213
from Cryptodome.Hash import MD4
1314
from OpenSSL.SSL import SysCallError
@@ -32,7 +33,6 @@
3233

3334
from nxc.config import process_secret, host_info_colors
3435
from nxc.connection import connection
35-
from nxc.connection import resolver
3636
from nxc.helpers.bloodhound import add_user_bh
3737
from nxc.logger import NXCAdapter, nxc_logger
3838
from nxc.protocols.ldap.bloodhound import BloodHound
@@ -702,7 +702,11 @@ def groups(self):
702702
def dc_list(self):
703703
# Building the search filter
704704
resolv = resolver.Resolver()
705-
resolv.nameservers = [self.host]
705+
if self.args.dns_server:
706+
resolv.nameservers = [self.args.dns_server]
707+
else:
708+
resolv.nameservers = [self.host]
709+
resolv.timeout = self.args.dns_timeout
706710

707711
search_filter = "(&(objectCategory=computer)(primaryGroupId=516))"
708712
attributes = ["dNSHostName"]
@@ -721,7 +725,7 @@ def dc_list(self):
721725
break # If a record has been found, stop checking further
722726

723727
try:
724-
answers = resolv.resolve(name, record_type)
728+
answers = resolv.resolve(name, record_type, tcp=self.args.dns_tcp)
725729
for rdata in answers:
726730
if record_type in ["A", "AAAA"]:
727731
ip_address = rdata.to_text()

0 commit comments

Comments
 (0)