Hacken van Grindr-accounts met kopiëren en plakken

Seksualiteit, relaties en online daten zijn allemaal nogal persoonlijke zaken. Het zijn aspecten van ons leven die veel mensen ervoor kiezen om prive te houden of op zijn minst, delen alleen met mensen van onze keuze. Grindr is “The World’s Largest Social Networking App for Gay, Bi, Trans, and Queer People” wat het voor veel mensen bijzonder gevoelig maakt. Het is niet alleen gevoelig omdat het gebruik van de site iemands seksuele geaardheid impliceert, maar ook vanwege de soms ernstige gevolgen van het passen binnen de doelgroep van Grindr. In 2014 bleek bijvoorbeeld dat de Egyptische politie Grindr gebruikte om “homo’s in de val te lokken”, wat bijzonder verontrustend was in een land dat nog niet echt op de hoogte is van LGBT-gelijkheid. Hoe waardevol Grindr-gegevens zijn, bleek vorig jaar ook toen de Amerikaanse overheid oordeelde dat het Chinese eigendom van de dienst een nationaal veiligheidsrisico vormde. Kortom, Grindr-gegevens zijn zeer persoonlijk en onvermijdelijk zeer gevoelig om meerdere redenen.

Eerder deze week ontving ik een Twitter DM van beveiligingsonderzoeker Wassime BOUIMADAGHENE:

I contact you because i reported a serious security issue to one of the biggest dating applications for gays (Grindr) but the vendor keep ignoring me !I sent them all the technical details but no way. The vulnerability allow an attacker to hijack any account.

Hij wilde hulp bij het onthullen van wat volgens hem een ernstig beveiligingslek was en hij stuitte duidelijk op een muur van stenen. Ik vroeg om technische details, zodat ik de authenticiteit van zijn claim kon valideren en de info arriveerde naar behoren. Aan de oppervlakte zag het er slecht uit: volledige account takeover met een zeer triviale aanval. Maar ik wilde de aanval verifiëren zonder iemands privacy te schenden, dus vroeg ik Scott Helme om hulp:

Scott heeft in het verleden al veel met dit soort beveiligingsproblemen te maken gehad, en hij heeft me een paar jaar geleden ook geholpen met de onthulling van de Nissan Leaf en was graag bereid om te helpen. Het enige wat ik nodig had, was dat Scott een account aanmaakte en me het e-mailadres liet weten dat hij gebruikte, in dit geval [email protected].

De accountovername begon allemaal met de Grindr-pagina voor het opnieuw instellen van het wachtwoord:

Ik voerde het adres van Scott in, loste een en kreeg vervolgens het volgende antwoord:

Ik heb de ontwikkelingstools opengeknald omdat het reset-token in het antwoord de sleutel is. Ik heb het op het klembord gekopieerd en in de volgende URL geplakt:

Je ziet zowel het token als het e-mailadres van Scott in die URL. Het is voor iedereen eenvoudig om dit patroon vast te stellen door een eigen Grindr account aan te maken, vervolgens een wachtwoord reset uit te voeren en te kijken naar de inhoud van de e-mail die ze ontvangen. Toen ik die URL laadde, werd ik gevraagd om een nieuw wachtwoord in te stellen en de :

En dat was het – het wachtwoord was gewijzigd:

Dus ik logde in op het account, maar kreeg meteen het volgende scherm te zien:

Huh, dus je hebt de app nodig? Goed dan, laten we gewoon inloggen via de app:

En… Ik ben binnen!

Volledige account overname. Dat betekent toegang tot alles waartoe de oorspronkelijke Grindr-accounthouder toegang had, bijvoorbeeld hun profielfoto (die ik onmiddellijk heb veranderd in een geschiktere foto):

Omstreeks deze tijd begon Scott privéberichten te ontvangen, zowel een verzoek om elkaar persoonlijk te ontmoeten als een verzoek om foto’s te maken:

Het gesprek met Luke ging vrij snel bergafwaarts en ik kan het hier niet reproduceren, maar de gedachte dat die dialoog (en als hij ze had verstuurd, zijn foto’s) door onbekende derden kon worden ingezien, is uiterst verontrustend. Denk ook eens aan de hoeveelheid persoonlijke informatie die Grindr verzamelt en net als bij de berichten van Scott zouden alle ingevulde velden hier onmiddellijk zichtbaar zijn voor iedereen die toegang zou krijgen tot zijn account door simpelweg zijn e-mailadres te kennen:

Een paar jaar geleden haalde Grindr de krantenkoppen toen bleek dat het de HIV-status doorgaf aan derden, en gezien de gevoeligheid van deze gegevens was dat ook terecht. Dit, samen met veel van de andere velden hierboven, is wat het zo sensationeel maakt dat de gegevens zo triviaal toegankelijk waren voor iedereen die deze eenvoudige fout kon uitbuiten.

En wat betreft de website waarop ik niet kon inloggen zonder te worden teruggeleid naar de mobiele app? Nu ik in de app had ingelogd met Scott’s nieuwe wachtwoord, kon ik bij volgende pogingen gewoon zelf toestemming geven voor het inlogverzoek:

En dat is het – ik ben er op de website ook bij:

Dit is een van de meest elementaire accountovernametechnieken die ik ooit heb gezien. Ik begrijp niet waarom het reset-token – dat een geheime sleutel zou moeten zijn – wordt teruggestuurd in het antwoordgedeelte van een anoniem verzoek. Het gemak van misbruik is ongelofelijk laag en de impact is duidelijk groot, dus dit is duidelijk iets om serieus te nemen…

Except it wasn’t. De persoon die deze kwetsbaarheid doorgaf, deelde ook zijn chatgeschiedenis met Grindr support. Na wat heen en weer gepraat, gaf hij alle details die voldoende waren om de aanpak van de accountovername op 24 september gemakkelijk te verifiëren. De Grindr-supportmedewerker verklaarde dat hij “het naar onze ontwikkelaars had geëscaleerd” en markeerde het ticket onmiddellijk als “opgelost”. Mijn contactpersoon volgde de volgende dag en vroeg om een statusupdate en kreeg… krekels. De volgende dag probeerde hij ook contact op te nemen met de help / support e-mailadressen en na 5 dagen wachten en geen antwoord te krijgen, nam hij contact met mij op. Hij deelde ook een screenshot van zijn poging om Grindr te bereiken via Twitter DM die, net als de andere pogingen om de kwetsbaarheid te melden, in dovemansoren viel.

Dus probeerde ik zelf een beveiligingscontact bij Grindr te vinden:

Heeft iemand een beveiliging bij @Grindr waar ze me mee kunnen verbinden?

– Troy Hunt (@troyhunt) October 1, 2020

Ik ben me ervan bewust dat het sturen van zo’n tweet allerlei reacties uitlokt die er onvermijdelijk op volgden en impliceert dat er iets cyberaals mis is met Grindr. Ik tweet alleen in het openbaar als redelijke pogingen om privé contact te leggen mislukken en op basis van de vorige paragraaf waren die pogingen meer dan redelijk. Een vriend DM’te me op Twitter en stelde het volgende voor:

Niet zeker of die tweet van Grindr nodig was, gezien hun DM’s open zijn en ze vrij snel daarna contact met je opnamen

Daarom heb ik ze niet gedMM’t:

Die route is geprobeerd en mislukt en ik suggereer dat de enige reden waarom hun Twitter-account publiekelijk op me antwoordde, was dat mijn tweet veel interesse wekte.

Nadat mijn tweet de deur uitging. Ik had meerdere mensen die onmiddellijk contact met me opnamen en me contactinformatie gaven voor hun beveiligingsteam. Ik stuurde het oorspronkelijke rapport door en binnen ongeveer anderhalf uur na de tweet, was de kwetsbare bron offline. Kort daarna kwam het terug met een fix. In alle eerlijkheid naar Grindr, ondanks hun triaging van beveiligingsrapporten die werk nodig hebben, was hun reactie nadat ik erin geslaagd was om in contact te komen met de juiste mensen voorbeeldig. Hier is hoe ze reageerden toen ze benaderd werden door infosec-journo Zack Whittaker:

We zijn dankbaar voor de onderzoeker die een kwetsbaarheid heeft geïdentificeerd. Het gemelde probleem is verholpen. Gelukkig denken we dat we het probleem hebben aangepakt voordat het door kwaadwillenden kon worden misbruikt. Als onderdeel van ons streven om de veiligheid en beveiliging van onze service te verbeteren, werken we samen met een toonaangevend beveiligingsbedrijf om de mogelijkheid voor beveiligingsonderzoekers om problemen zoals deze te melden, te vereenvoudigen en te verbeteren. Bovendien zullen we binnenkort een nieuw bug bounty-programma aankondigen om onderzoekers extra stimulansen te bieden om ons te helpen onze service in de toekomst veilig te houden.

Al met al was dit een slechte bug met een goede afloop: Grindr heeft zich goed gedragen toen ik contact met ze opnam, ik geloof dat ze een aantal positieve veranderingen doorvoeren rond het afhandelen van beveiligingsmeldingen en, natuurlijk, de bug is opgelost. Oh – en Scott heeft een paar nieuwe vrienden gemaakt 😊

Beveiliging

Leave a Reply