Недавно один из наших пользователей оставил комментарий на нашем сайте о том, что его жесткий диск поврежден, и в результате он больше не может получить доступ к своим кошелькам. Но, к счастью, у него было несколько копий файла wallet.dat. Поэтому мы посоветовали ему установить кошелек последней версии на другом ПК и импортировать оригинальный wallet.dat новому клиенту кошелька. Пользователь наконец получил доступ к своим активам.
Если вы находитесь в подобной ситуации, и если есть резервная копия вашего кошелька, но вы не знаете, как заменить этот файл и восстановить свой основной кошелек, то это руководство для Вас.
В этом руководстве для начинающих мы объясним, как восстановить файл wallet.dat безопасно.
Но перед этим давайте рассмотрим, как сделать резервную копию основного кошелька и какие меры необходимо предпринять перед резервным копированием.
Копирование кошелька
Аппаратный сбой, сбой программного обеспечения, повреждение данных, синий экран смерти, украденное устройство или что-то еще – вот частые проблемы, с которыми сталкиваются многие. Но как только Вы безопасно сохранили резервный файл вашего кошелька, Вы можете получить доступ к своим монетам даже после любого сбоя.
Резервное копирование кошелька — самая важная мера, которую вы должны учитывать, чтобы сохранить свои активы в безопасности. Существует два способа резервного копирования Вашего кошелька с базой биткойнов (или других криптовалют).
- Wallet.dat
- Приватные ключи.
Для первого вам нужно просто скопировать файл wallet.dat и поместить его в безопасное место. Для второго вам нужно использовать окно консоли кошелька для экспорта приватных ключей.
Если Вы экспортируете секретные ключи, помните, что каждый адрес кошелька имеет уникальный приватный ключ. Поэтому обязательно экспортируйте ключи для каждого адреса, на котором у вас есть средства. Храните эту информацию о секретном ключе на USB-накопителе или записывайте ее в безопасном месте, где никто не может получить к ней доступ.
Мы знаем, что получить приватный ключ для каждого адреса и управлять им довольно сложно. Кроме того, если одна буква или цифра вашего приватного ключа теряется, то нет никакой надежды на восстановление. По этой причине мы также рекомендуем вам сделать резервную копию вашего файла wallet.dat. Для лучшей безопасности рекомендуются оба варианта.
Wallet.dat
Когда вы устанавливаете основной кошелек и открываете его в первый раз, файл wallet.dat также создается автоматически. Расположение файла wallet.dat зависит от операционной системы. Если вы не изменили местоположение блокчейна, тогда по умолчанию Ваш wallet.dat можно найти в следующем месте (например кошелек Биткоина):
Windows: C:\Users\YourUserName\Appdata\Roaming\Bitcoin Mac OS X: ~/Library/Application Support/Bitcoin/ Linux: ~/.bitcoin/
Там находится не только файл Биткоина, но и wallet.dat любой криптовалюты помещается по умолчанию в эти папки. Но если вы выбрали настраиваемую папку и не знаете, куда сохранен файл, тогда откройте свой кошелек, перейдите к Help >> Debug Window и в общей информации вы найдете каталог данных (папку, где находится файл wallet.dat).
Это местоположение, где вы найдете файл wallet.dat, blockchain и некоторые другие файлы.
Клиент основного кошелька хранит всю информацию секретного ключа в файле wallet.dat, и этот файл похож на главный приватный ключ. Это то место, которое содержит все ваши адреса, их личные ключи, данные транзакций и другую информацию.
Помните, что если у вас нет доступа к wallet.dat или приватным ключам, невозможно восстановить кошелек, и у вас не будет доступа к вашим монетам. Ваши криптовалюты (Биткойны, Эфир или любые другие, в зависимости от кошелька) навсегда исчезли, и никто не сможет вам помочь.
Для резервного копирования wallet.dat перейдите в меню файла кошелька и сделайте резервный кошелек или скопируйте файл wallet.dat.
Но просто резервного копирования файла wallet.dat недостаточно. Ниже приведены некоторые рекомендации, которые необходимо выполнить перед резервным копированием.
Как открыть wallet dat в Bitcoin Core
Чтобы открыть wallet.dat, перейдите в пункт меню кошелька «Помощь» — «Окно отладки»:
На вкладке «Информация» в окне отладки будет показан путь к каталогу с данными биткоина:
В этом каталоге находится файл wallet.dat
Wallet.dat — рекомендации
Чтобы избежать потенциальной пропажи актива, есть несколько рекомендаций, которым вы должны следовать:
- Перед резервным копированием wallet.dat необходимо убедиться, что файл зашифрован. Если кто-либо получит доступ к незашифрованному файлу wallet.dat, у них также будет доступ к вашим монетам. Поэтому зашифруйте свой кошелек надежным паролем и запомните этот пароль или запишите его в безопасном месте (например, на бумажный носитель).
- После шифрования скопируйте файл wallet.dat и сохраните его в нескольких местах, особенно за пределами вашего компьютера. Поскольку Вы зашифровали файл кошелька, его можно хранить в Dropbox, Google Диске, на USB-накопителе или частном облачном хранилище.
- Рекомендуется часто делать резервную копию файла wallet.dat. Таким образом, вы можете убедиться, что файл резервной копии содержит все ваши кошельки и изменения адресов.
- Наконец, не делитесь своими личными ключами или файлами резервных копий ни с кем, даже если этот файл зашифрован.
Отлично! Теперь, когда вы научились делать резервную копию своего кошелька, вы можете увидеть, как восстановить резервную копию кошелька.
Примечание. Это учебное пособие по резервному копированию и восстановлению кошелька не только для ядра Bitcoin, оно также применимо ко всем другим кошелькам с криптовалютным ядром. Также это руководство предназначено для Windows, но процедура одинакова для Linux и для Mac. Файл wallet.dat Вы можете перемещать по разным компьютерам или операционной системе.
Как крадут деньги, которых нет. Или кое-что новенькое о криптовалютах
Привет, Хабр! Безусловно, ты знаешь о криптовалютах очень много, но сегодня мы принесли тебе кое-что новенькое: исследование вредоноса, созданного для кражи кошельков 80 криптовалют, включая биткойн вместе со всеми реквизитами доступа к ним.
Обнаружили мы его в ходе программы непрерывного мониторинга безопасности сети Интернет и тут же разобрали на запчасти несколько семплов вредоноса. Таких комбайнов по автоматизированному уводу криптокошельков у владельцев пока мало, но будет больше, мы уверены.
Ниже мы расскажем о том, как вредонос работает, и как не оказаться в группе риска. И конечно ещё раз просуммируем информацию о самих криптомонетах и их родственниках.
Кстати, финансовые регуляторы считают биткойн и всех его друзей валютными суррогатами, и мы ни в коем случае не пропагандируем их использование, а наоборот, призываем пользоваться фиатными деньгами как надёжным и стабильным платёжным инструментом. (Тут мог бы быть смайл)
А что за криптовалюты такие?
Криптовалюты в привычном нам виде появились в 2009-м году, когда некто Сатоши Накамото после 2 лет разработки запустил децентрализованную сеть обмена платёжными данными и опубликовал клиент для работы с валютой «Биткойн».
Стоит отметить, что и личность Сатоши до сих пор не является стопроцентно подтверждённой, и идея криптовалюты принадлежит вовсе не ему. Впервые подобные идеи были высказаны в 1998 году в тематических рассылках энтузиастов криптографии, а уже в 1999-м писатель Нил Стивенсон поместил идею криптовалюты в головы персонажей своего культового романа «Криптономикон» (Очень рекомендуем к прочтению. Прим. авт.). Известны и первые попытки создания подобных платёжных систем, имевшие все предпосылки к успешной работе задолго до анонса сети Bitcoin.
Однако именно детище Накамото, будь он реальным физическим лицом или псевдонимом группы авторов, стало коммерчески успешным. «Инфомонеты», поднялись в цене в миллионы раз с десятых долей цента в 2009-м до тысячи долларов и выше в 2013-м году. Это особенно интересно, учитывая, что валюта не обеспечена ничем, кроме доверия пользователей к криптографической сложности алгоритма и вложений в вычислительную мощь компьютеров, необходимых для добычи «майнинга» биткойнов.
Существенная коррекция стоимости криптовалюты произошла в конце 2013-го года, затем биткойны возобновили свой рост до следующего падения во второй половине 2014-го. Что ожидает «монетки» в будущем нам неведомо и прогнозами заниматься мы не станем, однако, предположим, что развитие вредоносов подобных описываемому способно лишить криптовалюту доверия и привести к оттоку пользователей.
К особенностям криптовалют, рассматриваемых нами на примере биткойна относятся, в том числе, следующие: • Анонимность текущего владельца; • Отсутствие централизованного регулятора; • Хранение всех данных кошелька в едином файле.
Естественно, такого рода платёжное средство стало удобным инструментом для нелегальных транзакций (что на определённом этапе взвинтило его популярность и стоимость), а также объектом многочисленных хищений и мошеннических операций.
Где хранятся монеты?
Представлением Bitcoin-кошелька, на машине владельца является файл wallet.dat, содержащий приватный ключ пользователя системы. Этот файл создаётся во время первого запуска Bitcoin-клиента и сохраняется в каталоге %AppData%/Bitcoin. Злоумышленнику достаточно скопировать файл кошелька чтобы получить полный доступ к счетам пользователя.
Для того, чтобы обезопасить файл кошелька, предусмотрена функция шифрования. На доступ к кошельку устанавливается пароль, файл wallet.dat дополнительно шифруется, а для проведения любых транзакций требуется знание парольной фразы.
Исходный код модуля работы с шифрованием кошелька Bitcoin
В случае применения шифрования, даже после получения злоумышленником доступа к файлу wallet.dat, перевести с него средства будет невозможно без получения реквизитов доступа.
Однако, уникальными возможностями исследуемого образца вредоносного ПО являются не только скрытное копирование кошельков Bitcoin и 80 других криптовалют (форков Bitcoin’a) но и извлечение паролей для зашифрованных кошельков без использования каких-либо кейлоггеров (клавиатурных шпионов) с помощью внедрения непосредственно в служебные процессы клиентского ПО. Разберёмся в процессе получения вирусом данных, необходимых для кражи биткойн-кошельков.
Что такое CryptoStealer?
PE-заголовок перехваченного и изученного файла содержит время компиляции и отладочную информацию, говорящую об оригинальном имени проекта, из которого был скомпилирован файл. Так мы и установили, что его название CryptoStealer, а время создания изучаемого образца – конец января 2014-го года.
Заголовок файла с датой компиляции семпла и отладочной информацией
Как происходит кража?
Скрытное копирование файлов кошелька выполняется следующим образом: • CryptoStealer проверяет наличие каталога %APPDATA%\[Название криптовалюты] и % COMMON_APPDATA%\[Название криптовалюты] для всех 80 поддерживаемых криптовалют, например «C:\Documents and Settings\Owner\Application Data\Bitcoin\»; • Если путь существует, проверяется существование файла wallet.dat, который, при наличии, копируется во временную папку; • Файл кошелька отправляется на сервер злоумышленников.
Примечательно, что на профильных форумах о безопасности Bitcoin даются советы не хранить файлы кошелька в местах, принятых по умолчанию, предлагается размещать их на съёмных носителях, а Bitcoin-клиент запускать командой вида bitcoin-qt.exe –datadir=X:\wallet, таким образом явно указывая клиентскому ПО на место хранения файла кошелька. Но даже в этом случае могут быть считаны параметры запуска Bitcoin-клиента, а из каталога -datadir скопирован заветный файл wallet.dat.
Псевдокод функции отправки файла wallet.dat
А если файл кошелька зашифрован?
Еще одна важная функция CryptoStealer — перехват паролей шифрования кошельков. Она основана на следующем алгоритме: • Выполняется поиск процессов программ для работы с криптовалютой, например «bitcoin-qt.exe», «litecoin-qt.exe» и т.д. Перечисляются все активные процессы, а их имена последовательно сравниваются с заранее сгенерированной базой из 8 десятков bitcoin-форков, к названию которых добавляется подстрока «-qt.exe». • Производится внедрение кода в найденный процесс и запуск в нем удаленного потока(CreateRemoteThread).
Псевдокод функции перечисления процессов и внедрения кода
Псевдокод функции сплайсинга
• Выполняется сплайсинг (перехват) функции strlen из библиотеки msvcrt.dll. Данная функция проверяет длину вводимой парольной строки и, соответственно, оперирует самой парольной фразой. • Новый код-обработчик перехватываемой функции strlen ищет активные окна ввода пароля шифрования к кошельку (класс QWidget, заголовок «Unlock wallet», «Encrypt wallet» и т.д.) и перехватывает ввод в них, фильтруя вызовы функции подсчета длины строки для «служебных» строк приложения Bitcoin.
Псевдокод функции-обработчика хука
Отладка кода перехвата пароля
• Пароль к кошельку отправляется на центр управления злоумышленникам. Запрос в закодированном виде включает в себя помимо пароля аппаратный идентификатор компьютера и название типа криптовалюты. Кодируется запрос в системе кодирования Base64, и его расшифровка не представляет сложности.
Перехват и декодирование трафика приложения
Таким образом, рассматриваемый образец вредоносного ПО эффективно реализует заложенные в его алгоритм функции по краже всех необходимых для присваивания денежных средств файлов и реквизитов. Важно отметить, что на момент проведения исследования, ПО успешно избегало обнаружения большинством популярных антивирусных пакетов и генерируемый им трафик также не вызывал подозрений у значительной части систем обнаружения вторжений.
Исходя из вышеописанного, типичный пользователь не имеет возможности эффективно противодействовать и даже обнаружить CryptoStealer.
Тем не менее, существует ряд рекомендаций, способных существенно снизить риск заражения ПК вирусным ПО, в том числе, рассматриваемым в исследовании образцом: • Для проведения любых финансовых транзакций и прочих чувствительных операций необходимо использовать отдельный компьютер. Допустимо использование виртуальной машины, изолированной от воздействий внешней операционной системы, но выделенное устройство лучше; • Компьютер или виртуальная машина должны использоваться исключительно для означенных операций, посещение несвязанных с описанными целями сайтов и подключение недоверенных внешних носителей информации следует исключить; • Данный компьютер должен быть оснащён антивирусным ПО с последними обновлениями сигнатурных баз и средствами межсетевого экранирования с актуальными правилами фильтрации; • Межсетевая фильтрация к «финансовому» ПК применима только в разрешительном формате. Реджектим всё, кроме белого списка необходимых адресов. Лучше делать это с помощью внешнего устройства; • Следует перепроверять адреса, по которым совершаются переходы в сети интернет на предмет фишинга (подмены символов в имени узла сети на похожие знаки для увода пользователя на мошеннический ресурс).
Список криптовалют, попадающих в группу риска
Bitcoin, Litecoin, 42Coin, Alphacoin, Americancoin, AndroidsTokens, Anoncoin, Argentum, AsicCoin, avingCoin, BBQCoin, BeaoCoin, BitBar, bitgem, bits, Blakecoin, Bottlecaps, BountyCoin, Bytecoin, CasinoCoin, CHNCoin, Cloudcoin, Colossuscoin, Copper Bars, CosmosCoin, CPU2coin, Craftcoin, Crimecoin, CryptogenicBullion, CryptogenicBullionC, Devcoin, Diamond, DigitalCoin, Dogecoin, DollarPounds, Dragoncoin, EagleCoin, Earthcoin, ElephantCoin, Extremecoin, EzCoin, Fastcoin, FeatherCoin, FerretCoin, Florincoin, Franko, FrankoCoin, FreeCoin, Freicoin, Galaxycoin, Gamecoin, GlobalCoin, Goldcoin, Grain, GrandCoin, Growthcoin, HoboNickels, infinitecoin, ItalyCoin, Ixcoin, Joulecoin, Jupitercoin, KingCoin, krugercoin, last Coin, Lebowskis, Liquidcoin, Lucky7Coin, LuckyCoin, Maples, mastercoin, MasterCoin, Mavro, Megacoin, MEMEcoin, MemoryCoin, Mincoin, NaanaYaM, Namecoin, NanoTokens, Neocoin, NetCoin, NovaCoin, Nuggets, NXTCoin, Onecoin, OpenSourcecoin, Orbitcoin, Paycoin, PEERCoin, Pennies, PeopleCoin, PhenixCoin, Philosopherstone, PlayToken, PPcoin, PrimeCoin, ProtoShares, ProtoSharesCoin, QuarkCoin, RealCoin, Redcoin, RichCoin, RoyalCoin, Sauron Rings, Secondscoin, SecureCoin, Sexcoin, SHITcoin, Sifcoin, Skycoin, Spots, supercoin, TagCoin, TEKcoin, Terracoin, TicketsCoin, tumcoin, UnitedScryptCoin, Unobtanium, UScoin, ValueCoin, Worldcoin, XenCoin, YACoin, Ybcoin, ZcCoin, ZenithCoin, Zetacoin
Восстановление файла резервной копии на новый кошелек
Здесь мы покажем, как восстановить файл резервной копии wallet.dat новому клиенту кошелька. Процесс довольно прост.
Если вы хотите обновить существующий кошелек, прочитайте руководство по обновлению этого кошелька. Однако, если вы хотите восстановить файл резервной копии на новый кошелек на новом ПК, выполните следующие действия:
- Войдите в хранилище GitHub и загрузите последний кошелек. В нашем случае это биткойн – здесь вы можете найти последнюю версию его кошелька: https://github.com/bitcoin/bitcoin/releases
- После загрузки разархивируйте архив и выполните настройку кошелька. Теперь откройте свой кошелек и закройте его – это действие создаст все необходимые файлы. Убедитесь, что кошелек не работает.
- Теперь найдите местоположение текущего файла wallet.dat нового кошелька и замените его файлом резерва старого кошелька.
- Как только резервная копия кошелька будет заменена; перезагрузите кошелек командой -rescan. Теперь подождите, пока Ваш кошелек будет синхронизирован, и как только это будет сделано, вы сможете получить доступ к восстановленному кошельку.
Примечание. При резервном копировании вы можете назвать файл как угодно. Например, биткойн-backup.dat, LitecoinWallet.dat, Dashbk.dat. Но при восстановлении этого файла обязательно переименуйте его обратно в wallet.dat. Прежде, чем заменять файл wallet.dat, убедитесь, что Вы не сохранили в новом кошельке какие-либо монеты. Если это так, сделайте резервную копию, а также отправьте монеты на адрес кошелька, который вы контролируете. Мы не рекомендуем удалять wallet.dat. Вместо этого переименуйте его в old-wallet.dat или что-то еще.
Если ваш исходный файл резервной копии зашифрован, вам необходимо использовать пароль, чтобы разблокировать ваш кошелек и использовать средства.
Как запустить команду Rescan?
Проще всего запустить данную команду из командной строки:
- Нажимаем сочетание кнопок WIN + R
- Вводим cmd и нажимаем на кнопку OK
- В появившееся окно командного интерпретатора вводим (после каждой команды нажимаем ENTER)
- cd ДИРЕКТОРИЯ_СОДЕРЖАЩАЯ_bitcoin-qt (или нужный Вам кошелек)
В появившемся окне вводим все данные по очереди. После каждого ввода нажимаем Enter.
К примеру:
cd C:\Bitcoin\ За тем, в этом же окне bitcoin-qt -rescan
По завершению процедуры rescan Вы получите в распоряжение Ваши BTC монеты (или другие, в зависимости от кошелька).
Вывод
Напомним, что как только вы загрузили, настроили и синхронизировали новый кошелек, сразу же сделайте его резервное копирование, при этом зашифровав файл wallet.dat! Желательно, сохраните копии на несколько разных устройств на случай, если одно из них выйдет из строя.
Для большей безопасности не делайте это через TeamViewer или любое другое приложение, позволяющее удаленно подключиться к вашему компьютеру, чтобы избежать проникновения в систему и кражи ваших данных (хотя этот вариант маловероятен, но лучше подстраховаться).
Если у вас есть вопросы – обязательно напишите их в комментариях!
Старые кошельки
Если вы хотите войти в свой кошелек, не дожидаясь синхронизации всего блокчейна биткойна, просто возьмите закрытый ключ из своего кошелька. Вы можете сделать это с помощью Bitcoin Core API или инструмента pywallet ниже.
В открытом Bitcoin Core перейдите в «Справка» «Отладка Windows» «Консоль».
Или в “Help” “Debug Windows” “Console” – если у вас английская версия.
Теперь вы можете увидеть приватный ключ для своего кошелька введя команду dumpprivkey АДРЕС_КОШЕЛЬКА
Пример: dumpprivkey 197jjzsTuZFaGkzPpB4H3F4qD9fnTANLSM