Пример #1
0
        // methods
        private async Task solveCaptcha(Job j)
        {
            string captchaResponse = null;

            j.Status = "Getting captcha response...";

            if (Manager.use2Captcha)
            {
                _2Captcha captcha = new _2Captcha(Manager.myKey, Manager.siteKey);
                captchaResponse = await captcha.solveCaptcha();
            }
            else if (Manager.useAntiCaptcha)
            {
                AntiCaptcha captcha = new AntiCaptcha(Manager.myKey, Manager.siteKey);
                captchaResponse = captcha.solveCaptcha();
            }


            if (captchaResponse == "false")
            {
                j.Status = "Error Getting Captcha!";
            }
            else
            {
                //_status = true;
                j.Status          = "Got captcha response!";
                j.CaptchaResponse = captchaResponse;
            }
        }
Пример #2
0
        /// <summary>
        /// Automatically bypasses HackForums captcha/cloudflare system.
        /// This should called immediately after initializing, if your program is running on a server.
        /// </summary>
        public static bool BypassCaptchaSystem(this HttpClient client, string _2captchApiKey)
        {
            // send a request to the API
            string response = client.ApiGet("?version");

            // check if we actually *need* to bypass the captcha
            if (!response.Contains("HackForums.net wants to verify that you're a human."))
            {
                return(true);
            }

            // get the url we'll be submitting our bypass to
            string submitURL = GetActionURL(response);

            if (string.IsNullOrEmpty(submitURL))
            {
                return(false);
            }

            // get the value of 's'
            string s = GetValueS(response);

            if (string.IsNullOrEmpty(s))
            {
                return(false);
            }

            // get script data (data-raw and data-sitekey)
            Tuple <string, string> scriptData = GetScriptData(response);

            if (scriptData == null)
            {
                return(false);
            }

            string ray     = scriptData.Item1;
            string siteKey = scriptData.Item2;

            // use the _2Captcha class to get a valid token to bypass the captcha
            _2Captcha captcha = new _2Captcha(HACKFORUMS, siteKey, _2captchApiKey);
            string    token   = captcha.GetToken();

            if (token == null)
            {
                return(false);
            }

            NameValueCollection queryString = HttpUtility.ParseQueryString(string.Empty);

            queryString["s"]  = s;
            queryString["id"] = ray;
            queryString["g-recaptcha-response"] = token;

            string requestString = submitURL + "?" + queryString.ToString();

            _ = client.GetAsync(requestString).Result;

            return(true);
        }
Пример #3
0
 private async Task BumpBot()
 {
     _config  = BuildConfig();
     _service = ConfigureServices();
     _captcha = new _2Captcha(_config["apiKey"]);
     _web     = new ChromeDriver(@"Componements\");
     await Task.Delay(-1);
 }
Пример #4
0
        static async Task Main(string[] args)
        {
            var captcha = new _2Captcha(" ## YOUR API KEY ## ");
            // .. additionally you can pass your own httpClient class
            var captchaWithHttpClient = new _2Captcha(" ## YOUR API KEY ## ", new HttpClient());

            // Get current balance
            var balance = await captcha.GetBalance();

            // Solve image captcha
            var image1 = await captcha.SolveImage(new FileStream("captcha.png", FileMode.Open));
            var image2 = await captcha.SolveImage("data:image/png;base64,iVBORw0KGgo...");

            // Solve text captcha
            var question = await captcha.SolveQuestion("1 + 3 = ?");

            // Solve hCaptcha
            var hcaptcha = await captcha.SolveHCaptcha("HCAPTCHA_SITE_KEY", "https://example.com");

            // Solve ReCaptchaV2
            var recaptcha = await captcha.SolveReCaptchaV2("GOOGLE_SITE_KEY", "https://example.com");
            var recaptchaInvisible = await captcha.SolveReCaptchaV2("GOOGLE_SITE_KEY", "https://example.com", true);

            // Solve ReCaptchaV3
            var recaptcha3 = await captcha.SolveReCaptchaV3("GOOGLE_SITE_KEY", "https://example.com", "ACTION", 0.4);

            // Solve ClickCaptcha
            var click1 = await captcha.SolveClickCaptcha(new FileStream("captcha.png", FileMode.Open), "Click on ghosts");
            var click2 = await captcha.SolveClickCaptcha("data:image/png;base64,iVBORw0KGgo...", "Click on ghosts");

            // Solve RotateCaptcha
            var rotate = await captcha.SolveRotateCaptcha(new Stream[] {new FileStream("captcha.png", FileMode.Open)}, "40");

            // Solve FunCaptcha
            var fun = await captcha.SolveFunCaptcha("FUN_CAPTCHA_PUBLIC_KEY", "https://example.com");
            var funNoJavaScript = await captcha.SolveFunCaptcha("FUN_CAPTCHA_PUBLIC_KEY", "https://example.com", true);

            // Solve KeyCaptcha
            var key = await captcha.SolveKeyCaptcha("USER_ID", "SESSION_ID", "WEB_SIGN_1", "WEB_SIGN_2", "https://example.com");

            Debugger.Break();
        }
Пример #5
0
        private async void getBalance()
        {
            double balance = 0;
            string title   = null;

            if (radioButton2Captcha.IsChecked == true)
            {
                _2Captcha twoCaptcha = new _2Captcha(Manager.myKey, Manager.siteKey);
                balance = await twoCaptcha.getBalance();

                title = "2Captcha";
            }
            else if (radioButtonAntiCaptcha.IsChecked == true)
            {
                AntiCaptcha antiCaptcha = new AntiCaptcha(Manager.myKey, Manager.siteKey);
                balance = antiCaptcha.getBalance();
                title   = "Anti-Captcha";
            }

            await this.ShowMessageAsync(title, "Balance " + balance, MessageDialogStyle.Affirmative);
        }
Пример #6
0
        public static async Task <string> SolveRegisterCaptcha()
        {
            var captcha = new _2Captcha("5093eb3ba7608e487fd05f6abbeb2f21");
            var balance = await captcha.GetBalance();

            Console.WriteLine($"2Captcha Balance: {balance.Response}$");

            while (true)
            {
                var resCaptcha = await captcha.SolveReCaptchaV2("6Lef5iQTAAAAAKeIvIY-DeexoO3gj7ryl9rLMEnn", "https://discordapp.com/api/v6/auth/register", Program.Proxy, _2CaptchaAPI.Enums.ProxyType.Https);

                if (resCaptcha.Success)
                {
                    return(resCaptcha.Response);
                }
                else
                {
                    Console.WriteLine("Captcha f****d up");
                }
            }
        }
Пример #7
0
 public ResolveState Resolve(CaptchaStatics statics, CaptchaService service)
 {
     if (service == CaptchaService.CAP_MONSTER)
     {
         Capmonter capmonter = new Capmonter(statics);
         return(capmonter.ResoloveCaptcha());
     }
     else if (service == CaptchaService.ANTI_CAPTCHA)
     {
         AntiCaptcha antiCaptcha = new AntiCaptcha(statics);
         return(antiCaptcha.ResovleCaptcha());
     }
     else if (service == CaptchaService.BYPASS)
     {
         AntiCaptcha antiCaptcha = new AntiCaptcha(statics);
         return(antiCaptcha.ResovleCaptcha());
     }
     else
     {
         _2Captcha _2Captcha = new _2Captcha(statics.Apikey);
         return(_2Captcha.SolveRecaptchaV2(YolikerStatics.GooglePublicKey, YolikerStatics.LikeCustomUri, out statics.SolvedCaptchaResponse));
     }
 }
Пример #8
0
        private static async Task Foo()
        {
            /*
             * Class initialization
             * Optionally you can pass 2nd parameter `httpClient` with custom HttpClient to use while requesting API
             */
            var captcha           = new _2Captcha("API_KEY");
            var captchaCustomHttp = new _2Captcha("API_KEY", new HttpClient());

            /*
             * Set custom API url (optional)
             */
            captcha.SetApiUrl("https://CUSTOM_URL");

            /*
             * Get current balance
             */
            var balance = await captcha.GetBalance();

            /*
             * Type: Image
             *
             * Documentation (2captcha): https://2captcha.com/2captcha-api#solving_normal_captcha
             */
            var image = await captcha.SolveImage(new FileStream("captcha.png", FileMode.Open), FileType.Png);

            var image2 = await captcha.SolveImage(File.ReadAllBytes("captcha.png"), FileType.Png);

            var image3 = await captcha.SolveImage("BASE64_IMAGE", FileType.Png);

            var imageCaseSensitive = await captcha.SolveImage(new FileStream("captcha.png", FileMode.Open), FileType.Png, new KeyValuePair <string, string>("regsense", "1"));

            var imageCaseSensitive2 = await captcha.SolveImage(File.ReadAllBytes("captcha.png"), FileType.Png, new KeyValuePair <string, string>("regsense", "1"));

            var imageCaseSensitive3 = await captcha.SolveImage("BASE64_IMAGE", FileType.Png, new KeyValuePair <string, string>("regsense", "1"));

            /*
             * Type: Text
             *
             * Documentation (2captcha): https://2captcha.com/2captcha-api#solving_text_captcha
             */
            var question = await captcha.SolveQuestion("1 + 3 = ?");

            /*
             * Type: ReCaptcha V2
             * Optionally you can pass 3rd parameter `isInvisible` to indicate if the reCaptcha is setup as invisible
             *
             * Homepage: https://www.google.com/recaptcha/
             * Documentation (vendor): https://developers.google.com/recaptcha/docs/display
             * Documentation (2captcha): https://2captcha.com/2captcha-api#solving_recaptchav2_new
             */
            var reCaptcha = await captcha.SolveReCaptchaV2("SITE_KEY", "https://WEBSITE_URL");

            var reCaptchaInvisible = await captcha.SolveReCaptchaV2("SITE_KEY", "https://WEBSITE_URL", true);

            var reCaptchaWithProxy = await captcha.SolveReCaptchaV2("SITE_KEY", "https://WEBSITE_URL", "username:password@address:port", ProxyType.Http);

            /*
             * Type: ReCaptcha V3
             *
             * Homepage: https://www.google.com/recaptcha/
             * Documentation (vendor): https://developers.google.com/recaptcha/docs/v3
             * Documentation (2captcha): https://2captcha.com/2captcha-api#solving_recaptchav3
             */
            var reCaptchaV3 = await captcha.SolveReCaptchaV3("SITE_KEY", "https://WEBSITE_URL", "ACTION", 0.4);

            var reCaptchaV3WithProxy = await captcha.SolveReCaptchaV3("SITE_KEY", "https://WEBSITE_URL", "username:password@address:port", ProxyType.Http, "ACTION", 0.4);

            /*
             * Type: hCaptcha
             *
             * Homepage: https://www.hcaptcha.com/
             * Documentation (vendor): https://docs.hcaptcha.com/
             * Documentation (2captcha): https://2captcha.com/2captcha-api#solving_hcaptcha
             */
            var hCaptcha = await captcha.SolveHCaptcha("SITE_KEY", "https://WEBSITE_URL");

            var hCaptchaWithProxy = await captcha.SolveHCaptcha("SITE_KEY", "https://WEBSITE_URL", "username:password@address:port", ProxyType.Http);

            /*
             * Type: GeeTest
             *
             * Homepage: https://www.geetest.com/en
             * Documentation (vendor): https://docs.geetest.com/en
             * Documentation (2captcha): https://2captcha.com/2captcha-api#solving_geetest
             */
            var geeTest = await captcha.SolveGeeTest("SITE_KEY", "https://WEBSITE_URL", "CHALLENGE");

            /*
             * Type: ClickCaptcha
             *
             * Documentation (2captcha): https://2captcha.com/2captcha-api#solving_clickcaptcha
             */
            var clickCaptcha = await captcha.SolveClickCaptcha(new FileStream("captcha.png", FileMode.Open), FileType.Png, "TASK");

            var clickCaptcha2 = await captcha.SolveClickCaptcha(File.ReadAllBytes("captcha.png"), FileType.Png, "TASK");

            var clickCaptcha3 = await captcha.SolveClickCaptcha("BASE64_IMAGE", FileType.Png, "TASK");

            /*
             * Type: RotateCaptcha
             *
             * Documentation (2captcha): https://2captcha.com/2captcha-api#solving_rotatecaptcha
             */
            var rotateCaptcha = await captcha.SolveRotateCaptcha(
                new Stream[]
            {
                new FileStream("captcha1.png", FileMode.Open),
                new FileStream("captcha2.png", FileMode.Open),
                new FileStream("captcha3.png", FileMode.Open),
            }, FileType.Png, "40");

            /*
             * Type: FunCaptcha
             *
             * Documentation (2captcha): https://2captcha.com/2captcha-api#solving_funcaptcha_new
             */
            var funCaptcha = await captcha.SolveFunCaptcha("PUBLIC_KEY", "https://WEBSITE_URL");

            var funCaptchaNoJavaScript = await captcha.SolveFunCaptcha("PUBLIC_KEY", "https://WEBSITE_URL", true);

            var funCaptchaWithProxy = await captcha.SolveFunCaptcha("PUBLIC_KEY", "https://WEBSITE_URL", "username:password@address:port", ProxyType.Http);

            /*
             * Type: KeyCaptcha
             *
             * Homepage: https://www.keycaptcha.com/
             * Documentation (2captcha): https://2captcha.com/2captcha-api#solving_keycaptcha
             */
            var keyCaptcha = await captcha.SolveKeyCaptcha("USER_ID", "SESSION_ID", "WEB_SIGN_1", "WEB_SIGN_2", "https://WEBSITE_URL");

            Debugger.Break();
        }
Пример #9
0
 public Bump(IConfiguration config, ChromeDriver web, _2Captcha captcha)
 {
     _config  = config;
     _web     = web;
     _captcha = captcha;
 }
Пример #10
0
 public Worker(ILogger <Worker> logger, ChromeDriver chrome, _2Captcha captcha)
 {
     _logger  = logger;
     _chrome  = chrome;
     _captcha = captcha;
 }
Пример #11
0
        static async Task DoShit()
        {
            Random random = new Random();

            while (true)
            {
                //CAPTCHA INIT
                var captcha = new _2Captcha("5093eb3ba7608e487fd05f6abbeb2f21");
                var balance = await captcha.GetBalance();

                Console.WriteLine($"2Captcha Balance: {balance.Response}$");

                //PROXY PREP
                string[] lines = File.ReadAllLines("proxies.txt");
                Proxy = lines[random.Next(0, lines.Length - 1)];
                WebProxy proxy = new WebProxy(Proxy);
                Console.WriteLine($"Using Proxy: {Proxy}");

                //REST TEST
                Stopwatch watch = new Stopwatch();
                watch.Start();
                Console.WriteLine($"REST request test..");
                var client  = new RestClient("https://reqres.in/api/");
                var request = new RestRequest("users");
                request.AddHeader("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0");
                request.Timeout = 15000;
                client.Proxy    = proxy;
                var response = await client.ExecutePostAsync(request);

                var content = response.Content;
                watch.Stop();
                Console.WriteLine($"Elapsed: {watch.Elapsed.TotalSeconds}s");
                if (content.Length > 0)
                {
                    Console.WriteLine($"Proxy usable - returned content ({content})");
                }
                if (content.Length == 0)
                {
                    continue;
                }
                if (watch.ElapsedMilliseconds > (15 * 1000))
                {
                    continue;
                }

                //CAPTCHA SOLVE
                Console.WriteLine($"Solving Captcha..");
                //var captcha = await captcha.SolveHCaptcha("f5561ba9-8f1e-40ca-9b5b-a0b3f719ef34", "https://discordapp.com/api/v6/auth/register", proxypick, _2CaptchaAPI.Enums.ProxyType.Https);
                var resCaptcha = await captcha.SolveReCaptchaV2("6Lef5iQTAAAAAKeIvIY-DeexoO3gj7ryl9rLMEnn", "https://discordapp.com/api/v6/auth/register", Proxy, _2CaptchaAPI.Enums.ProxyType.Https);

                Console.WriteLine($"Result: {resCaptcha.Response}");
                Console.WriteLine($"Success: {resCaptcha.Success}");

                //CLIENT NAME
                const string chars      = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
                string       randstring = new string(Enumerable.Range(1, 10).Select(_ => chars[random.Next(chars.Length)]).ToArray()).ToLower();
                Console.WriteLine($"Random user account: DB{randstring}");
                Login = randstring;

                Console.WriteLine();
                Console.WriteLine("--------------------------------------------------------------");
                Console.WriteLine("REGISTER LOGIC START");
                Console.WriteLine();

                while (true)
                {
                    //REGISTER REQUEST
                    Console.WriteLine("Discord register request..");
                    client  = new RestClient("https://discordapp.com/api/v6/");
                    request = new RestRequest("auth/register");
                    request.RequestFormat = DataFormat.Json;
                    request.AddJsonBody(new
                    {
                        email            = $"DB{randstring}@coolman.fun",
                        username         = $"Coolman",
                        password         = "******",
                        invite           = "",
                        consent          = true,
                        gift_code_sku_id = "",
                        captcha_key      = resCaptcha.Response
                    });
                    request.AddHeader("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0");
                    //request.AddHeader("content-type", "application/json");
                    //request.AddHeader("Connection", "keep-alive");
                    client.Proxy = proxy;
                    response     = await client.ExecutePostAsync(request);

                    Console.WriteLine($"Register: {response.Content}");

                    if (response.Content.Length == 0)
                    {
                        Console.WriteLine("Response invalid, press ENTER to repeat process");
                        Console.ReadLine();
                        continue;
                    }

                    //RESPONSE PARSE
                    dynamic json = JObject.Parse(response.Content);
                    if (json.ContainsKey("token"))
                    {
                        Token = json.token;
                        Console.WriteLine($"Token: {Token}");

                        bool didIt = false;
                        while (true)
                        {
                            Imap4Client em = new Imap4Client();
                            Console.WriteLine(em.ConnectSsl("wes1-imap2.wedos.net", 993));
                            Console.WriteLine(em.Login("*****@*****.**", "-Poqwlkas1")); //custom

                            var mails = em.SelectMailbox("INBOX");
                            var msgs  = mails.SearchParse("ALL").Cast <Message>();
                            Console.WriteLine($"Loaded emails {msgs.Count()}");

                            if (msgs.Count() == 0)
                            {
                                continue;
                            }

                            //MAIL BROWSE
                            foreach (Message mail in msgs)
                            {
                                if (mail.To[0].Email == $"db{randstring}@coolman.fun")
                                {
                                    var   html = mail.BodyHtml.Text;
                                    Regex rg   = new Regex("https:\\/\\/click\\.discord\\.com\\/ls\\/click\\?upn=(.*)\" *style.*\n.*Verify");
                                    var   link = rg.Match(html);
                                    if (link.Success)
                                    {
                                        //VERIFY LINK RESOLVE
                                        Console.WriteLine($"Original: {link.Groups[1]}{Environment.NewLine}");
                                        var resolved = GetFinalRedirect("https://click.discord.com/ls/click?upn=" + link.Groups[1]);
                                        Console.WriteLine($"Resolved: {resolved}{Environment.NewLine}");
                                        resolved = resolved.Substring(33);
                                        Console.WriteLine($"Token: {resolved}{Environment.NewLine}");

                                        //CAPTCHA
                                        Console.WriteLine($"Solving Captcha..");
                                        resCaptcha = await captcha.SolveReCaptchaV2("6Lef5iQTAAAAAKeIvIY-DeexoO3gj7ryl9rLMEnn", "https://discordapp.com/", Proxy, _2CaptchaAPI.Enums.ProxyType.Https);

                                        Console.WriteLine($"Success: {resCaptcha.Success}");

                                        //VERIFY
                                        request = new RestRequest("auth/verify");
                                        request.RequestFormat = DataFormat.Json;
                                        request.AddJsonBody(new
                                        {
                                            token       = resolved,
                                            captcha_key = resCaptcha.Response
                                        });
                                        request.AddHeader("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0");
                                        response = await client.ExecutePostAsync(request);

                                        Console.WriteLine($"Login: {response.Content}");
                                        dynamic data = JObject.Parse(response.Content);
                                        Token = data.token;
                                        ///////////////////
                                        didIt = true;
                                        break;
                                    }
                                }
                            }
                            if (didIt)
                            {
                                break;
                            }
                            Console.WriteLine("No e-mail.. Delay 5s");
                            await Task.Delay(5000);

                            continue;
                        }
                        break;
                    }
                    else
                    {
                        Console.WriteLine("Response invalid, press ENTER to repeat process");
                        Console.ReadLine();
                        continue;
                    }
                }

                Console.WriteLine();
                Console.WriteLine("--------------------------------------------------------------");
                Console.WriteLine("LOGIN & SPAM LOGIC START");
                Console.WriteLine();

                while (true)
                {
                    try
                    {
                        Console.WriteLine("Using RestSharp");
                        client       = new RestClient("https://discordapp.com/api/v6/");
                        client.Proxy = proxy;
                        /////////////////////////////////////////////

                        //LOGIN
                        request = new RestRequest("auth/login");
                        request.RequestFormat = DataFormat.Json;
                        request.AddJsonBody(new
                        {
                            email        = $"{Login}@coolman.fun",
                            password     = "******",
                            undelete     = "false",
                            captcha_key  = "null",
                            login_source = "null"
                        });
                        request.AddHeader("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0");
                        response = await client.ExecutePostAsync(request);

                        dynamic data = JObject.Parse(response.Content);
                        Token = data.token;
                        Console.WriteLine($"Login: {response.Content}");
                        //Console.ReadLine();
                        ///////////////////

                        //INVITE
                        request = new RestRequest($"invite/{InviteID}");
                        request.AddHeader("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0");
                        request.AddHeader("Authorization", Token);
                        response = await client.ExecutePostAsync(request);

                        Console.WriteLine($"Invite: {response.Content}");
                        //Console.ReadLine();
                        ///////////////////

                        //GATEWAY
                        Console.WriteLine("Connecting to Discord Gateway");
                        var factory = new Func <ClientWebSocket>(() => new ClientWebSocket
                        {
                            Options =
                            {
                                Proxy = proxy
                            }
                        });
                        var exitEvent = new ManualResetEvent(false);
                        using (var wsc = new WebsocketClient(new Uri("wss://gateway.discord.gg"), factory))
                        {
                            wsc.ReconnectTimeout = TimeSpan.FromSeconds(30);
                            //wsc.ReconnectionHappened.Subscribe(info =>
                            //Log.Information($"Reconnection happened, type: {info.Type}"));

                            wsc.MessageReceived.Subscribe(msg =>
                            {
                                Console.WriteLine($"Gateway incoming: {msg}");
                                exitEvent.Set();
                            });
                            wsc.Start();

                            //Task.Run(() => wsc.Send("{ message }"));

                            exitEvent.WaitOne();
                            //Console.ReadLine();
                            wsc.Send("{\"op\":2,\"d\":{\"token\":\"" + Token + "\",\"intents\":7,\"properties\":{\"$os\":\"linux\",\"$browser\":\"chrome\",\"$device\":\"build\"},\"compress\":true,\"large_threshold\":250,\"guild_subscriptions\":false,\"shard\":[0,1],\"presence\":{\"activities\":[{\"name\":\"What's up\",\"type\":0}],\"status\":\"dnd\",\"since\":91879201,\"afk\":false}}}");
                            //Console.ReadLine();
                            exitEvent.WaitOne();
                        }

                        //SPAM LOOP (unbreakable)
                        Console.WriteLine("Setup successful - SPAM READY");
                        Console.WriteLine("Press ENTER to start");
                        Console.ReadLine();
                        while (true)
                        {
                            var chat = File.ReadAllLines("chat.txt");
                            request = new RestRequest($"channels/{ChannelID}/messages");
                            //request.RequestFormat = DataFormat.Json;
                            request.AddQueryParameter("Authorization", Token);
                            request.AddParameter("Authorization", Token);
                            request.AddJsonBody(new
                            {
                                authorization = Token,
                                content       = chat[random.Next(chat.Length)],
                                nonce         = ((DateTime.Now.Ticks - 1420070400000) * 4194304),
                                tts           = "false"
                            });
                            request.AddHeader("Authorization", Token);
                            response = await client.ExecutePostAsync(request);

                            Console.WriteLine($"Message: {response.Content}");
                            data = JObject.Parse(response.Content);

                            if (data.ContainsKey("retry_after"))
                            {
                                await Task.Delay(int.Parse(data.retry_after));
                            }
                            else
                            {
                                await Task.Delay(random.Next(1000, 4000));
                            }
                        }
                        ;
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine($"Error S2: {e.Message}");
                        Console.ReadLine();
                        continue; //reset logic
                    }
                }

                Console.WriteLine("End of loop");
                Console.ReadLine();
                break;
            }
            Console.WriteLine("Program End");
        }
Пример #12
0
        static async Task DoTempShit()
        {
            //CAPTCHA INIT
            var captcha = new _2Captcha("5093eb3ba7608e487fd05f6abbeb2f21");
            var balance = await captcha.GetBalance();

            Console.WriteLine($"2Captcha Balance: {balance.Response}$");

            //PROXY PREP
            WebProxy proxy = new WebProxy(Proxy);

            Console.WriteLine($"Using Proxy: {Proxy}");

            //REST TEST
            Stopwatch watch = new Stopwatch();

            watch.Start();
            Console.WriteLine($"REST request test..");
            var client  = new RestClient("https://reqres.in/api/");
            var request = new RestRequest("users");

            request.AddHeader("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0");
            request.Timeout = 15000;
            client.Proxy    = proxy;
            //var response = await client.ExecutePostAsync(request);
            var content = "s"; //response.Content;

            watch.Stop();
            Console.WriteLine($"Elapsed: {watch.Elapsed.TotalSeconds}s");
            if (content.Length > 0)
            {
                Console.WriteLine($"Proxy usable - returned content ({content})");
            }

            //Console.WriteLine("Press ENTER to procceed");
            //Console.ReadLine();

            ///////

            Random rand = new Random();

            try
            {
                Console.WriteLine("Using RestSharp");
                client       = new RestClient("https://discordapp.com/api/v6/");
                client.Proxy = proxy;
                /////////////////////////////////////////////

                Imap4Client em = new Imap4Client();
                Console.WriteLine(em.ConnectSsl("wes1-imap2.wedos.net", 993));
                Console.WriteLine(em.Login("*****@*****.**", "-Poqwlkas1")); //custom

                var mails = em.SelectMailbox("INBOX");
                var msgs  = mails.SearchParse("ALL").Cast <Message>();
                Console.WriteLine($"Loaded emails {msgs.Count()}");


                bool didIt = false;

                //MAIL BROWSE
                foreach (Message mail in msgs)
                {
                    foreach (var to in mail.To)
                    {
                        Console.WriteLine($"{to.Email} vs {Login.ToLower()}");
                    }

                    if (mail.To[0].Email.CompareTo($"{Login.ToLower()}@coolman.fun") == 0)
                    {
                        Console.WriteLine("Found email");
                        var   html = mail.BodyHtml.Text;
                        Regex rg   = new Regex("https:\\/\\/click\\.discord\\.com\\/ls\\/click\\?upn=(.*)\" *style.*\n.*Verify");
                        var   link = rg.Match(html);
                        if (link.Success)
                        {
                            foreach (var grp in link.Groups)
                            {
                                Console.WriteLine($"Group:  <<<{grp}>>>");
                            }

                            //VERIFY LINK RESOLVE
                            Console.WriteLine($"Original: {link.Groups[1]}{Environment.NewLine}");
                            var resolved = GetFinalRedirect("https://click.discord.com/ls/click?upn=" + link.Groups[1]);
                            Console.WriteLine($"Resolved: {resolved}{Environment.NewLine}");
                            resolved = resolved.Substring(33);
                            Console.WriteLine($"Token: {resolved}{Environment.NewLine}");

                            Console.WriteLine("Press ENTER to procceed");
                            Console.ReadLine();

                            //CAPTCHA
                            Console.WriteLine($"Solving Captcha..");
                            var resCaptcha = await captcha.SolveReCaptchaV2("6Lef5iQTAAAAAKeIvIY-DeexoO3gj7ryl9rLMEnn", "https://discordapp.com/", Proxy, _2CaptchaAPI.Enums.ProxyType.Https);

                            Console.WriteLine($"Success: {resCaptcha.Success}");

                            //VERIFY
                            request = new RestRequest("auth/verify");
                            request.RequestFormat = DataFormat.Json;
                            request.AddJsonBody(new
                            {
                                token       = resolved,
                                captcha_key = resCaptcha.Response
                            });
                            request.AddHeader("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0");
                            var response = await client.ExecutePostAsync(request);

                            Console.WriteLine($"Login: {response.Content}");
                            Console.ReadLine();
                            ///////////////////
                            didIt = true;
                            break;
                        }
                    }
                }
            }
            catch (WebException e)
            {
                Console.WriteLine($"Error: {e.Message}");
            }
        }