Esempio n. 1
0
        private void btnWpadv6Attack_Click(object sender, EventArgs e)
        {
            List<IPAddress> lstTargets = wpadv6TargetPanel.GetTargetsList();
            foreach (IPAddress target in lstTargets)
            {
                PhysicalAddress macTarget = Program.CurrentProject.data.GetNeighborMAC(target);
                if (macTarget == null)
                    return; // Se descarta el target. Algo raro pasa, ¿Como tener la IP sin la mac en la lista de vecinos?

                MitmAttack attack = new Data.MitmAttack(new Target(Program.CurrentProject.data.GetIPv6LocalLinkFromDevice(Program.CurrentProject.data.GetDevice()), null), new Target(target, macTarget), AttackType.WpadIPv6);
                Program.CurrentProject.data.AddAttack(attack);
                attack.Start();

                AddAttackToListViewEx(attack);

                Program.LogThis("Performing a MITM (WPAD) attack " + attack.t2.ip.ToString(), Logs.Log.LogType.WpadIPv6);
            }
            wpadv6TargetPanel.ClearTargets();
        }
Esempio n. 2
0
        private void btStartNeighborSpoof_Click(object sender, EventArgs e)
        {
            List<IPAddress> lstGateway = panelNeighborAdvSpoof.GetGatewayList();
            List<IPAddress> lstTargets = panelNeighborAdvSpoof.GetTargetsList();

            if (lstGateway.Count == 0)
                ShowMessage("You've to set a 'gateway'", 1000, FormMessage.IconType.Error);
            else if (lstTargets.Count == 0)
                ShowMessage("You've to set at least any target", 1000, FormMessage.IconType.Error);
            else
            {
                IPAddress gateway = (IPAddress)lstGateway[0];

                foreach (IPAddress target in lstTargets)
                {
                    PhysicalAddress macTarget = Program.CurrentProject.data.GetNeighborMAC(target);
                    PhysicalAddress macGateway = Program.CurrentProject.data.GetNeighborMAC(gateway);
                    if ((macTarget == null) || (macGateway == null))
                        return; // Se descarta el target. Algo raro pasa, ¿Como tener la IP sin la mac en la lista de vecinos?
                    MitmAttack attack = new Data.MitmAttack(new Target(gateway, macGateway), new Target(target, macTarget), AttackType.NeighborAdvertisementSpoofing);
                    Program.CurrentProject.data.AddAttack(attack);
                    attack.Start();

                    AddAttackToListViewEx(attack);

                    Program.LogThis("Performing a MITM (Neighbor spoofing) attack between " + attack.t1.ip.ToString() + " and " + attack.t2.ip.ToString(), Logs.Log.LogType.NeighborSpoofing);
                }

                panelNeighborAdvSpoof.ClearGateway();
                panelNeighborAdvSpoof.ClearTargets();
            }
        }
Esempio n. 3
0
        private void btMitmSLAAC_Click(object sender, EventArgs e)
        {
            try
            {
                if (IPAddress.Parse(tbSlaacMitmPrefix.Text).GetAddressBytes().Length != 16)
                {
                    ShowMessage("Prefix must be an Ipv6 address", 1000, FormMessage.IconType.Error);
                    return;
                }
            }
            catch
            {
                ShowMessage("Invalid Prefix", 1000, FormMessage.IconType.Error);
                return;
            }
            List<IPAddress> lstTargets = panelTargetSLAACMitm.GetTargetsList();

            if (lstTargets.Count == 0)
                ShowMessage("You've to set at least any target", 1000, FormMessage.IconType.Error);
            else
            {
                foreach (IPAddress target in lstTargets)
                {
                    PhysicalAddress macTarget = Program.CurrentProject.data.GetNeighborMAC(target);

                    MitmAttack attack = new Data.MitmAttack(null, new Target(target, macTarget), AttackType.SlaacMitm) { prefix = (IPAddress.Parse(tbSlaacMitmPrefix.Text).GetAddressBytes()) };
                    Program.CurrentProject.data.AddAttack(attack);
                    attack.Start();

                    AddAttackToListViewEx(attack);

                    Program.LogThis(String.Format("Performing a MITM (SLAAC) attack between {0} and Attacker gateway ", attack.t2.ip.ToString()), Logs.Log.LogType.NeighborSpoofing);
                }

                panelTargetSLAACMitm.ClearTargets();
            }
        }