def ifconfig(self, ip, netmask=None, broadcast=None): pyw.up(self.card) pyw.ifaddrset(self.card, ip, netmask, broadcast)
def test_inetgetset(self): self.assertEquals( None, pyw.ifaddrset(self.card, pri["ip"], pri["mask"], pri["bcast"])) self.assertEqual(pri["ip"], pyw.ifaddrget(self.card)[0])
def run(self, args, cmd): script_args = argparse.Namespace() script_args.hostapd_wpe_args = to_args_str({ "iface": args.iface, "channel": args.channel, "encryption": args.encryption, "mgt": args.mgt, "password": args.password, "ssid": args.ssid, "karma": args.karma, "mac-acl": args.mac_acl }) script_args.dnsmasq_args = to_args_str({ "start-addr": args.dhcp_start_addr, "end-addr": args.dhcp_end_addr, "lease-time": args.dhcp_lease_time, }) script_args.deauth_args_lst = [] additional_mon_iface = None if args.deauth: additional_mon_iface_name = "{}mon".format(args.iface) cmd.pfeedback( "[i] Creating additional monitor mode interface {} for the continuous deauth attack..." .format(additional_mon_iface_name)) additional_mon_iface = pyw.devadd(pyw.getcard(args.iface), additional_mon_iface_name, "monitor") with db_session: try: for bss in ExtendedServiceSet[args.ssid].bssets.select( lambda bss: bss.channel == args.channel): script_args.deauth_args_lst.append( to_args_str({ "iface": additional_mon_iface_name, "bssid": bss.bssid, "channel": 0, "num-frames": 0, # "client": "FF:FF:FF:FF:FF:FF" })) except: pass pyw.ifaddrset(pyw.getcard(args.iface), args.router_ip, args.netmask) run(["sysctl", "-w", "net.ipv4.ip_forward=1"]) cmd.pfeedback( "[i] Creating NAT rules in iptables for forwarding {} -> {}...". format(args.iface, args.out_iface)) iptc.Table(iptc.Table.NAT).flush() nat_rule = iptc.Rule() nat_rule.src = str( ip_network("{}/{}".format(args.router_ip, args.netmask), strict=False)) nat_rule.out_interface = args.out_iface nat_rule.target = nat_rule.create_target("MASQUERADE") iptc.Chain(iptc.Table(iptc.Table.NAT), "POSTROUTING").append_rule(nat_rule) cmd.pfeedback("[i] Starting hostapd-wpe and dnsmasq...") super().run(script_args, cmd) if additional_mon_iface: cmd.pfeedback( "[i] Deleting the additional monitor mode interface created for the continuous deauth " "attack...") pyw.devdel(additional_mon_iface)
def test_inetgetset(self): self.assertEquals(None,pyw.ifaddrset(self.card,pri['ip'],pri['mask'],pri['bcast'])) self.assertEqual(pri['ip'],pyw.ifaddrget(self.card)[0])
def ifconfig(self, ip, netmask=None, broadcast=None): if self._valid_card(): pyw.up(self.card) pyw.ifaddrset(self.card, ip, netmask, broadcast)
def test_inetgetset(self): self.assertEquals( None, pyw.ifaddrset(self.card, pri['ip'], pri['mask'], pri['bcast'])) self.assertEqual(pri['ip'], pyw.ifaddrget(self.card)[0])
def set_ipaddr(self, addr=None, mask=None, bcast=None): try: w = pyw.getcard(self._interface) pyw.ifaddrset(w, addr, mask, bcast) except pyric.error as e: logger.error(e)