de AppSecure

Public acest articol cu permisiunea Facebook în cadrul politicii de dezvăluire responsabilă. Ei au rezolvat această vulnerabilitate.

Această postare este despre o vulnerabilitate simplă pe care am descoperit-o pe Facebook și pe care aș fi putut să o folosesc pentru a intra în conturile de Facebook ale altor utilizatori cu ușurință și fără nicio interacțiune cu utilizatorul.

Aceasta mi-a oferit acces complet la contul altor utilizatori prin setarea unei parole noi. Am putut să văd mesajele, cărțile lor de credit/debit stocate în secțiunea de plată, fotografiile personale și alte informații private.

Facebook a recunoscut problema cu promptitudine, a remediat-o și m-a recompensat cu o recompensă de 15.000 de dolari americani pe baza gravității și impactului acestei vulnerabilități.

Cum a funcționat hackingul

Când un utilizator își uită parola pe Facebook, acesta are opțiunea de a reseta parola introducând numărul de telefon și adresa de e-mail pe https://www.facebook.com/login/identify?ctx=recover&lwv=110.

Facebook va trimite apoi un cod din 6 cifre la acest număr de telefon sau adresă de e-mail pe care utilizatorul trebuie să îl introducă pentru a seta o nouă parolă.

Am încercat să forțez brutal codul din 6 cifre pe www.facebook.com și am fost blocat după 10-12 încercări invalide.

Apoi am căutat aceeași problemă pe beta.facebook.com și mbasic.beta.facebook.com. Interesant este că limitarea ratei lipsea din endpoint-ul Forgot Password.

Am încercat să-mi preiau propriul cont (conform politicii Facebook, nu trebuie să faceți niciun rău conturilor altor utilizatori) și am reușit să setez o nouă parolă pentru contul meu. Am putut apoi să folosesc aceeași parolă pentru a mă conecta la propriul meu cont piratat.

Un video de dovadă a conceptului de piratare

Așa cum puteți vedea în video, am reușit să setez o nouă parolă pentru utilizator prin forțarea brută a codului care a fost trimis la adresa de e-mail și la numărul de telefon.

Solicitare vulnerabilă

POST /recover/as/code/ HTTP/1.1

Host: beta.facebook.com

lsd=AVoywo13&n=XXXXX

Forțarea brută a codului „n” mi-a permis cu succes să setez o nouă parolă pentru orice utilizator Facebook.

Disclosure Timeline

Feb 22nd, 2016 : Raport trimis către echipa Facebook.

Feb 23, 2016 : Am verificat remedierea din partea mea.

March 2nd, 2016 : Recompensă de 15.000 de dolari acordată de Facebook

.