Как хакеры помогли владельцу криптокошелька получить свои $3 000 000
Уязвимость в менеджере паролей и немного удачи позволили хакерам угадать пароль десятилетней давности. Wired рассказал историю незадачливого крипто-инвестора.
Уязвимость в менеджере паролей и немного удачи позволили хакерам угадать пароль десятилетней давности. Wired рассказал историю незадачливого крипто-инвестора.
В 2022 году «Майкл» (так попросил себя называть герой истории) обратился к известному хакеру Джо Гранду с отчаянной просьбой. Он просил помочь восстановить доступ к криптокошельку с биткоинами на сумму около $3 миллионов. Проблема заключалась в том, что он не помнил пароль. Майкл сгенерировал пароль в 2013 году с помощью менеджера паролей RoboForm и сохранил его в файле, зашифрованной с помощью инструмента TrueCrypt.
В какой-то момент этот файл был поврежден, и Майкл потерял доступ к 20-значному паролю, который он сгенерировал для защиты своих 43,6 BTC: в 2013 году они стоили около $5300. Пользователь не сохранил пароль в самом менеджере, опасаясь, что его кто-то взломает. Теперь Майкл признается, что в то время был настоящим параноиком.
Джо Гранд — известный хакер, известный под ником Kingpin. Он уже не раз помогал незадачливым пользователям восстановить доступ к криптокошелькам. Например, в 2022 году он помог другому владельцу, который забыл PIN-код своего кошелька Trezor. Однако Гранд нечасто берется за дело и по разным причинам отклоняет большинство просьб. Он отказался помогать и Майклу.
Сейчас хакер консультирует компании, которые создают сложные системы безопасности, чтобы помочь им понять, как хакеры могут подорвать их защиту. Для взлома кошельков он использует сложные аппаратные методы, но в случае Майкла они были бы бесполезны. Пароль можно было бы просто угадать, но тогда пришлось бы генерировать миллионы возможных паролей — и Гранд решил, что это неосуществимая затея.
Майкл связался с другими специалистами по криптографии, но все они сказали, что нет никаких шансов вернуть его деньги. В отчаянии он вернулся к Гранду в надежде убедить его помочь. На этот раз хакер согласился попробовать, заодно пригласив поработать над задачей своего друга Бруно, который тоже взламывает криптокошельки.
Хакеры потратили несколько месяцев на реверс-инжиниринг менеджера паролей RoboForm. Они обнаружили, что генератор паролей имел существенный недостаток, который делал пароли не такими случайными. Программа привязывала генерируемые пароли к дате и времени на компьютере пользователя. Если узнать дату, время и другие параметры, которые были при создании пароля, теоретически можно вычислить любой пароль, сгенерированный в прошлом.
Если Майкл знает тот самый день в 2013 году, когда он создал пароль, какие параметры использовал (количество символов, строчные и прописные буквы, цифры, специальные символы), это значительно сузит количество возможных вариантов пароля. Затем следует взломать функцию RoboForm, отвечающую за проверку даты и времени на компьютере, и заставить программу вернуться в 2013 год. Тогда менеджер выдаст нужный пароль.
Проблема была в том, что Майкл не помнил, когда именно он создал пароль. Согласно журналу его криптокошелька, владелец перевел первые биткойны 14 апреля 2013 года. Но Майкл не мог вспомнить, сгенерировал ли он пароль в тот же день, сделал это до или после. Гранд и Бруно настроили RoboForm для генерации 20-значных паролей с 1 марта по 20 апреля. У них ничего не вышло. Тогда они продлили период до 1 июня — и снова не повезло.
Майкл рассказывает, что они постоянно возвращались к нему и спрашивали, уверен ли он в этих параметрах. Он признается, что хакеры начали его раздражать, потому что Майкл не помнил, что делал десять лет назад. Для успокоения он нашел другие пароли, которые генерировал с помощью RoboForm, и заметил, что в двух из них нет специальных символов. В ноябре прошлого года Гранд и Бруно написали Майклу, что нужно встретиться лично. «О Боже, они снова спросят у меня настройки», — вспоминает герой.
Но вместо докучливых вопросов хакеры заявили, что наконец нашли правильный пароль — без специальных символов. Он был создан 15 мая 2013 года в 16:10:40 по Гринвичу. Гранд признается, что им просто повезло, так как параметры и временной диапазон оказались правильными. «Если бы что-то из этого было не так, мы бы продолжали строить предположения и делать снимки в темноте», — сказал он. Хакеры опубликовали видео, в котором рассказали технические детали поиска пароля.
Компания-создатель менеджера Siber Systems исправила проблему в версии RoboForm 7.9.14, которую выпустила 10 июня 2015 года. По мнению Гранда, злоумышленники при должном рвении смогут восстановить пароли, выпущенные до исправления программы в 2015 году. Он также не уверен, стоит ли доверять текущим версиям менеджера — разработчики так и не объяснили, как исправили уязвимость.
Судя по всему, Siber никогда не уведомляла клиентов о том, что им следует создать новые пароли для своих учетных записей. «Мы знаем, что большинство людей не меняют пароли, если их об этом не попросят. Из 935 паролей в моем менеджере паролей (не RoboForm) 220 относятся к 2015 году и ранее, и большинство из них предназначены для сайтов, которыми я до сих пор пользуюсь» — рассказал хакер.
После встречи с Майклом Гранд и Бруно забрали процент биткоинов с его счета за проделанную работу, а затем передали ему пароль от криптокошелька. В тот момент биткоин стоил $38 тысяч. Майкл подождал, когда цена вырастет до $62 тысяч, и продал часть накоплений. Теперь у него есть 30 биткоинов, и он ждет, когда стоимость вырастет до $100 тысяч. Он шутит, что благодарен себе за потерю пароля, поскольку упустил бы большое состояние: «То, что я потерял пароль, было хорошо с финансовой точки зрения».
Релоцировались? Теперь вы можете комментировать без верификации аккаунта.
так и НЕ объяснили.