protected override void AddConfiguration(List <NameValueItem> lNameValueItems, IEnvironment eEnviornment)
        {
            lNameValueItems.AddRange(ConvertToNameValueItems("excludeOwnTraffic", thHandler.ExcludeOwnTraffic));
            lNameValueItems.AddRange(ConvertToNameValueItems("excludeLocalHostTraffic", thHandler.ExcludeLocalHostTraffic));
            lNameValueItems.AddRange(ConvertToNameValueItems("autoAnswerARP", thHandler.AutoAnswerARPRequests));
            lNameValueItems.AddRange(ConvertToNameValueItems("filterExpression", thHandler.FilterExpression));
            lNameValueItems.AddRange(ConvertToNameValueItems("addressResolutionMethod", (int)thHandler.AddressResolutionMethod));

            IPAddress[]  ipa     = thHandler.IpAddresses;
            Subnetmask[] smMasks = thHandler.Subnetmasks;

            for (int iC1 = 0; iC1 < ipa.Length; iC1++)
            {
                NameValueItem nviAddress = new NameValueItem("address", "");
                nviAddress.AddChildRange(ConvertToNameValueItems("ipAddress", ipa[iC1]));
                nviAddress.AddChildRange(ConvertToNameValueItems("mask", smMasks[iC1]));
                lNameValueItems.Add(nviAddress);
            }

            ARPHostEntry[] arHosts = thHandler.ARPTable.GetKnownHosts();

            for (int iC1 = 0; iC1 < arHosts.Length; iC1++)
            {
                if (arHosts[iC1].IsStatic)
                {
                    NameValueItem nviAddress = new NameValueItem("staticArpEntry", "");
                    nviAddress.AddChildRange(ConvertToNameValueItems("ipAddress", arHosts[iC1].IP));
                    nviAddress.AddChildRange(ConvertToNameValueItems("macAddress", arHosts[iC1].MAC));
                    lNameValueItems.Add(nviAddress);
                }
            }
        }
        protected override void AddConfiguration(List <NameValueItem> lNameValueItems, IEnvironment eEnviornment)
        {
            if (thHandler.GatewayAddress != null)
            {
                lNameValueItems.AddRange(ConvertToNameValueItems("gateway", thHandler.GatewayAddress));
            }
            if (thHandler.DNSAddress != null)
            {
                lNameValueItems.AddRange(ConvertToNameValueItems("dns", thHandler.DNSAddress));
            }
            lNameValueItems.AddRange(ConvertToNameValueItems("inPort", thHandler.DHCPInPort));
            lNameValueItems.AddRange(ConvertToNameValueItems("outPort", thHandler.DHCPOutPort));
            lNameValueItems.AddRange(ConvertToNameValueItems("leaseDuration", thHandler.LeaseDuration));

            foreach (DHCPPool dhPool in thHandler.DHCPPools)
            {
                NameValueItem nviPool = new NameValueItem("DHCPPool", "");
                foreach (DHCPPoolItem dhItem in dhPool.Pool)
                {
                    NameValueItem nvi = new NameValueItem("DHCPItem", "");
                    nvi.AddChildRange(ConvertToNameValueItems("Address", dhItem.Address));
                    nvi.AddChildRange(ConvertToNameValueItems("Gateway", dhItem.Gateway));
                    nvi.AddChildRange(ConvertToNameValueItems("DNSServer", dhItem.DNSServer));
                    nvi.AddChildRange(ConvertToNameValueItems("Netmask", dhItem.Netmask));
                    nviPool.AddChildItem(nvi);
                }
                lNameValueItems.Add(nviPool);
            }
        }
Beispiel #3
0
        protected override void AddConfiguration(List <NameValueItem> lNameValueItems, IEnvironment eEnviornment)
        {
            lNameValueItems.AddRange(ConvertToNameValueItems("dnsPort", thHandler.DNSPort));

            foreach (DNSSpooferEntry dnsSpoof in thHandler.GetDNSSpooferEntries())
            {
                NameValueItem nviSpoofDefinitions = new NameValueItem("spoofDefinition", "");
                nviSpoofDefinitions.AddChildRange(ConvertToNameValueItems("address", dnsSpoof.Address));
                nviSpoofDefinitions.AddChildRange(ConvertToNameValueItems("domainName", dnsSpoof.Name));
                lNameValueItems.Add(nviSpoofDefinitions);
            }
        }
        protected override void AddConfiguration(List<NameValueItem> lNameValueItems, IEnvironment eEnviornment)
        {
            lNameValueItems.AddRange(ConvertToNameValueItems("method", thHandler.Method.ToString()));
            lNameValueItems.AddRange(ConvertToNameValueItems("interval", thHandler.SpoofInterval));


            foreach (MITMAttackEntry mitmEntry in thHandler.GetVictims())
            {
                NameValueItem nviVictims = new NameValueItem("victim", "");
                nviVictims.AddChildRange(ConvertToNameValueItems("alice", mitmEntry.VictimAlice));
                nviVictims.AddChildRange(ConvertToNameValueItems("bob", mitmEntry.VictimBob));
                lNameValueItems.Add(nviVictims);
            }
        }
 protected override void AddConfiguration(List <NameValueItem> lNameValueItems, IEnvironment eEnviornment)
 {
     foreach (RoutingEntry re in thHandler.RoutingTable.GetRoutes())
     {
         if (re.Owner == RoutingEntryOwner.UserStatic)
         {
             NameValueItem nviRoutingEntry = new NameValueItem("routingEntry", "");
             nviRoutingEntry.AddChildRange(ConvertToNameValueItems("destination", re.Destination));
             nviRoutingEntry.AddChildRange(ConvertToNameValueItems("mask", re.Subnetmask));
             nviRoutingEntry.AddChildRange(ConvertToNameValueItems("metric", re.Metric));
             nviRoutingEntry.AddChildRange(ConvertToNameValueItems("nexthop", re.NextHop));
             lNameValueItems.Add(nviRoutingEntry);
         }
     }
 }
Beispiel #6
0
        protected override void AddConfiguration(List <NameValueItem> lNameValueItems, IEnvironment eEnviornment)
        {
            lNameValueItems.AddRange(ConvertToNameValueItems("dropNonNATFrames", thHandler.DropNonNATFrames));
            lNameValueItems.AddRange(ConvertToNameValueItems("NATTimer", thHandler.NATTimer));
            lNameValueItems.AddRange(ConvertToNameValueItems("portRangeStart", thHandler.PortRangeStart));
            lNameValueItems.AddRange(ConvertToNameValueItems("portRangeEnd", thHandler.PortRangeEnd));

            foreach (NATAddressRange narEntry in thHandler.GetExternalRange())
            {
                NameValueItem nviExternalRange = ConvertToNameValueItems("externalRangeItem", narEntry.NetworkAddress)[0];
                nviExternalRange.AddChildRange(ConvertToNameValueItems("subnetMask", narEntry.Subnetmask));
                lNameValueItems.Add(nviExternalRange);
            }

            foreach (NATAddressRange narEntry in thHandler.GetInternalRange())
            {
                NameValueItem nviInternalRange = ConvertToNameValueItems("internalRangeItem", narEntry.NetworkAddress)[0];
                nviInternalRange.AddChildRange(ConvertToNameValueItems("subnetMask", narEntry.Subnetmask));
                lNameValueItems.Add(nviInternalRange);
            }
        }
        private NameValueItem SaveRule(IEnvironment eEnviornment, TrafficSplitterRule trRule)
        {
            NameValueItem nviRule = null;
            ISubPlugInDefinition <TrafficSplitterRule> ruleDefinition = GetRuleDefinitionForName(eEnviornment, trRule.Name);

            if (ruleDefinition != null)
            {
                nviRule = new NameValueItem("rule", "");
                nviRule.AddChildItem(new NameValueItem("ruleKey", ruleDefinition.PluginKey));
                nviRule.AddChildRange(ruleDefinition.GetConfiguration(trRule));
                foreach (TrafficSplitterRule tsrChild in trRule.ChildRules)
                {
                    NameValueItem nvi = SaveRule(eEnviornment, tsrChild);
                    if (nvi != null)
                    {
                        nviRule.AddChildItem(nvi);
                    }
                }
            }
            return(nviRule);
        }
        private NameValueItem SaveCondition(IEnvironment eEnviornment, HTTPStreamModifierCondition cCondition)
        {
            NameValueItem nviRule = null;
            ISubPlugInDefinition <HTTPStreamModifierCondition> ispConditionDefinition = null;

            ispConditionDefinition = GetConditionefinitionForName(eEnviornment, cCondition.Name);

            if (ispConditionDefinition != null)
            {
                nviRule = new NameValueItem("condition", "");
                nviRule.AddChildItem(new NameValueItem("conditionKey", ispConditionDefinition.PluginKey));
                nviRule.AddChildRange(ispConditionDefinition.GetConfiguration(cCondition));
                foreach (HTTPStreamModifierCondition cChild in cCondition.ChildRules)
                {
                    NameValueItem nvi = SaveCondition(eEnviornment, cChild);
                    if (nvi != null)
                    {
                        nviRule.AddChildItem(nvi);
                    }
                }
            }
            return(nviRule);
        }