Je tikt op "Doorgaan met Google", kiest je account, en het volgende dat je zou moeten zien is ToRun. Wat veel mensen in plaats daarvan zagen, was een pagina die hen vroeg hun e-mailadres te bevestigen — hetzelfde adres dat Google dertig seconden eerder namens hen had geverifieerd.
We hebben het gevonden door te tellen. Sinds de regel dat je een bevestigd adres nodig hebt om in te loggen van kracht werd, heeft meer dan een kwart van de via Google aangemaakte accounts zich nooit ingelogd: geen sessie, ooit, geen enkele keer. Ze maakten een account aan en stuiterden tegen een muur.
Waarom het gebeurde
Het framework dat we gebruiken bevestigt een adres alleen automatisch op één tak: de stroom waarbij iemand tijdens de registratie een verificatiecode invoert. Die tak staat bij ons uit, omdat een sociale registratie nergens is om een code in te typen. Dus elke Google- of Apple-voltooiing maakte een onbevestigd account aan, stuurde een bevestigingslink naar de mailbox die de provider net had gegarandeerd, en leidde door naar de bevestigingspagina zonder iemand in te loggen.
Niets faalde. Geen enkele fout werd gelogd. De pagina zag er zelfs uit als iets redelijks om aan iemand te tonen.
Er bestond een beveiliging precies voor deze situatie, weken eerder toegevoegd, en die werd geen enkele keer geactiveerd — omdat die op de inlogpagina staat, en beide Google-knoppen een heel andere weg volgen.
Bevestigd geboren
Een account aangemaakt met Google of Apple begint nu bevestigd, zolang het geregistreerde adres daadwerkelijk het adres is dat de provider heeft opgegeven. Als de provider expliciet zegt dat hij het adres niet heeft geverifieerd, wordt dat vertrouwen onthouden, en draait de oude stroom. Als bevestigen om welke reden dan ook mislukt, draait ook de oude stroom, en wordt de link verzonden.
De bevestigingsmail die het framework zou hebben verstuurd wordt beantwoord met stilte in plaats van verzonden, zodat niemand een e-mail krijgt die vraagt iets te bevestigen dat al bevestigd is.
Het adres zelf is nu alleen-lezen op de voltooiingspagina, met een regel in 29 talen die uitlegt dat de provider het heeft geverifieerd. En op de telefoon reset de overgang van registratie naar het verificatiescherm de stapel, zodat een terug-gebaar op het inlogscherm terechtkomt in plaats van op een half ingevuld formulier met gebruikersnaam en adres nog bewerkbaar.
Niemand hoeft gerepareerd te worden
Accounts die vastzitten achter de oude muur hebben geen migratie nodig. Hun volgende tik op "Doorgaan met Google" bevestigt ze — dat is waar sinds een eerdere correctie, en dat is het volledige herstelpad.
De controle die dit had moeten opvangen — degene die de inlogroutes leest en het gedrag van elk bevestigt — bleef vier weken groen terwijl dit kapot was, omdat elke haak die het bekijkt op een pagina staat die deze stroom nooit raakt. Die heeft nu twaalf nieuwe controles op de pagina's die het wel raakt.