Minulý týden jsme psali o chybě, která umožňovala útočníkům zpětně měnit obsah zpráv v komunikátoru Messenger. Facebook zareagoval poměrně rychle a chybu opravil. To se však s největší pravděpodobností nestane v následujícím případě, protože se jedná o funkci, byť nebezpečnou. Umožňuje totiž jednoduše zjišťovat odkazy na webové stránky, které si uživatelé sdílí přes Facebook – ať už na zdi, v soukromé skupině nebo dokonce přes Messenger.
Inti De Ceukelaire je vývojář, který na svém blogu popsal způsob, jak lze „odposlechnout“ sdílené odkazy. Využil k tomu základní schopnost vývojářského API, která umožňuje zavolat libovolný objekt na Facebooku jeho unikátním číslem. Ať už se jedná o fotku, profil, status nebo odkaz, který projde chatem ve Facebooku, dostane svoje ID a je uložen do databáze. Pokud k němu chce vývojář přistoupit, zavolá toto ID a v případě, že k tomu má oprávnění, obdrží volaný objekt.
ID je v tomto případě identifikátor jakéhokoliv objektu na Facebooku. Pokud jde o odkaz, vývojář si může zavolat také URL. Nezáleží přitom, zda byl sdílen veřejně na zdi nebo prostřednictvím Messengeru (zdroj: Medium)
Odkazy sdílené přes Messenger by přitom do databází nemusely být ukládány – jde přece o běžný text. Jenže v rámci chatu se nezobrazí jen odkaz, ale také náhled webu s titulkem a popiskem. A právě z toho důvodu je uložen v databázi Facebooku.
V tomto případě si tedy Inti De Ceukelaire napsal jednoduchý skript, který kontroloval jednotlivá ID s dotazem, zda se jedná o URL. A pokud tomu tak bylo, mohl na rozdíl od fotek nebo statusů získat i celou adresu. Ačkoliv nezjistí jméno uživatele, který odkaz odeslal, může se jednat o odkaz na citlivý obsah – ať už soukromé fotky nebo sdílený dokument v Google Docs.
Stačilo několik sekund a skript nasbíral desítky sdílených adres (zdroj: Medium)
Tento postup také reportoval jako kritickou chybu, nicméně z Facebooku mu přišla odpověď, že se jedná o běžné chování vývojářského API.
Mohlo by vás zajímat: