Coverage for /private/tmp/im/impacket/impacket/examples/ntlmrelayx/attacks/__init__.py : 65%

Hot-keys on this page
r m x p toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
# Copyright (c) 2013-2017 CORE Security Technologies # # This software is provided under under a slightly modified version # of the Apache Software License. See the accompanying LICENSE file # for more information. # # Protocol Attack Base Class definition # # Authors: # Alberto Solino (@agsolino) # Dirk-jan Mollema (@_dirkjan) / Fox-IT (https://www.fox-it.com) # # Description: # Defines a base class for all attacks + loads all available modules # # ToDo: #
# Base class for Protocol Attacks for different protocols (SMB, MSSQL, etc) # Besides using this base class you need to define one global variable when # writing a plugin for protocol clients: # PROTOCOL_ATTACK_CLASS = "<name of the class for the plugin>" # or (to support multiple classes in one file) # PROTOCOL_ATTACK_CLASSES = ["<name of the class for the plugin>", "<another class>"] # These classes must have the attribute PLUGIN_NAMES which is a list of protocol names # that will be matched later with the relay targets (e.g. SMB, LDAP, etc) Thread.__init__(self) # Set threads as daemon self.daemon = True self.config = config self.client = client # By default we only use the username and remove the domain self.username = username.split('/')[1]
raise RuntimeError('Virtual Function')
# This seems to be None in some case (py3 only) # __spec__ is py3 only though, but I haven't seen this being None on py2 # so it should cover all cases. except NameError: package = __package__ # Python 2 # Multiple classes for pluginClass in module.PROTOCOL_ATTACK_CLASSES: pluginClasses.add(getattr(module, pluginClass)) else: # Single class except Exception as e: LOG.debug(e) pass
except Exception as e: LOG.debug(str(e)) |