def __init__(self): super(icmp, self).__init__('ICMP Redirection') conf.verb = 0 self.local = (config.get('ip_addr'), get_if_hwaddr(config.get('iface'))) self.victim = () self.target = () self.config.update({ "victim_ip": Zoption(type="ip", value=None, required=True, display="Redirect host"), "target_ip": Zoption(type="ip", value=None, required=True, display="Redirect victim to"), "respoof": Zoption(type="int", value=15, required=False, display="Interval (seconds) to send respoofed redirects") }) self.info = """
def __init__(self): super(arp, self).__init__('ARP Spoof') conf.verb = 0 # tuples (ip,mac) self.local = (config.get('ip_addr'), get_if_hwaddr(config.get('iface'))) self.victim = () self.targets = {} self.raw_netmask = None self.sample_int = None self.config.update({ "to_ip": Zoption(value=None, type="ip", required=True, display="Target to poison"), "from_ip": Zoption(value=None, type=["ip", "ipmask"], required=False, display="Address or addresses to spoof from target"), "respoof": Zoption(value=2, type="int", required=False, display="Interval to send respoofed packets") }) self.info = """
def __init__(self): super(redirect_port, self).__init__("redirect_port") self.iptable = "iptables -t nat -A PREROUTING -p tcp --dport {0} -j REDIRECT --to-port {1}" self.config.update({"source_port": Zoption(type="int", value=80, required=True, display="Source port"), "dest_port": Zoption(type="int", value=8080, required=True, display="Destination port")}) self.config.update({}) self.running = False self.info = """
def __init__(self): super(net_map, self).__init__('NetMap') self.available_hosts = {} self.config.update({"net_mask":Zoption(type = "ipmask", value = None, required = True, display = "Netmask to scan"), "fingerprint":Zoption(type = "bool", value = False, required = False, display = "Fingerprint the host") }) self.info = """
def __init__(self): super(llmnr, self).__init__("LLMNR Spoofer") conf.verb = 0 self.local = (config.get('ip_addr'), get_if_hwaddr(config.get('iface'))) self.config.update({"regex_match":Zoption(type = "regex", value = None, required = True, display = "Match request regex"), "redirect":Zoption(type = "ip", value = None, required = True, display = "Redirect to") }) self.info = """
def __init__(self): super(http, self).__init__('HTTP Server') self.httpd = None self.config['port'].value = 80 self.config.update({"root": Zoption(type = "str", value = None, required = False, display = "Root file to serve"), "server": Zoption(type = "str", value = "Unified HTTP Server v3.1", required = False, display = "Server name" ) }) self.info = """
def __init__(self): super(service_scan, self).__init__('Service Scan') self.config.update({ "net_mask": Zoption(type="ipmask", value=None, required=True, display="Netmask to scan"), "service": Zoption(type="str", value=None, required=True, display="List of ports or services") }) self.info = """
def __init__(self): super(beef_hook, self).__init__("BeEF Hook") self.proxy_server = None self.hooker = None self.hook_script = "<script src=\"{0}\"></script>" self.iptable_http = "iptables -t nat -A PREROUTING -p tcp --dport 80 -s {0} -j REDIRECT --to-port 5544" self.config.update({"hook_path":Zoption(type = "str", value = None, required = True, display = "Path to BeEF hook"), "hooked_host": Zoption(type = "ip", value = None, required = True, display = "Host to hook") }) self.info = """
def __init__(self): super(nbns, self).__init__('NBNS Poison') conf.verb = 0 self.local_mac = get_if_hwaddr(config.get('iface')) self.config.update({ "regex_match": Zoption(type="regex", value=None, required=True, display="Match request regex"), "redirect": Zoption(type="ip", value=None, required=True, display="Redirect to") }) self.info = """
def __init__(self, which): super(Service, self).__init__(which) self.config.update({ "port": Zoption(type="int", value=None, required=False, display="Listen port") })
def __init__(self, which): super(DoS, self).__init__(which) self.config.update({ "target": Zoption(type="ip", value=None, required=True, display="Target to DoS") })
def __init__(self): super(RouterVuln, self).__init__("%s - %s" % (self.router, self.vuln)) self.config.update({ "target": Zoption(type="ip", value="192.168.1.1", required=False, display="Address to target") })
def __init__(self): super(ap_crack, self).__init__('APCrack') self.config.update({"mode":Zoption(type = "int", value = 1, required = True, display = "Mode to crack", opts = ['WEP', 'WPA', 'WPS']) }) self.info = """
def __init__(self): super(traffic_sniffer, self).__init__('Traffic Sniffer') self.config.update({ "filter": Zoption(type="str", value="src {0} or dst {0}", required=False, display="Traffic filter") }) self.info = """
def __init__(self): """ Simple TCP SYN flooder. Absolutely nothing fancy, and could probably use some love. """ super(tcp_syn, self).__init__('TCP SYN') conf.verb = 0 self.config.update({ "port": Zoption(type="int", value=80, required=False, display="Attack port"), "count": Zoption(type="int", value=-1, required=False, display="Number of packets to send (-1 infinite)") }) self.info = """
def __init__(self): super(dhcp, self).__init__('DHCP Spoof') conf.verb = 0 self.local_mac = get_if_hwaddr(conf.iface) self.spoofed_hosts = {} self.curr_ip = None self.config.update({ "gateway": Zoption(type="ip", value=None, required=True, display="Spoofed gateway address"), "net_mask": Zoption(type="ipmask", value=None, required=True, display="Netmask to distribute IPs from"), }) self.info = """
def __init__(self): super(ssh, self).__init__('SSH Server') self.config['port'].value = 22 self.config.update({ "priv_key": Zoption(type="str", value=None, required=False, display="Private key (None to generate)") }) self.info = """
def __init__(self): super(access_point, self).__init__('Access Point') self.mon_adapt = None del self.config["port"] self.config.update({ "ap_essid": Zoption(type="str", value="zoopzop", required=False, display="Spoofed AP name") }) self.info = """
def __init__(self): super(dhcp_starvation, self).__init__('DHCP Starvation') conf.verb = 0 self.config.pop("target", None) self.config.update({ "interval": Zoption(type="int", value=0.1, required=False, display="Interval to send advertisements") }) self.info = """
def __init__(self): super(http_sniffer, self).__init__('HTTP Sniffer') self.sessions = {} self.config.update({"verb":Zoption(type = "int", value = 1, required = False, display = "Output verbosity", opts = ['Site Only', 'Request String', 'Request and Payload', 'Session IDs', 'Custom Regex' ]), "regex":Zoption(type = "regex", value = None, required = False, display = "Regex for level 5 verbosity"), 'port':Zoption(type = "int", value = 80, required = False, display = "Port to sniff on") }) self.info = """
def __init__(self): super(ftp, self).__init__('FTP Server') self.usr = None self.pwd = None self.server_socket = None self.config['port'].value = 21 self.config.update({"motd":Zoption(type = "str", value = "b4ll4stS3c FTP Server v1.4", required = False, display = "Displayed MOTD") }) self.info = """
def __init__(self): super(switchover, self).__init__('Switch Over') self.switch = None self.sent = 0 self.config.update({ "target": Zoption(type="ip", value="FF:FF:FF:FF:FF:FF", required=False, display="Switch address") }) self.info = """
def __init__(self): super(telnet, self).__init__('telnet server') self.server_thread = None self.server_socket = None self.config['port'].value = 23 self.config.update({ "server": Zoption(type="str", value="Unified", required=False, display="Server title to spoof") }) self.info = """
def __init__(self, which): super(Sniffer, self).__init__(which) self.sniff_filter = None # filter for the traffic sniffer # initialize thread self.sniff_thread = Thread(target=self.traffic_sniffer) self.config.update({ "target": Zoption(type="ip", value=config.get("ip_addr"), required=False, display="Address to sniff from") })
def __init__(self): super(dns, self).__init__('DNS Spoof') conf.verb = 0 self.dns_spoofed_pair = {} self.local_mac = get_if_hwaddr(config.get('iface')) self.config.update({ "dns_name": Zoption(type="regex", value=None, required=True, display="Regex to match DNS"), "dns_spoofed": Zoption(type="str", value=None, required=True, display="Redirect DNS request to"), "victim": Zoption(type="ip", value=None, required=False, display="Host to spoof requests from") }) self.info = """
def __init__(self): super(ndp_dos, self).__init__('IPv6 Neighbor Discovery Protocol RA DoS') conf.verb = 0 self.config.pop("target", None) self.config.update({ "interval": Zoption(type="int", value=0.1, required=False, display="Interval to send advertisements"), "prefix": Zoption(type="str", value="ba11:a570::", required=False, display="Fake router IPv6 address"), "count": Zoption(type="int", value=-1, required=False, display="Number of advertisements to send (-1 infinite)") }) self.info = """
def __init__(self): super(replacer, self).__init__("Replacer") self.replace_regex = {} # structure of {'match':'replace'} self.replace_tags = {} self.hooker = None self.proxy_server = None self.iptable = "iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 5544" self.config.update({ "replace_file": Zoption(type="file", value=getcwd() + '/config/replacements', required=True, display="File containing replace matches") }) self.info = """