od AppSecure

Tuto zprávu zveřejňuji se souhlasem společnosti Facebook v rámci zásad odpovědného zveřejňování. Tuto zranitelnost opravili.

Tento příspěvek pojednává o jednoduché zranitelnosti, kterou jsem objevil na Facebooku a kterou jsem mohl snadno a bez jakékoliv interakce s uživatelem využít k nabourání se do účtů jiných uživatelů na Facebooku.

Tím jsem získal plný přístup k účtu jiných uživatelů nastavením nového hesla. Mohl jsem si prohlížet zprávy, jejich kreditní/debetní karty uložené v platební sekci, osobní fotografie a další soukromé informace.

Facebook problém okamžitě uznal, opravil ho a odměnil mě odměnou 15 000 amerických dolarů na základě závažnosti a dopadu této zranitelnosti.

Jak hack fungoval

Kdykoli uživatel zapomene své heslo na Facebooku, má možnost heslo obnovit zadáním svého telefonního čísla a e-mailové adresy na https://www.facebook.com/login/identify?ctx=recover&lwv=110.

Facebook pak na toto telefonní číslo nebo e-mailovou adresu zašle šestimístný kód, který musí uživatel zadat, aby si mohl nastavit nové heslo.

Zkoušel jsem hrubou silou vynutit šestimístný kód na adrese www.facebook.com a byl jsem zablokován po 10-12 neplatných pokusech.

Poté jsem stejný problém hledal na stránkách beta.facebook.com a mbasic.beta.facebook.com. Zajímavé bylo, že omezení rychlosti chybělo u koncového bodu zapomenutého hesla.

Zkusil jsem převzít svůj vlastní účet (podle zásad Facebooku byste neměli poškozovat účty jiných uživatelů) a podařilo se mi nastavit nové heslo k mému účtu. Stejné heslo jsem pak mohl použít k přihlášení k vlastnímu hacknutému účtu.

Video s ukázkou konceptu hacknutí

Jak můžete vidět na videu, podařilo se mi nastavit nové heslo uživatele pomocí hrubého vynucení kódu, který byl zaslán na jeho e-mailovou adresu a telefonní číslo.

Zranitelný požadavek

POST /recover/as/code/ HTTP/1.1

Host: beta.facebook.com

lsd=AVoywo13&n=XXXXX

Brute forcing „n“ mi úspěšně umožnil nastavit nové heslo pro libovolného uživatele Facebooku.

Časová osa odhalení

22. února 2016 : Zpráva odeslána týmu Facebooku.

23. února 2016 : Ověřena oprava z mé strany.

2. března 2016 : Společnost Facebook udělila odměnu ve výši 15 000 dolarů

.