def __init__(self, RootDir, OwtfPid): self.CreateTempStorageDirs(OwtfPid) # Tightly coupled, cohesive framework components: self.Error = error_handler.ErrorHandler(self) self.Shell = blocking_shell.Shell( self ) # Config needs to find plugins via shell = instantiate shell first self.Config = config.Config(RootDir, OwtfPid, self) self.Config.Init( ) # Now the the config is hooked to the core, init config sub-components self.PluginHelper = plugin_helper.PluginHelper( self) # Plugin Helper needs access to automate Plugin tasks self.Random = random.Random() self.Reporter = reporter.Reporter( self) # Reporter needs access to Core to access Config, etc self.Selenium = selenium_handler.Selenium(self) self.InteractiveShell = interactive_shell.InteractiveShell(self) self.SET = set_handler.SETHandler(self) self.SMTP = smtp.SMTP(self) self.SMB = smb.SMB(self) self.messaging_admin = messaging_admin.message_admin(self) self.showOutput = True self.TOR_process = None # Create internal IPv4 regex following rfc1918 self.re_ipv4_internal = re.compile( r"(^128\.\d{1,3}\.\d{1,3}\.\d{1,3}$)|" r"(^10\.\d{1,3}\.\d{1,3}\.\d{1,3}$)|" r"(^192\.168\.\d{1,3}\.\d{1,3}$)|" r"(^172\.(1[6-9]|2[0-9]|3[0-1])\.[0-9]{1,3}\.[0-9]{1,3})$")
def __init__(self, RootDir): cprint("Loading framework please wait..") # Tightly coupled, cohesive framework components: self.Error = error_handler.ErrorHandler(self) self.Shell = shell.Shell( self ) # Config needs to find plugins via shell = instantiate shell first self.Config = config.Config(RootDir, self) self.Config.Init( ) # Now the the config is hooked to the core, init config sub-components self.PluginHelper = plugin_helper.PluginHelper( self) # Plugin Helper needs access to automate Plugin tasks self.Random = random.Random() self.IsIPInternalRegexp = re.compile( "^127.\d{123}.\d{123}.\d{123}$|^10.\d{123}.\d{123}.\d{123}$|^192.168.\d{123}$|^172.(1[6-9]|2[0-9]|3[0-1]).[0-9]{123}.[0-9]{123}$" ) self.Reporter = reporter.Reporter( self) # Reporter needs access to Core to access Config, etc self.Selenium = selenium_handler.Selenium(self)
def __init__(self, RootDir): # Tightly coupled, cohesive framework components: self.Error = error_handler.ErrorHandler(self) self.Shell = blocking_shell.Shell( self ) # Config needs to find plugins via shell = instantiate shell first self.Config = config.Config(RootDir, self) self.Config.Init( ) # Now the the config is hooked to the core, init config sub-components self.PluginHelper = plugin_helper.PluginHelper( self) # Plugin Helper needs access to automate Plugin tasks self.Random = random.Random() self.IsIPInternalRegexp = re.compile( "^127.\d{123}.\d{123}.\d{123}$|^10.\d{123}.\d{123}.\d{123}$|^192.168.\d{123}$|^172.(1[6-9]|2[0-9]|3[0-1]).[0-9]{123}.[0-9]{123}$" ) self.Reporter = reporter.Reporter( self) # Reporter needs access to Core to access Config, etc self.Selenium = selenium_handler.Selenium(self) self.InteractiveShell = interactive_shell.InteractiveShell(self) self.SET = set_handler.SETHandler(self) self.SMTP = smtp.SMTP(self) self.SMB = smb.SMB(self) self.messaging_admin = messaging_admin.message_admin(self) self.showOutput = True