Ik heb een manier bedacht om een ​​van de 2 miljard accounts van Facebook te hacken, en ze hebben me er een premie van $ 15.000 voor betaald

Ik publiceer dit met toestemming van Facebook volgens het beleid voor verantwoordelijke openbaarmaking. Ze hebben deze kwetsbaarheid verholpen.

Dit bericht gaat over een eenvoudige kwetsbaarheid die ik op Facebook ontdekte en die ik had kunnen gebruiken om de Facebook-accounts van andere gebruikers gemakkelijk en zonder enige gebruikersinteractie te hacken.

Dit gaf me volledige toegang tot het account van andere gebruikers door een nieuw wachtwoord in te stellen. Ik kon berichten bekijken, hun creditcards / betaalpassen die waren opgeslagen onder hun betalingsgedeelte, persoonlijke foto’s en andere privégegevens.

Facebook erkende het probleem onmiddellijk, loste het op en beloonde me met een premie van $ 15.000 op basis van de ernst en impact van deze kwetsbaarheid.

Hoe de hack werkte

Wanneer een gebruiker zijn wachtwoord op Facebook vergeet, heeft hij de mogelijkheid om het wachtwoord opnieuw in te stellen door zijn telefoonnummer en e-mailadres in te voeren op https://www.facebook.com/login/identify?ctx=recover&lwv=110 .

Facebook stuurt vervolgens een 6-cijferige code naar dit telefoonnummer of e-mailadres die de gebruiker moet invoeren om een ​​nieuw wachtwoord in te stellen.

Ik probeerde de 6-cijferige code op www.facebook.com bruut te forceren en werd geblokkeerd na 10–12 ongeldige pogingen.

Toen zocht ik hetzelfde probleem op beta.facebook.com en mbasic.beta.facebook.com. Interessant genoeg ontbrak de snelheidsbeperking op het eindpunt van het wachtwoord vergeten.

Ik heb geprobeerd mijn eigen account over te nemen (volgens het beleid van Facebook mag je de accounts van andere gebruikers geen schade toebrengen) en slaagde ik erin een nieuw wachtwoord voor mijn account in te stellen. Ik zou dan hetzelfde wachtwoord kunnen gebruiken om in te loggen op mijn eigen gehackte account.

Een proof of concept-video van de hack

Zoals je in de video kunt zien, kon ik een nieuw wachtwoord voor de gebruiker instellen door de code die naar zijn e-mailadres en telefoonnummer was gestuurd, bruut te forceren.

Kwetsbaar verzoek

POST / Recover / as / code / HTTP / 1.1

Host: beta.facebook.com

lsd=AVoywo13&n=XXXXX

Door het brute forceren van de “n” kon ik met succes een nieuw wachtwoord instellen voor elke Facebook-gebruiker.

Bekendmakingstijdlijn

22 februari 2016: rapport verzonden naar Facebook-team.

23 februari 2016: Ik heb de oplossing van mijn kant geverifieerd.

2 maart 2016: beloning van $ 15.000 toegekend door Facebook