A Firebase Cloud Messaging nemrégiben nyilvánosságra hozott sebezhetősége furcsa értesítésekhez vezetett az olyan alkalmazásoktól, mint a Microsoft Teams és a Hangouts.
Úgy tűnik, nem telik el egy nap anélkül, hogy ne bukkanjon fel egy újabb jelentős biztonsági hiba valahol valamelyik szoftverben vagy szolgáltatásban. Úgy tűnik, ez a hét elérkezett a Firebase Cloud Messaging számára, hogy szembeszálljon egy könnyen kihasználható sérülékenységgel.
Firebase felhőalapú üzenetküldés a Google keretrendszere, amely megkönnyíti az értesítések kézbesítését alkalmazásokon keresztül szinte bármilyen platformon. Mind az alkalmazás, mind a szerver néhány egyszerű beállításával perceken belül általános vagy célzott push értesítéseket küldhet a felhasználóknak. A legtöbb leküldéses értesítést küldő Android-alkalmazás valószínűleg a Firebase Cloud Messaging (vagy az örökölt Google Cloud Messaging) szolgáltatást használja erre. Ebbe beletartoznak az egyéni hobbifejlesztőktől származó alkalmazások az olyan óriásvállalatok alkalmazásaiig, mint a Microsoft és természetesen a Google.
Az Exploit
És itt jön képbe ez az exploit. Ha olyan alkalmazásokat használ, mint pl Microsoft Teams vagy Google Hangouts, lehet, hogy a közelmúltban véletlenszerű értesítéseket vett észre, mint például a következő képernyőképen. Ezek olyan emberektől származnak, akik kihasználják a Firebase Cloud Messaging helytelen konfigurációit.
Nem megyek bele túlságosan részletekbe, de ez a probléma nem igazán a Google hibája. A leküldéses értesítések biztonságos küldése érdekében a Google megköveteli, hogy az azokat ténylegesen küldő szerver küldjön egy kulcsot is az eredetiség ellenőrzésére. Ennek a kulcsnak csak a Firebase-konzolon és a szerveren kell lennie.
De az érintett alkalmazásokban, bármilyen okból, a kulcs is be van építve. Nem használt, de ott van, egyszerű szöveggel, hogy bárki lássa és használja. Kissé ironikus módon a Google Hangouts és a Google Play Zene, valamint a Microsoft Teams sebezhetőnek tűnik ezzel a kizsákmányolással szemben. Tehát ez egyfajta Google hibája, de nem is igazán.
És elég aljas célokra használható. Bár úgy tűnik, a biztonsági rés legtöbb "megvalósítását" csak furcsa szövegek küldésére használták az embereknek, előfordulhat, hogy egy támadó adathalász csalást hajt végre. Az értesítés szövege a következő lehet: „A munkamenet lejárt. Kérjük, koppintson ide az újbóli bejelentkezéshez" egy olyan URL-címmel, amely akkor indul el, amikor megérinti. Ez az URL a végén egy olyan webhely lesz, amely úgy néz ki, mint mondjuk a Microsoft bejelentkezési oldala. De ahelyett, hogy bejelentkezne a Microsoftba, megadja valakinek a bejelentkezését.
Mit tegyenek a felhasználók?
Semmi. Felhasználóként nem sokat tehet az értesítések leállítása érdekében. Letilthatja azokat a csatornákat, amelyeken bejönnek (vagy teljesen letilthatja az alkalmazás értesítéseit), de nem szűrheti ki az illegitim értesítéseket, mivel a Firebase tudomása szerint ezek vannak jogos.
Amit azonban tehet, az az, hogy óvatos. Ha olyan értesítést kap, amely úgy tűnik, hogy a bejelentkezési adatait – vagy bármilyen más személyes adatot – kéri, ne koppintson rá. Ehelyett nyissa meg közvetlenül az alkalmazást. Ha az értesítés valós volt, az alkalmazás ezt jelzi. Ellenkező esetben valószínűleg adathalászati kísérletről volt szó. Ha megérint egy értesítést, azonnal zárjon be minden megnyíló webhelyet.
És végül, ha már megadta a jelszavát valahol egy értesítésben, azonnal változtassa meg, törölje az összes bejelentkezett eszköz jogosultságát (ha van), és engedélyezze a kéttényezős hitelesítést, ha még nem tette meg már.
Mit tegyenek a fejlesztők?
Ha implementálta a Firebase Cloud Messaging szolgáltatást az alkalmazásaiban, ellenőrizze a konfigurációs fájlokat, és győződjön meg arról, hogy a szerverkulcsok nincsenek benne. Ha igen, azonnal érvénytelenítse őket, hozzon létre újakat, és konfigurálja újra a szervert.
Ismétlem, ez nem túl technikai cikk, ezért érdemes felkeresni az alábbi linkeket, ha további információra van szüksége a mérsékléssel kapcsolatban.
A Google és a Microsoft válaszai
A Google szóvivője elmondta A napi korty hogy a probléma „kifejezetten azokhoz a fejlesztőkhöz kapcsolódik, amelyek API-kulcsokat tartalmaztak a kódjukban olyan szolgáltatásokhoz, amelyeket nem kellene bele kell foglalni, ami aztán kihasználható lenne”, nem pedig maga a Firebase Cloud Messaging szolgáltatás veszélyeztetett. „Azokban az esetekben, amikor a Google azonosítani tudja, hogy szerverkulcsot használnak, megpróbáljuk figyelmeztetni a fejlesztőket, hogy javíthassák az alkalmazásukat” – tette hozzá a szóvivő.
A Microsoft a következő nyilatkozatot tette közzé a Twitteren:
További irodalom
Íme néhány cikk, amelyek sokkal részletesebben foglalkoznak azzal, hogy mi ez a kizsákmányolás, hogyan működik, és hogyan biztosíthatja, hogy ne legyen sebezhető. Ha Ön alkalmazásfejlesztő, vagy csak szeretné megnézni, hogyan működik ez, vessen egy pillantást.
- Firebase Cloud Messaging Service átvétele: egy kis kutatás, amely 30 000 dollár feletti jutalomhoz vezetett
- A Google Firebase üzenetkezelési sebezhetősége lehetővé tette a támadók számára, hogy push értesítéseket küldjenek az alkalmazás felhasználóinak