Pytania zabezpieczające to hasło, którego nie wybierałeś

Opublikowano autor David Carrero

Kiedy formularz pyta cię o nazwisko panieńskie matki, nie prosi cię o tajemnicę. Prosi cię o wpis z aktu stanu cywilnego.

I na tym w zasadzie kończy się cała krytyka; reszta to szczegóły. Pytanie zabezpieczające jest hasłem z trzema wadami, których zwykłe hasło nie ma: nie ty je wybrałeś, odpowiedź da się zgadnąć, bo mnóstwo ludzi odpowiada to samo, a często jest ona zapisana w miejscu, nad którym nie masz kontroli. W zamian dostaje ogromny przywilej: może zastąpić twoje hasło. To tylne drzwi do twojego konta — i są słabsze niż te frontowe.

To nie jest przeczucie branży. To jest to, co zmierzył Google.

Badanie, którego nikt nie czyta przed zaprojektowaniem formularza

W 2015 roku pięcioro badaczy — Joseph Bonneau, Elie Bursztein, Ilan Caron, Rob Jackson i Mike Williamson — przedstawiło na konferencji WWW we Florencji pracę, której tytuł mówi już prawie wszystko: Secrets, Lies, and Account Recovery. To nie było laboratorium z trzydziestoma ochotnikami: przeanalizowali setki milionów tajnych odpowiedzi i miliony prawdziwych prób odzyskania konta.

Wniosek ma dwie połowy. Prawie zawsze opowiada się tylko jedną.

Połowa pierwsza: da się je zgadnąć

Model zagrożenia w tej pracy to nie wścibski szwagier, tylko ktoś, kto atakuje konta masowo i musi trafić jedynie w ułamku przypadków. Pod taką lupą liczby zmieniają znaczenie.

Przy jednej jedynej próbie atakujący trafiłby 19,7% odpowiedzi anglojęzycznych użytkowników na pytanie „Twoje ulubione jedzenie?”. Jednej. A odpowiedź, gdyby ktoś miał wątpliwości, to zwykle dokładnie ta, o której właśnie pomyślałeś. Przy dziesięciu próbach trafiłby 39% odpowiedzi użytkowników koreańskich na „Miasto urodzenia?”. A jedno podejście wystarcza, by trafić 3,8% odpowiedzi użytkowników hiszpańskojęzycznych na pytanie, które Google serwował im w tłumaczeniu jako „Pierwsze nazwisko ojca?”.

3,8% brzmi jak niewiele, dopóki nie przypomnisz sobie, że atakujący nie atakuje twojego konta — atakuje milion kont. I żeby zbudować taką listę, nie trzeba być Google. Autorzy to sprawdzili: z zaledwie tysiąca odpowiedzi kupionych w serwisie crowdsourcingowym złożyli rozkłady w 75–80% tak skuteczne jak ten prawdziwy, przy do stu próbach. Eksperyment kosztował ich 100 dolarów i mniej niż dzień pracy.

Najgorsze jest to, że pytania zaprojektowane tak, by odpowiedź była niepowtarzalna, też nie wychodzą z tego obronną ręką. Numer w programie lojalnościowym linii lotniczej z definicji powinien być jedyny w swoim rodzaju; w praktyce jedna próba trafia 4,2% wśród anglojęzycznych. Powód jest przepiękny i jeszcze do niego wrócimy: ludzie kłamią, i kłamią stadnie.

Połowa druga: zapomina się je

Tutaj argumentacja rozsypuje się całkowicie, bo jedynym powodem, dla którego nadal używamy pytań zabezpieczających, jest przekonanie, że są niezawodne. Przesłanka brzmiała rozsądnie: zapamiętać rodzinne miasto powinno być łatwiej niż xK4$mz. Otóż nie. 40% amerykańskich, anglojęzycznych użytkowników nie było w stanie przypomnieć sobie własnej odpowiedzi, gdy jej potrzebowało. Nie zapomnieli jej teoretycznie: próbowali wejść na swoje konto i nie weszli.

I wtedy pojawia się idealne odwrócenie, to, które powinno było uśmiercić tę technologię dekadę temu. Im bezpieczniejsze pytanie, tym gorzej się je pamięta. W tej samej populacji „Drugie imię twojego ojca?” — pytanie słabe — miało 76% trafień. „Twój pierwszy numer telefonu?”, znacznie trudniejszy do odgadnięcia, spadał do 55%. A kandydatki teoretycznie najbezpieczniejsze idą na dno: „Numer twojej karty bibliotecznej?” 22%, „Numer w programie dla stałych pasażerów?” 9%.

Czas dobija resztę. Dla „Twoje ulubione jedzenie?” trafność wynosiła 74% po miesiącu, 53% po trzech miesiącach i ledwie 47% po roku. A odzyskiwanie kont nie kumuluje się na początku: autorzy stwierdzili, że użytkownicy nie odzyskują konta wcześniej częściej niż później, więc większość dociera do pytania wtedy, gdy wspomnienie już wyparowało.

Wniosek autorów nie zostawia wiele miejsca na reinterpretację: wydaje się niemal niemożliwe znaleźć tajne pytania, które byłyby jednocześnie bezpieczne i łatwe do zapamiętania.

Kłamstwo cię nie ratuje, tylko zatrzaskuje drzwi

Rozsądna reakcja, kiedy już rozumiesz problem, to skłamać: pytają o rodzinne miasto — odpowiadasz „Reykjavik” i po sprawie.

To też zmierzono, ankietą wśród Amerykanów. Wśród tych, którzy przyznali się do podawania fałszywych odpowiedzi, 37% zrobiło to, żeby utrudnić życie atakującemu, 15% — żeby łatwiej było zapamiętać (przeczytaj to dwa razy), a 31,9% ze względu na prywatność, bo nie mieli ochoty oddawać firmie własnego życiorysu.

Problem w tym, że utrudnianie odpowiedzi to gest przewidywalny. Stąd te 4,2% numerów w programie lojalnościowym: kłamstwa wielu ludzi są do siebie znacznie bardziej podobne niż ich prawdy. A rachunek płaci się w drugiej połowie. Amerykańscy użytkownicy, którzy wypełnili „Twój pierwszy numer telefonu?” czymś siedmiocyfrowym — odpowiedzią prawdopodobną — pamiętali swoją odpowiedź w 55% przypadków. Ci, którzy wpisali sześć znaków, czyli ci, którzy coś zmyślili, trafiali w 18%.

Kłamać i nie zapisać kłamstwa to nie strategia bezpieczeństwa. To wyrzucenie klucza.

Po polsku to pytanie w ogóle nie trzyma się kupy

Wróćmy do nazwiska panieńskiego matki. W Polsce ta odpowiedź nie jest sekretem, tylko rubryką: figuruje w twoim akcie urodzenia i w aktach stanu cywilnego, a urzędy, banki i formularze dopisują ją do twoich danych od dziesięcioleci. Dorzućmy fleksję — Kowalski i Kowalska to to samo nazwisko — i zgadywanie robi się jeszcze łatwiejsze.

To nie jest lokalna ciekawostka. Sama praca cytuje badanie Griffitha i Jakobssona, którzy wywiedli to nazwisko dla co najmniej 30% mieszkańców Teksasu z publicznych rejestrów urodzeń i małżeństw, a także Rabkina, który stwierdził, że 16% pytań używanych w praktyce miało odpowiedzi rutynowo wypisane w publicznych profilach w mediach społecznościowych.

Dana, która widnieje w rejestrze i wyświetla się na twoim profilu, nie jest wspólnym sekretem. To informacja publiczna z polem na hasło z przodu.

Co zrobić z formularzem, który cię zmusza

Czasem nie ma ucieczki: bank wymaga trzech pytań i dalej się nie da. W takim razie przestań traktować je jak pytania i potraktuj jak to, czym są.

  • Odpowiadaj hasłem, nie życiorysem. Na „Miasto urodzenia?” można odpowiedzieć losowym ciągiem z generatora albo frazą, którą wcześniej przepuściłeś przez sprawdzanie. To jedyna odpowiedź, której nie ma w żadnym rejestrze.
  • Zapisz ją w menedżerze, w tej samej karcie serwisu. To nie jest opcjonalne: to dokładnie ta różnica między 55% a 18% zapamiętania. Kłamstwo działa tylko wtedy, gdy je zachowasz.
  • Jeśli serwis pozwala wybrać inną metodę odzyskiwania, wybierz ją. W danych Google SMS trafiał w 81% przypadków, a e-mail w 75%, wobec 61% dla tajnych pytań wśród amerykańskich, anglojęzycznych użytkowników — i zaledwie 44% wśród Francuzów.

Google zachował się zgodnie z własnymi danymi leżącymi na stole: zdegradował tajne pytania do ostateczności, zawsze w towarzystwie innych sygnałów. Praca zaleca, by nie używać ich samodzielnie.

Jedenaście lat później twój ubezpieczyciel wciąż pyta cię o imię pierwszego zwierzaka. Odpowiedz mu szesnastoma losowymi znakami. Zasłużył.


Źródła: J. Bonneau, E. Bursztein, I. Caron, R. Jackson i M. Williamson, „Secrets, Lies, and Account Recovery: Lessons from the Use of Personal Knowledge Questions at Google”, WWW 2015, Florencja · V. Griffith i M. Jakobsson, „Messin’ with Texas: Deriving Mother’s Maiden Names Using Public Records”, ACNS 2005, oraz A. Rabkin o pytaniach zabezpieczających w praktyce — obaj cytowani w powyższej pracy.

← Wróć do bloga