Dzięki luce w działającej od dziesięciu lat wersji menedżera haseł RoboForm i odrobinie szczęścia badaczom udało się odkryć hasło do portfela kryptowalutowego zawierającego fortunę.

Dwa lata temu, kiedy „Michael”, właściciel kryptowaluty, skontaktował się z Joe Grandem, aby pomóc mu odzyskać dostęp do bitcoinów o wartości około 2 milionów dolarów, które przechowywał w zaszyfrowanym formacie na swoim komputerze, Grand go odrzucił.

Michael, który mieszka w Europie i został poproszony o zachowanie anonimowości, przechowywał kryptowalutę w portfelu cyfrowym chronionym hasłem. Wygenerował hasło za pomocą menedżera haseł RoboForm i zapisał je w pliku zaszyfrowanym za pomocą narzędzia o nazwie TrueCrypt. W pewnym momencie plik ten został uszkodzony, a Michael stracił dostęp do 20-znakowego hasła, które wygenerował w celu zabezpieczenia swoich 43,6 BTC (o łącznej wartości około 4000 euro, czyli 5300 dolarów w 2013 roku). Michael użył menedżera haseł RoboForm do wygenerowania hasła, ale nie zapisał go w swoim menedżerze. Martwił się, że ktoś włamie się do jego komputera i zdobędzie hasło.

„W tamtym czasie miałem prawdziwą paranoję, jeśli chodzi o bezpieczeństwo” – śmieje się.

Grand to słynny haker sprzętowy, który w 2022 roku pomógł innemu właścicielowi portfela kryptowalutowego odzyskać dostęp do kryptowaluty o wartości 2 milionów dolarów, którą myślał, że utracił na zawsze, po tym, jak zapomniał kodu PIN do swojego portfela Trezor. Od tego czasu dziesiątki osób skontaktowało się z Grandem, aby pomóc im odzyskać skarb. Ale Grand, znany pod pseudonimem hakerskim „Kingpin”, większość z nich odrzuca z różnych powodów.

Grand jest inżynierem elektrykiem, który zaczął hakować sprzęt komputerowy w wieku 10 lat, a w 2008 roku był współgospodarzem programu Prototype This na kanale Discovery Channel. Obecnie konsultuje się z firmami budującymi złożone systemy cyfrowe, aby pomóc im zrozumieć, w jaki sposób hakerzy sprzętowi tacy jak on mogą zniszczyć ich systemy. W 2022 r. złamał portfel Trezor przy użyciu skomplikowanych technik sprzętowych, które zmusiły portfel typu USB do ujawnienia hasła.

Ale Michael przechowywał swoją kryptowalutę w portfelu opartym na oprogramowaniu, co oznaczało, że tym razem żadne umiejętności sprzętowe Granda nie były istotne. Rozważał brutalne wymuszenie hasła Michaela i napisanie skryptu automatycznie odgadującego miliony możliwych haseł w celu znalezienia tego właściwego, ale stwierdził, że nie jest to wykonalne. Przez chwilę pomyślał, że menedżer haseł RoboForm, którego Michael użył do wygenerowania swojego hasła, może mieć wadę w sposobie generowania haseł, co umożliwiłoby mu łatwiejsze odgadnięcie hasła. Grand wątpił jednak w istnienie takiej wady.

Michael skontaktował się z wieloma osobami specjalizującymi się w łamaniu kryptografii; wszyscy mówili mu, że „nie ma szans” na odzyskanie pieniędzy. Jednak w czerwcu ubiegłego roku ponownie zwrócił się do Granda, mając nadzieję, że uda mu się go przekonać do pomocy, i tym razem Grand zgodził się spróbować, współpracując z przyjacielem o imieniu Bruno z Niemiec, który również hakuje portfele cyfrowe.

Grand i Bruno spędzili miesiące na inżynierii wstecznej wersji programu RoboForm, której według nich Michael używał w 2013 roku, i odkryli, że generator liczb pseudolosowych używany do generowania haseł w tej wersji – i kolejnych wersjach do 2015 roku – rzeczywiście miał poważną wadę to sprawiło, że generator liczb losowych nie był tak losowy. Program RoboForm w niemądry sposób powiązał wygenerowane losowe hasła z datą i godziną na komputerze użytkownika — określił datę i godzinę komputera, a następnie wygenerował przewidywalne hasła. Gdybyś znał datę i godzinę oraz inne parametry, mógłbyś obliczyć dowolne hasło, które zostałoby wygenerowane w przeszłości o określonej dacie i godzinie.

Gdyby Michał znał dzień lub ogólne ramy czasowe w 2013 roku, kiedy je wygenerował, a także parametry, których użył do wygenerowania hasła (na przykład liczbę znaków w haśle, w tym małe i duże litery, cyfry, i znaki specjalne), zawęziłoby to liczbę możliwych do odgadnięcia haseł do rozsądnej liczby. Następnie mogliby przejąć funkcję RoboForm odpowiedzialną za sprawdzanie daty i godziny na komputerze i przenieść ją w czasie, wierząc, że bieżąca data to dzień z roku 2013, kiedy Michael wygenerował swoje hasło. Następnie RoboForm wypluwał te same hasła, które wygenerował w 2013 roku.

Był jeden problem: Michael nie pamiętał, kiedy utworzył hasło.

Według logu swojego portfela programowego Michael po raz pierwszy przeniósł bitcoiny do swojego portfela 14 kwietnia 2013 r. Nie pamiętał jednak, czy wygenerował hasło tego samego dnia, czy jakiś czas wcześniej, czy później. Zatem patrząc na parametry innych haseł wygenerowanych za pomocą RoboForm, Grand i Bruno skonfigurowali RoboForm do generowania 20-znakowych haseł zawierających duże i małe litery, cyfry oraz osiem znaków specjalnych od 1 marca do 20 kwietnia 2013 r.


Nie udało się wygenerować prawidłowego hasła. Zatem Grand i Bruno wydłużyli okres z 20 kwietnia do 1 czerwca 2013 r., stosując te same parametry. Nadal nie mam szczęścia.

Michael twierdzi, że ciągle do niego wracali i pytali, czy jest pewien parametrów, których użył. Trzymał się swojej pierwszej odpowiedzi.

„Naprawdę mnie zirytowali, bo kto wie, co zrobiłem 10 lat temu” – wspomina. Znalazł inne hasła, które wygenerował za pomocą RoboForm w 2013 r., a dwa z nich nie zawierały znaków specjalnych, więc Grand i Bruno dostosowali się. W listopadzie ubiegłego roku skontaktowali się z Michaelem, aby umówić się na osobiste spotkanie. „Pomyślałam: «O mój Boże, znowu zapytają mnie o ustawienia».

Zamiast tego ujawnili, że w końcu znaleźli prawidłowe hasło – bez znaków specjalnych. Został wygenerowany 15 maja 2013 o godzinie 16:10:40 czasu GMT.

„Ostatecznie mieliśmy szczęście, że nasze parametry i zakres czasowy były odpowiednie. Gdyby którekolwiek z tych stwierdzeń było błędne,… w dalszym ciągu zgadywalibyśmy w ciemno” – mówi Grand w e-mailu do WIRED. „Wstępne obliczenie wszystkich możliwych haseł zajęłoby znacznie więcej czasu”.

Grand i Bruno nakręcili film, w którym dokładniej objaśniają szczegóły techniczne.

RoboForm, stworzony przez amerykańską firmę Siber Systems, był jednym z pierwszych menedżerów haseł na rynku i według raportu firmy ma obecnie ponad 6 milionów użytkowników na całym świecie. Wydawało się, że w 2015 roku Siber naprawił menedżera haseł RoboForm. Pobieżnym spojrzeniem Grand i Bruno nie mogli znaleźć żadnych oznak wskazujących na to, że generator liczb pseudolosowych w wersji z 2015 r. wykorzystywał czas komputera, co sprawia, że ​​myślą, że usunęli go, aby naprawić usterkę, choć Grand twierdzi, że musieliby to sprawdzić dokładniej, żeby mieć pewność.

Siber Systems potwierdził WIRED, że rozwiązał problem w wersji 7.9.14 RoboForm wydanej 10 czerwca 2015 r., ale rzecznik nie odpowiedział na pytania dotyczące sposobu, w jaki to zrobił. W dzienniku zmian na stronie internetowej firmy wspomina się jedynie, że programiści Sibera wprowadzili zmiany, aby „zwiększyć losowość generowanych haseł”, ale nie podano, jak to zrobili. Rzecznik Siber Simon Davis mówi, że „RoboForm 7 został wycofany w 2017 roku”.

Grand twierdzi, że nie wiedząc, w jaki sposób Siber rozwiązał problem, napastnicy mogą nadal być w stanie zregenerować hasła wygenerowane przez wersje RoboForm wydane przed poprawką w 2015 roku. Nie jest też pewien, czy obecne wersje zawierają problem.

„Nadal nie jestem pewien, czy zaufałbym temu, nie wiedząc, jak faktycznie ulepszyli generowanie haseł w nowszych wersjach” – mówi. „Nie jestem pewien, czy RoboForm wiedział, jak poważna jest ta konkretna słabość.”

Klienci mogą również nadal używać haseł wygenerowanych we wczesnych wersjach programu przed łatką. Nie wygląda na to, aby Siber kiedykolwiek powiadomił klientów, wypuszczając poprawioną wersję 7.9.14 w 2015 r., że powinni wygenerować nowe hasła do krytycznych kont lub danych. Firma nie odpowiedziała na pytanie w tej sprawie.

Gdyby Siber nie poinformował klientów, oznaczałoby to, że każdy, kto tak jak Michael korzystał z RoboForm do generowania haseł przed 2015 rokiem i nadal ich używa, może mieć podatne na ataki hasła, które hakerzy mogą odzyskać.

„Wiemy, że większość ludzi nie zmienia haseł, chyba że zostaną o to poproszeni” – mówi Grand. „Z 935 haseł w moim menedżerze haseł (nie w RoboForm) 220 pochodzi z 2015 r. i wcześniejszych, a większość z nich dotyczy witryn, z których nadal korzystam”.

W zależności od tego, co firma zrobiła, aby rozwiązać problem w 2015 r., nowsze hasła również mogą być podatne na ataki.

W listopadzie ubiegłego roku Grand i Bruno odjęli procent bitcoinów z konta Michaela za wykonaną pracę, a następnie przekazali mu hasło umożliwiające dostęp do reszty. Bitcoin był wówczas wart 38 000 dolarów za monetę. Michael poczekał, aż cena monety wzrośnie do 62 000 dolarów i sprzedał część. Ma teraz 30 BTC o wartości 3 milionów dolarów i czeka, aż wartość wzrośnie do 100 000 dolarów za monetę.

Michael mówi, że miał szczęście, że zgubił hasło wiele lat temu, ponieważ w przeciwnym razie sprzedałby bitcoina wartego 40 000 dolarów za monetę i straciłby większą fortunę.

„To, że zgubiłem hasło, było dobrą rzeczą finansowo”.