protected string QueryStringBreakdown(string queryString)
        {
            if (queryString.Length == 0)
            {
                return(queryString);
            }

            var questionMarkRemoved = false;

            if (queryString[0] == '?')
            {
                questionMarkRemoved = true;
                queryString         = queryString.Substring(1, queryString.Length - 1);
            }

            var parameters = queryString.Split('&');

            for (var i = 0; i < parameters.Length; i++)
            {
                var keyValue = parameters[i].Split('=');
                if (keyValue.Length != 2)
                {
                    continue;
                }

                var tempString = keyValue[0] + "=";
                tempString   += BlacklistCollection.Check(keyValue[0]) ? "**********" : keyValue[1];
                parameters[i] = tempString;
            }

            var newQueryString = string.Join("&", parameters);

            return(questionMarkRemoved ? $"?{newQueryString}" : newQueryString);
        }
        protected Dictionary <string, string> CookiesToDictionary(IRequestCookieCollection cookieCollection)
        {
            var dictionary = new Dictionary <string, string>();

            foreach (var cookie in cookieCollection)
            {
                dictionary.Add(cookie.Key, BlacklistCollection.Check(cookie.Key) ? "**********" : cookie.Value);
            }

            return(dictionary.Count == 0 ? null : dictionary);
        }
        protected Dictionary <string, string> FormToDictionary(IFormCollection formCollection)
        {
            var dictionary = new Dictionary <string, string>();

            foreach (var form in formCollection)
            {
                dictionary.Add(form.Key, BlacklistCollection.Check(form.Key) ? "**********" : (string)form.Value);
            }

            return(dictionary.Count == 0 ? null : dictionary);
        }
Beispiel #4
0
        public void CheckFails()
        {
            var blacklisterMock = new Mock <IBlacklister>();

            blacklisterMock.Setup(b => b.Check("test")).Returns(true);
            var blacklistCollection = new BlacklistCollection(new List <IBlacklister> {
                blacklisterMock.Object
            });

            Assert.False(blacklistCollection.Check("testa"));
        }
        protected Dictionary <string, string> HeadersToDictionary(IHeaderDictionary headerDictionary)
        {
            var dictionary = new Dictionary <string, string>();

            foreach (var header in headerDictionary)
            {
                dictionary.Add(header.Key,
                               BlacklistCollection.Check(header.Key) ? "**********" : (string)header.Value);
            }

            return(dictionary.Count == 0 ? null : dictionary);
        }
        protected Dictionary <string, string> QueryToDictionary(IQueryCollection queryCollection)
        {
            var dictionary = new Dictionary <string, string>();

            foreach (var query in queryCollection)
            {
                dictionary.Add(query.Key,
                               BlacklistCollection.Check(query.Key) ? "**********" : (string)query.Value);
            }

            return(dictionary.Count == 0 ? null : dictionary);
        }
Beispiel #7
0
        public void Check_Pass()
        {
            var blacklisterMock = new Mock <IBlacklister>();

            blacklisterMock.Setup(b => b.Check("test")).Returns(true);
            var blacklistCollection = new BlacklistCollection(new List <IBlacklister>()
            {
                blacklisterMock.Object
            });

            Assert.Equal(true, blacklistCollection.Check("test"));
        }
Beispiel #8
0
        public async Task AddPluginAsync(IBlacklist blacklistPlugin)
        {
            this.Logger.LogInfo("Initializes blacklist plugin \"" + blacklistPlugin.GetType().FullName + "\".");
            if (blacklistPlugin is IInitializable initializable)
            {
                await initializable.InitializeAsync();
            }

            BlacklistCollection collection;

            if (this.plugins.ContainsKey(typeof(IBlacklist)))
            {
                collection = (BlacklistCollection)this.plugins[typeof(IBlacklist)];
            }
            else
            {
                this.plugins.Add(typeof(IBlacklist), collection = new BlacklistCollection());
            }

            collection.Add(blacklistPlugin);

            this.Logger.LogInfo("Plugin \"" + blacklistPlugin.GetType().FullName + "\" ready to use.");
        }
Beispiel #9
0
        static void Main(string[] args)
        {
            try
            {
                using (StreamReader r = new StreamReader(Path.Combine(currentDirectory, "Blacklists.json")))
                {
                    var json = r.ReadToEnd();

                    blacklistsToCheck = JsonConvert.DeserializeObject <BlacklistsToCheck>(json);
                }

                using (StreamReader r = new StreamReader(Path.Combine(currentDirectory, "IPs.json")))
                {
                    var json = r.ReadToEnd();

                    IPsToCheck items = JsonConvert.DeserializeObject <IPsToCheck>(json);

                    foreach (var provider in items.providerCheck)
                    {
                        Console.WriteLine("Querying ESP: " + provider.ESP);

                        foreach (var i in provider.ipList)
                        {
                            Console.WriteLine("Querying IP: " + i.IP);

                            VerifyIP IP = new VerifyIP(i.IP, blacklistsToCheck);

                            if (IP.IPAddr.Valid)
                            {
                                if (IP.BlackList.IsListed)
                                {
                                    BlacklistCollection bl = new BlacklistCollection
                                    {
                                        Provider  = provider.ESP,
                                        IPAddress = i.IP,
                                        Blacklist = IP.BlackList.Provider,
                                        Hostname  = IP.BlackList.VerifiedOnServer
                                    };

                                    blCollection.Add(bl);

                                    Console.WriteLine("IP {0} listed on {1} - {2}.", i.IP, IP.BlackList.Provider, IP.BlackList.VerifiedOnServer);
                                }
                            }
                        }
                        Console.WriteLine("------------------------------------------");
                    }
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
                throw e;
            }
            finally
            {
                EndTime       = DateTime.Now;
                BatchDuration = (EndTime - StartTime);

                Console.WriteLine("App runtime: " + BatchDuration);
            }
        }