FCM utnytter bak merkelige varsler fra Microsoft Teams, Hangouts

En nylig avslørt sårbarhet i Firebase Cloud Messaging har ført til merkelige varsler fra apper som Microsoft Teams og Hangouts.

Det ser ut til at vi ikke kan gå en dag uten at en annen betydelig sikkerhetsfeil dukker opp et sted i programvare eller tjeneste. Denne uken ser det ut til å være på tide for Firebase Cloud Messaging å møte en lett-utnyttbar sårbarhet.

Firebase Cloud Messaging er et rammeverk fra Google for å gjøre det enklere å levere varsler gjennom apper på nesten alle plattformer. Med litt enkel konfigurasjon av både appen din og en server, kan du sende generelle eller målrettede push-varsler til brukerne dine i løpet av minutter. De fleste Android-apper som leverer push-varsler, bruker sannsynligvis Firebase Cloud Messaging (eller den gamle Google Cloud Messaging) for å gjøre det. Det inkluderer apper fra enkeltstående hobbyutviklere til apper fra gigantiske selskaper som Microsoft og, selvfølgelig, Google.

Utnyttelsen

Og det er her denne utnyttelsen kommer inn. Hvis du bruker apper som

Microsoft Teams eller Google Hangouts, du har kanskje nylig lagt merke til at tilfeldige varsler kommer inn, som de i følgende skjermbilde. Disse er fra personer som utnytter feil konfigurasjoner av Firebase Cloud Messaging.

Skjermbilde fra /u/ToTooThenThan på Reddit.

Jeg skal ikke gå for mye i detalj her, men dette problemet er egentlig ikke Googles feil. For å kunne sende push-varsler på en sikker måte, krever Google at serveren som faktisk sender dem, også sender en nøkkel for å bekrefte at de er ekte. Denne nøkkelen skal bare være i Firebase-konsollen og på serveren din.

Men de berørte appene, uansett årsak, har også nøkkelen innebygd. Det er ikke brukt, men det er der, i klartekst, for alle å se og bruke. Litt ironisk nok ser Google Hangouts og Google Play Musikk ut til å være sårbare for denne utnyttelsen, så vel som Microsoft Teams. Så det er på en måte Googles feil, men heller ikke egentlig.

Og den kan brukes til ganske uhyggelige formål. Selv om det ser ut til at de fleste "implementeringer" av denne sårbarheten kun har blitt brukt til å sende merkelig tekst til folk, er det mulig for en angriper å utføre en phishing-svindel. Teksten i varselet kan være noe sånt som «Økten din er utløpt. Trykk her for å logge på igjen," med en URL som startes når du trykker på den. Den nettadressen kan ende opp med å bli et nettsted stilt for å se ut som for eksempel Microsofts påloggingsside. Men i stedet for å logge på Microsoft, gir du noen påloggingen din.

Hva bør brukerne gjøre?

Ingenting. Det er ikke mye du som bruker kan gjøre for å stoppe disse varslene. Du kan blokkere kanalene de kommer inn på (eller blokkere varsler fra appen helt), men du kan ikke filtrere bort de illegitime varslene, siden de, så vidt Firebase vet, er lovlig.

Det du kan gjøre er imidlertid å være forsiktig. Hvis du får et varsel som ser ut til å be om påloggingsinformasjonen din – eller annen personlig informasjon for den saks skyld – ikke trykk på den. Åpne i stedet appen direkte. Hvis varselet var ekte, vil appen indikere det. Ellers var det sannsynligvis et phishing-forsøk. Hvis du trykker på et varsel, lukk umiddelbart ethvert nettsted som åpnes.

Og til slutt, hvis du allerede har lagt inn passordet ditt et sted gjennom et varsel, endre det umiddelbart, fjern autorisering av alle påloggede enheter (hvis aktuelt), og aktiver tofaktorautentisering hvis du ikke har allerede.

Hva bør utviklere gjøre?

Hvis du har implementert Firebase Cloud Messaging i appene dine, sjekk konfigurasjonsfilene for å sikre at servernøklene ikke er der. Hvis de er det, ugyldiggjøre dem umiddelbart, opprette nye og konfigurere serveren på nytt.

Igjen, dette er ikke en veldig teknisk artikkel, så du bør besøke koblingene nedenfor for mer informasjon om reduksjon.

Google og Microsoft-svar

Det fortalte en talsperson for Google The Daily Swig at problemet var "spesifikt relatert til utviklere inkludert API-nøkler i koden deres for tjenester som ikke burde inkluderes, som deretter kan utnyttes," i stedet for at Firebase Cloud Messaging-tjenesten selv er det kompromittert. "I tilfeller der Google er i stand til å identifisere at en servernøkkel brukes, prøver vi å varsle utviklerne slik at de kan fikse appen deres," la talspersonen til.

Microsoft ga følgende uttalelse på Twitter:

Videre lesning

Her er et par artikler som går mye mer i detalj om hva denne utnyttelsen er, hvordan den fungerer og hvordan du kan sørge for at du ikke er sårbar. Hvis du er en apputvikler, eller bare er interessert i å sjekke ut hvordan dette fungerer, ta en titt.

  • Firebase Cloud Messaging Service Takeover: En liten undersøkelse som førte til 30k$+ i dusører
  • Svakheten i Google Firebase-meldinger tillot angripere å sende push-varsler til appbrukere