Exemple #1
0
        void pasiveScan_NewARP(object sender, Core.ArpEventArgs e)
        {
            if (e.p == null)
            {
                return;
            }
            Packet p = e.p;

            if (!(p.PayloadPacket is ARPPacket))
            {
                return;
            }

            ARPPacket arp = (ARPPacket)p.PayloadPacket;


            foreach (Data.Attack attack in attacks.Where(A => A.attackType == Data.AttackType.InvalidMacSpoofIpv4 && A.attackStatus == Data.AttackStatus.Attacking))
            {
                if (attack is InvalidMacSpoofAttackIpv4Attack)
                {
                    InvalidMacSpoofAttackIpv4Attack spoofAttack = (InvalidMacSpoofAttackIpv4Attack)attack;
                    if ((spoofAttack.t1.mac.Equals(arp.SenderHardwareAddress)) && arp.TargetProtocolAddress.Equals(spoofAttack.t2.ip))
                    {
                        ForceAttack(spoofAttack);
                    }
                }
            }
        }
Exemple #2
0
        public void ForceRestore(InvalidMacSpoofAttackIpv4Attack attack)
        {
            EthernetPacket ethernet;

            ethernet = new EthernetPacket(device.Interface.MacAddress, ((InvalidMacSpoofAttackIpv4Attack)attack).t1.mac, EthernetPacketType.Arp);
            ethernet.PayloadPacket = new ARPPacket(ARPOperation.Response, ((InvalidMacSpoofAttackIpv4Attack)attack).t1.mac, ((InvalidMacSpoofAttackIpv4Attack)attack).t1.ip, ((InvalidMacSpoofAttackIpv4Attack)attack).t2.mac, ((InvalidMacSpoofAttackIpv4Attack)attack).t2.ip);
            Program.CurrentProject.data.SendPacket(ethernet);
        }
Exemple #3
0
        private void ControlInvalidMacIpv4_Load(object sender, EventArgs e)
        {
            InvalidMacSpoofAttackIpv4Attack dosAttack = (InvalidMacSpoofAttackIpv4Attack)attack;

            lbInfo.Text = "IP " + dosAttack.t1.ip + " has not connectivity with " + dosAttack.t2.ip;
        }