Hlavní navigace

Děravý Facebook: jak se útočníci mohli kvůli chybě „přihlásit“ do až 90 milionů účtů

Autor: Depositphotos
Daniel Dočekal

Tohle je obrovský průšvih. Útočníci měli získat přístup k 50 milionům účtů a Facebook řeší ohrožení až 90 milionů. Co dalšího se asi ještě podaří objevit?

Doba čtení: 6 minut

Facebook oznámil odhalení bezpečnostní chyby, která zneužívala možnost podívat se na vlastní profil očima jiného uživatele. V Security Update firma uvedla, že se problém týkal 50 milionů účtů a že jej objevila 25. září. Následně chybu „opravila“ (vypnutím problematické funkčnosti), ale není jasné, zda a jak hodně byla opravdu zneužívána.

Útočník (spíše útočníci) totiž touto cestou mohl získat „access token“, přístupový kód umožňující se dostat přímo na účet uživatele, bez toho, že by se musel přihlásit. Což by mělo znamenat, že bylo možné dostat se i na účty, které jsou chráněny dvoufaktorovým ověřením.

Výše zmíněným 50 milionů lidem Facebook zrušil platnost přístupových kódů (budou se tedy muset znovu přihlásit) a totéž udělal u dalších 40 milionů účtů, které byly použity ve výše zmíněné funkci zobrazení vlastního profil očima jiného člověka. Přihlásit se musí všude, kde byli přihlášení – na webu, v aplikacích Facebooku, ale také ve všech dalších aplikacích využívajících Facebook pro přihlášení.

Kauza opět ukazuje, že Facebook není schopen uživatelům zajistit soukromí. Vývojáři chybu do zmíněné funkce zanesli v červenci 2017, když přidávali funkci pro nahrávání videa s přáním k narozeninám. Pozitivní je, že v Security Update Facebook (teoreticky) poskytuje maximum informací (jako vždy musíte pochybovat) a dělá to poměrně rychle po incidentu. Několikrát ale zmiňuje, že vlastně vůbec netuší, co se skutečně dělo.

Facebook vyrobil zásadní bezpečnostní nedostatek tak, že v kódu nechal generování „access tokenu“, který měl práva samotné aplikace Facebooku. Útočníkům pak stačilo v rámci výše zmíněné funkčnosti vyvolat právě nahrávání narozeninového videa. Formulář pro jeho nahrávání přitom neměl být v žádném případě součástí zmíněné funkčnosti, nebo alespoň měl generovat přístupový kód pro vás, nikoliv za uživatele, jehož očima si vlastní profil prohlížíte.

Ještě nepříjemnější je, že útočník mohl takto získaný přístupový kód využít k tomu, aby získal další kódy pro další uživatele. Jde o vcelku jasné zásadní opomenutí na straně Facebooku a také o učebnicový příklad toho, že systém soukromí na této sociální síti je závislý čistě na tom, jestli někdo z programátorů udělá, či neudělá chybu. Dost to připomíná i dávný případ, kdy byly kvůli chybě zpřístupněna „soukromá“ videa.

V celém případu zůstává řada otazníků. Narozeninové video by se například mělo dát poslat jen v případě, že uživatel má zanedlouho narozeniny. Je možné, že právě tohle „omezení“ zabránilo tomu, aby se chyba dala využít u všech účtů na Facebooku. 

Špatné časy pro Facebook: Taiwanský white hat hacker Chang Chi-yuang oznámil, že v neděli bude na Facebooku živě vysílat, jak hackne účet Marka Zuckerberga a smaže ho. Později plánované vysílání zrušil s tím, že chybu Facebooku nahlásil a po potvrzení a zaplacení odměny zveřejní detaily. Zda jde o výše popsanou chybu, či něco dalšího, tedy zatím není známé.

Facebook navíc čeká řada žalob, tak jak je to v USA zvykem. První už je na cestě, viz Facebook already hit with a lawsuit tied to the latest data breach. Do případu se zcela určitě vloží i EU, s ohledem na GDPR je tohle přesně učebnicový příklad, kde můžou přijít sankce.

Zůstává nejasno

Kolem bezpečnostní chyby i tak zůstává řada nejasností. Získání přístupu k účtu může znamenat, že útočníci mohli chybu zneužít pro řadu věcí. Od vkládání příspěvků přes ovlivnění toho, jaké stránky mají uživatelé olajkované, až po vkládání komentářů. Mohli se vydávat za někoho jiného, což se dá použít při řadě způsobů, jak okrást či poškodit jeho přátele. Mohli mít také přístup k soukromým zprávám, všem fotografiím a kompletnímu seznamu přátel. A to i na účtech „chráněných“ dvoufaktorem.

Teoreticky by neměla být možná změna hesla u účtu a změna e-mailu, protože v takovém případě by se Facebook měl ptát na heslo, než něco takového povolí. A je jisté, že k aktuálním heslům se útočníci dostat nemohli.

Podstatně problematičtější je to, že přístup k cizímu účtu v podobě „access tokenu“ znamená, že útočník se mohl dostat do dalších účtů na jiných službách, kde uživatel používá přihlášení přes Facebook. Je to jeden z velmi dobrých důvodů, proč přestat tuto zásadně rizikovou funkčnost používat.

Vztahuje se to i na Instagram – lidé, kteří účet na Instagramu založili a používají přes Facebook (místo klasického jména a hesla), mají svůj účet v ohrožení a útočníci k němu mohli přistupovat. Odstranění přístupových kódů znamená, že pokud si posíláte například fotky z Instagramu na Facebook, budete muset propojení zrušit a znovu aktivovat. 

Problém můžete mít i v případě, že spravujete facebookové stránky či skupiny. A pokud platíte na Facebooku reklamu, mohl útočník zneužít i přístup k vytváření a spuštění kampaní.

Jasno není ani v tom, zda je 90 milionů postižených účtů konečné číslo. Facebook ho odvozuje z toho, vůči kolika účtům bylo „View as“ použito. Jde ale o období od července 2017 a je otázka, zda jsou k dispozici všechny informace, ale také zda chyba neměla ještě nějaké další způsoby zneužití.

Neschopný Facebook

Facebook vše prezentuje jako „sofistikovaný útok“ využívají „tři rozdílné věci“. Ve skutečnosti o nic sofistikovaného nejde. Útočník prostě zobrazil vlastní profil z pohledu někoho jiného, vyvolal si místo, kde lze nahrávat přání k narozeninám a v HTML dostal přístupový kód. V magazínu Slate to dost trefně komentují titulkem „Facebook nedokáže vysvětlit, proč by mu ještě uživatelé měli důvěřovat“ (Facebook Can’t Say Why Users Should Still Trust It).

Chybu měl objevit Facebook sám kvůli tomu, že byla masově využívána. V How 50 Million Facebook Users Were Hacked se vcelku oprávněně diví, že Facebook něco takového odhalil tak pozdě. Uvážíte-li totiž řadu mechanismů hlídajících podezřelé přihlašování a přístupy, mělo se na to přijít dříve. Zmiňují i to, že došlo k přístupu na účet Marka Zuckerberga, ale jde nejspíš jenom o domněnku na základně výše zmíněného oznámení taiwanského hackera. K detekci masivního využívání chyby mimochodem došlo 16. září, důvody Facebook odhalil 25. září a náprava přišla 27. září.

MIF18 tip v článku ROSA

Od pátku 29. září začal Facebook postižené uživatele odhlašovat. Měl by jim zobrazit informaci o důvodu tohoto kroku, ale v řadě případů se mu to podle dostupných zpráv nedaří. Někteří uživatel jsou odhlášeni bez uvedení důvodu a někteří se nemohou znovu přihlásit.

Co můžete udělat

Pokud se obáváte, že někdo mohl tímto způsobem získat přístup k vašemu účtu, můžete sami všechny přístupové kódy („access token“) zrušit. Bude to ale poměrně pracné:

  • Musíte se odhlásit všude, kde jste k Facebooku přihlášeni, a pak se znovu přihlásit.
  • Zkontrolujte si, že už nikde nejste přihlášeni, a pokračujte v odebrání práv přístupu pro všechny aplikace. Těm později budete muset znovu případně povolit přístup. Což znamená, že se vám může rozbít něco, o čem jste ani netušili, že to má něco společného s Facebookem. Tohle děláte hlavně proto, že není jasné, jestli Facebook zneplatnil i tyto tokeny a zda se jich to také netýká. 
  • Prohlédněte si záznamy o aktivitách na účtu, zda se tam neobjevilo něco, co jste neudělali.
  • Projděte si i záznamy o tom, odkud pocházela přihlášení/přístupy k vašemu účtu
  • Zkontrolujte si Instagram, Uber, Spotify, Tinder a prostě všechno, kde jste se přihlašovali pomocí Facebooku. Následně pro všechny tyto aplikace (a služby na webu) zrušte přihlašování přes Facebook a pořiďte si tam klasické přihlášení, ideálně doplněné dvoufaktorem.
Našli jste v článku chybu?