@@ -18,8 +18,7 @@ class NXCModule:
1818 name = "raw-ntds-copy"
1919 description = "Extracting the ntds.dit, SAM, and SYSTEM files from DC by accessing the raw hard drive."
2020 supported_protocols = ["smb" ]
21- opsec_safe = True # could be flagged
22- multiple_hosts = False
21+
2322 files_full_location_to_extract = [
2423 "Windows/System32/config/SYSTEM" ,
2524 "Windows/System32/config/SAM" ,
@@ -73,7 +72,7 @@ class MFA_sector_properties:
7372 full_path : str = ""
7473
7574 def options (self , context , module_options ):
76- pass
75+ """No options available"""
7776
7877 def read_from_disk (self , offset , size ):
7978 """Get the raw content of the disk based on the specified offset and size by executing PowerShell code on the remote target"""
@@ -275,6 +274,7 @@ def read_MFT(self, MFT_file_header: MFA_sector_properties):
275274 path = abspath (join (export_path , filename_on_disk ))
276275 makedirs (export_path , exist_ok = True )
277276 self .MFT_local_path = path
277+
278278 self .logger .display (f"Analyzing & Extracting { MFT_file_header .filename } { MFT_file_header .size / (1024 ** 2 )} MB" )
279279 for i in MFT_file_header .dataRun :
280280 cluster_loc = i [0 ] * self .CLUSTER_SIZE
@@ -363,6 +363,7 @@ def extractDataRunBytes(self, lst, filename, offset=0):
363363 export_path = join (TMP_PATH , "raw_ntds_dump" )
364364 path = abspath (join (export_path , filename_on_disk ))
365365 makedirs (export_path , exist_ok = True )
366+
366367 self .logger .display (f"Extracting { filename } to { path } " )
367368 for i in lst :
368369 cluster_loc = i [0 ] * self .CLUSTER_SIZE
0 commit comments