FCM zneužívá za podivnými oznámeními z Microsoft Teams, Hangouts

Nedávno odhalená zranitelnost ve Firebase Cloud Messaging vedla k podivným oznámením z aplikací, jako jsou Microsoft Teams a Hangouts.

Zdá se, že nevydržíme ani den, aniž by se někde v nějakém softwaru nebo službě objevila další významná bezpečnostní chyba. Zdá se, že tento týden je čas, aby Firebase Cloud Messaging narazil na snadno zneužitelnou zranitelnost.

Firebase Cloud Messaging je rámec od společnosti Google, který usnadňuje doručování oznámení prostřednictvím aplikací na téměř jakékoli platformě. S jednoduchou konfigurací aplikace i serveru můžete svým uživatelům během několika minut posílat obecná nebo cílená oznámení push. Většina aplikací pro Android, které doručují oznámení push, k tomu pravděpodobně používá službu Firebase Cloud Messaging (nebo starší službu Google Cloud Messaging). To zahrnuje aplikace od jednoduchých amatérských vývojářů po aplikace od obřích korporací, jako je Microsoft a samozřejmě Google.

The Exploit

A tam přichází na řadu tento exploit. Pokud používáte aplikace jako

Microsoft Teams nebo Google Hangouts, možná jste si nedávno všimli, že přicházejí náhodná oznámení, jako jsou ta na následujícím snímku obrazovky. Pocházejí od lidí, kteří využívají nesprávné konfigurace služby Firebase Cloud Messaging.

Snímek obrazovky z /u/ToTooThenThan na Redditu.

Nebudu se zde příliš rozepisovat, ale tento problém ve skutečnosti není vinou Googlu. Aby bylo možné bezpečně zasílat oznámení push, Google vyžaduje, aby server, který je ve skutečnosti odesílá, také poslal klíč k ověření, že jsou pravá. Tento klíč by měl být pouze ve vaší konzoli Firebase a na vašem serveru.

Ale dotčené aplikace, z jakéhokoli důvodu, mají také vestavěný klíč. Nepoužívá se, ale je tam, v prostém textu, aby si jej mohl kdokoli prohlédnout a použít. Poněkud ironicky se zdá, že Google Hangouts a Hudba Google Play jsou vůči tomuto zneužití zranitelné, stejně jako Microsoft Teams. Takže je to trochu chyba Google, ale také ne ve skutečnosti.

A dá se to použít k dost hanebným účelům. I když se zdá, že většina „implementací“ této chyby zabezpečení byla použita pouze k zasílání podivných textů lidem, je možné, že útočník provede phishingový podvod. Text oznámení může být něco jako: „Vaše relace vypršela. Klepnutím sem se znovu přihlaste,“ s adresou URL, která se spustí, když na ni klepnete. Tato adresa URL by mohla skončit jako web stylizovaný tak, aby vypadal například jako přihlašovací stránka společnosti Microsoft. Ale místo přihlášení do Microsoftu dáváte někomu své přihlašovací údaje.

Co by měli uživatelé dělat?

Nic. Jako uživatel toho nemůžete moc udělat, abyste tato oznámení zastavili. Můžete blokovat kanály, na které přicházejí (nebo blokovat oznámení z aplikace úplně), ale nemůžete odfiltrovat nelegitimní oznámení, protože pokud Firebase ví, jsou legitimní.

Co však můžete udělat, je být opatrní. Pokud dostanete oznámení, které se zdá, že požaduje vaše přihlašovací údaje – nebo jakékoli jiné osobní údaje – neklepejte na něj. Místo toho otevřete aplikaci přímo. Pokud bylo oznámení skutečné, aplikace to ukáže. V opačném případě se pravděpodobně jednalo o pokus o phishing. Pokud klepnete na oznámení, okamžitě zavřete všechny webové stránky, které se otevře.

A konečně, pokud jste své heslo již někam vložili prostřednictvím upozornění, okamžitě ho změňte, zrušte autorizaci všech přihlášených zařízení (pokud je to možné) a povolte dvoufaktorové ověřování, pokud tak neučiníte již.

Co by měli vývojáři dělat?

Pokud jste do svých aplikací implementovali Firebase Cloud Messaging, zkontrolujte konfigurační soubory, abyste se ujistili, že tam nejsou klíče serveru. Pokud ano, okamžitě je zrušte, vytvořte nové a překonfigurujte svůj server.

Opět se nejedná o příliš technický článek, takže budete chtít navštívit níže uvedené odkazy, kde najdete další informace o zmírňování.

Odpovědi společností Google a Microsoft

Řekl to mluvčí Googlu The Daily Swig že problém se „konkrétně týkal vývojářů, kteří do svého kódu zahrnuli klíče API pro služby, které by neměly být zahrnuty, které by pak mohly být zneužity,“ spíše než samotná služba Firebase Cloud Messaging kompromitován. „V případech, kdy je Google schopen identifikovat, že je použit klíč serveru, snažíme se upozornit vývojáře, aby mohli svou aplikaci opravit,“ dodal mluvčí.

Microsoft vydal na Twitteru následující prohlášení:

Další čtení

Zde je několik článků, které jdou mnohem podrobněji o tom, co tento exploit je, jak funguje a jak se můžete ujistit, že nejste zranitelní. Pokud jste vývojář aplikací nebo vás jen zajímá, jak to funguje, podívejte se.

  • Převzetí služby Firebase Cloud Messaging: Malý průzkum, který vedl k odměnám ve výši 30 000 $+
  • Chyba zabezpečení zasílání zpráv Google Firebase umožnila útočníkům posílat uživatelům aplikace oznámení push