En nylig afsløret sårbarhed i Firebase Cloud Messaging har ført til mærkelige meddelelser fra apps som Microsoft Teams og Hangouts.
Det ser ud til, at vi ikke kan gå en dag uden, at der dukker endnu en væsentlig sikkerhedsfejl op et eller andet sted i en eller anden software eller tjeneste. Denne uge ser ud til at være tid til, at Firebase Cloud Messaging støder op mod en let-udnyttelig sårbarhed.
Firebase Cloud Messaging er en ramme fra Google, der hjælper med at gøre levering af notifikationer gennem apps på næsten enhver platform nemmere. Med en simpel konfiguration af både din app og en server, kan du sende generelle eller målrettede push-meddelelser ud til dine brugere inden for få minutter. De fleste Android-apps, der leverer push-meddelelser, bruger sandsynligvis Firebase Cloud Messaging (eller den gamle Google Cloud Messaging) til at gøre det. Det inkluderer apps fra enkelte hobbyudviklere til apps fra gigantiske virksomheder som Microsoft og selvfølgelig Google.
Udnyttelsen
Og det er her denne udnyttelse kommer ind. Hvis du bruger apps som f.eks
Microsoft Teams eller Google Hangouts, du har måske for nylig bemærket tilfældige meddelelser, der kommer ind, som dem i det følgende skærmbillede. Disse er fra personer, der drager fordel af ukorrekte konfigurationer af Firebase Cloud Messaging.Jeg vil ikke komme for meget i detaljer her, men dette problem er egentlig ikke Googles skyld. For sikkert at kunne sende push-meddelelser kræver Google, at den server, der faktisk sender dem, også sender en nøgle for at bekræfte, at de er ægte. Denne nøgle formodes kun at være i din Firebase-konsol og på din server.
Men de berørte apps, uanset årsagen, har også nøglen indbygget i sig. Det er ikke brugt, men det er der, i klartekst, for alle at se og bruge. Lidt ironisk nok ser Google Hangouts og Google Play Musik ud til at være sårbare over for denne udnyttelse, såvel som Microsoft Teams. Så det er sådan set Googles skyld, men heller ikke rigtig.
Og det kan bruges til ret uhyggelige formål. Selvom det ser ud til, at de fleste "implementeringer" af denne sårbarhed kun er blevet brugt til at sende mærkelig tekst til folk, er det muligt for en angriber at udføre et phishing-svindel. Teksten i meddelelsen kunne være noget i stil med, "Din session er udløbet. Tryk venligst her for at logge ind igen," med en URL, der startes, når du trykker på den. Denne URL kan ende med at blive et websted, der er stilet til at ligne f.eks. Microsofts login-side. Men i stedet for at logge ind på Microsoft, giver du nogen dit login.
Hvad skal brugerne gøre?
Ikke noget. Der er ikke meget, du som bruger kan gøre for at stoppe disse meddelelser. Du kan blokere de kanaler, de kommer ind på (eller blokere meddelelser fra appen helt), men du kan ikke filtrere de illegitime meddelelser fra, da de, så vidt Firebase ved, er legitim.
Hvad du dog kan gøre, er at være forsigtig. Hvis du får en meddelelse, der ser ud til at bede om dine loginoplysninger – eller andre personlige oplysninger for den sags skyld – skal du ikke trykke på den. Åbn i stedet appen direkte. Hvis meddelelsen var ægte, vil appen indikere det. Ellers var det sandsynligvis et phishing-forsøg. Hvis du trykker på en meddelelse, skal du straks lukke enhver hjemmeside, der åbner.
Og endelig, hvis du allerede har lagt din adgangskode ind et sted gennem en meddelelse, skal du ændre den med det samme, fjern godkendelse af alle loggede enheder (hvis relevant), og aktiver to-faktor-godkendelse, hvis du ikke har allerede.
Hvad skal udviklere gøre?
Hvis du har implementeret Firebase Cloud Messaging i dine apps, skal du tjekke konfigurationsfilerne for at sikre, at dine servernøgler ikke er derinde. Hvis de er det, skal du straks gøre dem ugyldige, oprette nye og omkonfigurere din server.
Igen, dette er ikke en særlig teknisk artikel, så du vil gerne besøge nedenstående links for at få flere oplysninger om afhjælpning.
Google og Microsoft-svar
Det fortalte en talsmand for Google The Daily Swig at problemet var "specifikt relateret til udviklere, der inkluderede API-nøgler i deres kode for tjenester, der ikke burde inkluderes, som så kunne udnyttes,” i stedet for selve Firebase Cloud Messaging-tjenesten kompromitteret. "I tilfælde, hvor Google er i stand til at identificere, at en servernøgle bruges, forsøger vi at advare udviklerne, så de kan rette deres app," tilføjede talsmanden.
Microsoft udsendte følgende erklæring på Twitter:
Yderligere læsning
Her er et par artikler, der går meget mere i detaljer om, hvad denne udnyttelse er, hvordan den virker, og hvordan du kan sikre dig, at du ikke er sårbar. Hvis du er en app-udvikler, eller du bare er interesseret i at tjekke ud, hvordan dette fungerer, så tag et kig.
- Firebase Cloud Messaging Service Overtagelse: En lille undersøgelse, der førte til 30k$+ i dusører
- Sårbarheden i Google Firebase-meddelelser gjorde det muligt for angribere at sende push-beskeder til appbrugere