Какой железный кошелек лучше: сравнение Ledger Nano S и Trezor

20 ноя 2017 10:41:23 Крипто кошельки

С ростом популярности Bitcoin и интеграции криптоиндустрии в нашу жизнь тема безопасного хранения монет становится все более актуальной. Ведь у обычного инвестора появляется возможность заработать, инвестируя в криптоиндустрию, а у мошенников появляются новые возможности для быстрого обогащения. На сегодняшний день аппаратные (железные) кошельки зарекомендовали себя как одни из наиболее надежных и защищенных, однако и у них есть свои уязвимости.

Сегодня мы представляем вам перевод статьи, в которой Карл Кредер (Karl Kreder), соучредитель Gridplus.io и директор по энергетике в ConsenSys, детально сравнивает два популярных железных кошелька - Ledger Nano S и Trezor:

Ledger Nano S vs Trezor

Этот обзор Ledger Nano S и Trezor составлен на основании моего личного мнения. Он включает в себя как перечень уязвимых мест этих продуктов, так и список отличных решений для обеспечения безопасности. Также я не рассматривал варианты кошельков без дисплея, так как они очень подвержены MIM-атакам.

MIM-атака (от англ. Man in the middle - MITM) - атака посредника или атака «человек посередине». Это вид атаки в криптографии, когда злоумышленник перехватывает и подменяет сообщения, которыми обмениваются корреспонденты, причём ни один из последних не догадывается о его присутствии в канале.

«Железо»

Trezor - относительно простое устройство, которое питается от микро-USB разъема. Он имеет очень простой пластиковый корпус с пластиковыми кнопками и жидкокристаллическим экраном. Интересно, что пластиковый корпус скреплен чем-то, что напоминает супер клей.

Trezor и его внутренности

В Trezor использован стандартный STM32F205 в качестве единственного микрочипа, что создает огромные возможности для аппаратных угроз. Это очень распространенный 32-разрядный процессор ARM Cortex M3. Он не является ни одним из надежных чипов от компании ST, ни какой-то разновидностью «защищенного анклава» (наподобие технологии Secure Enclave у Apple). Это просто микрочип общего назначения – он просто генерирует и хранит приватные ключи. По этой причине у Trezor нет сертификации по общим критериям безопасности.

Ledger Nano S также питается от микро-USB, имеет две кнопки ввода и встроенный экран. Самая большая разница между Trezor и Ledger заключается в том, что у Ledger два чипа вместо одного. Первым микрочипом является STM32F042K, а вторым - ST31H320. STM32F042K очень похож на STM32F205, используемый в Trezor, за исключением того, что он имеет внутренний генератор тактовых импульсов, а не внешний. Что еще интереснее, у Ledger Nano S есть «безопасный анклав» ST31H320 высокого класса, в котором хранятся приватные ключи кошелька. ST31H320 уже широко используется в других приложениях в банковской сфере, в процессах идентификации и в платном телевидении. Более того, он соответствует стандартам безопасности EAL6+. Объединенная архитектура ST31 / STM32 имеет более низкую, но также заслуживающую доверия сертификацию EAL5+. В дополнение к безопасному хранению приватных ключей, этот «безопасный анклав» содержит идентификационный ключ конкретного устройства, который гарантирует, что ваш Ledger не является подделкой и не был скомпрометирован в процессе поставки.

Ledger Nano S и его внутренности
Сравнительная таблица

Возможные уязвимые места

Я начну с того, что объясню, какие допущения я принял при сравнении двух аппаратных кошельков. А затем уже попытаемся понять – как та или иная угроза может навредить конкретному кошельку.

Первое допущение состоит в том, что любой компьютер, к которому подключен аппаратный кошелек, может быть скомпрометирован одним или несколькими способами. Я не буду рассматривать сейчас конкретно, какой механизм или вредоносное ПО используется для компрометации устройства. Просто предположим, что это возможно. Во-вторых, я рассматриваю способы хищения ваших средств, допуская, что злоумышленник может получить доступ к устройству до и после его инициализации пользователем. Я считаю, что приведенные выше предположения являются хорошей отправной точкой, потому что цель аппаратных кошельков (по крайней мере, как я их вижу) заключается в том, чтобы помочь уменьшить уровень уязвимости с учетом, что эти предположения верны. Более того, если мы отклоняем предположение о том, что кошелек подключен к взломанному компьютеру, необходимость в аппаратном кошельке вообще пропадает. В таком случае мы можем использовать сам «чистый» компьютер вместо аппаратного кошелька.

MIM-атака стоимостью 800$

Хотя у Ledger Nano S и есть дисплей, он все-таки уязвим для MIM-атак. Причиной этого является то, что он отображает только 8 цифр адреса получателя. Это 8-значное подтверждение транзакции может быть взломано при относительно небольших экономических затратах. Также обратите внимание на то, что 8 цифр адреса получателя отображаются не только для Ethereum, но и для Bitcoin, и Litecoin операций.

Обновлено: в последней версии прошивки 1.3.1 (а также в Ledger Bitcoin Wallet) это исправлено для Bitcoin адресов, они показываются полностью; поэтому эта угроза не актуальна. Однако Ethereum адреса все еще отображаются частично как в прошивке 1.3.1, так и в Ledger Ethereum Wallet 1.0.19, поэтому для них эта уязвимость существует.
Верификация транзакции Ledger

Текущая стоимость генерации 8 знаков (с разным регистром) для вашего адреса на сайте генератора «красивых» адресов vante.me стоит примерно 800$. Да, vante.me разработан для создания адресов с «красивым» началом (чтобы люди узнавали их и легче запоминали), а не для организации атак. Но факт остается фактом – стоимость генерации 8 знаков вашего адреса (даже если это разделение последовательности знаков на 4 определенных знака в начале и 4 определенных знака в конце) составляет всего 800$.

Vante.me - cтоимость создания адреса

Поэтому, если вы подключаете Ledger Nano S к взломанному компьютеру и используете его для перемещения больших сумм денег между одной или несколькими учетными записями на регулярной основе, вы уязвимы для этой атаки. Например, у вас есть учетная запись для обмена валют, на которую вы часто переводите средства. Если ваш компьютер взломан, то злоумышленник будет знать, на какие адреса вы отправляете средства и в каком количестве. Затем ему будет нетяжело создать практически идентичный адрес (8 знаков которого будут повторять ваш) и просто ждать, пока вы не создадите очередную транзакцию на внушительную сумму. На этом шаге ваш компьютер сделает запрос на проведение транзакции на адрес злоумышленников вместо запроса у вашего Ledger на подтверждение транзакции на ваш аккаунт. Вы и не заметите, как собственноручно подтвердите транзакцию на своем девайсе и отправите деньги мошенникам.

Интересно, что Trezor не может пострадать от подобной атаки, потому что перед подписанием транзакции он отображает весь адрес получателя на экране устройства. Это также объясняет точку зрения тех, кто считает, что как минимум 10 знаков (атака в таком случае будет стоить 3 миллиона долларов), а еще лучше весь адрес, нужно перепроверять перед отправкой существенных для вас сумм. Кроме того, стоит отметить - если вы используете одноразовые адреса при отправке денег через ваш Ledger, то подобная MIM-атака также не страшна вам. У злоумышленника просто не хватит времени сгенерировать поддельный адрес в таком случае.

Trezor: подтверждение транзакции

Обновление прошивки устройства через USB

Как Ledger, так и Trezor можно обновить, используя что-то похожее на микро-USB устройство обновления ПО (DFU) от компании ST. DFU позволяет обновлять прошивку устройства через USB-порт и диспетчер устройств на подключенном компьютере. К сожалению, существует целый ряд атак, которые возможны при обновлении через USB порт.

Много попыток использовать DFU для удаленного сброса памяти микрочипа семейства STM32F оказались удачными. Что это значит? Для Trezor это очень большая проблема, потому что теоретически это позволит хакеру удаленно вытащить приватные ключи с вашего устройства. А для Ledger это не проблема, потому что приватные ключи хранятся не на STM32, а при помощи «безопасного анклава» ST31. Поэтому, даже если память STM32 будет удаленно скомпрометирована, приватные ключи будут по-прежнему в безопасности на ST31.

В дополнение к потенциальной угрозе удаленного дампа памяти STM32, USB DFU может позволить злоумышленнику перепрошить устройство с помощью вредоносного кода во время обновления. Хотя и Ledger, и Trezor предоставляют контрольную сумму для проверки на экране устройства во время обновления, эта операция может быть легко скомпрометирована вредоносным кодом. Но, чтобы это совершить, злоумышленник должен взломать ваш компьютер в тот момент, когда вы обновляете ПО вашего кошелька.

Таким образом, если Trezor был обновлен с помощью вредоносного кода, то злоумышленник легко получает контроль над вашими средствами – он просто знает ваши приватные ключи. В случае с Ledger приватные ключи все равно будут в безопасности, и злоумышленник не сможет создать искаженные транзакции.

Обход защиты PIN-кода

Следующая уязвимость может проявиться, если аппаратный кошелек непосредственно попадет в руки злоумышленника. И Trezor, и Ledger имеют функцию сброса, если неверный PIN введен 3 раза. Это предотвращает получение доступа к вашему кошельку через простой подбор вашего PIN-кода.

Средства в полной безопасности, потому что они защищены PIN-кодом, не так ли?

На всемирно известной конференции хакеров DEF CON 25 состоялась презентация, на которой была продемонстрирована возможность взломать Trezor STM32F205 без знания PIN-кода. Вы даже можете найти в Интеренете блог, который дает пошаговую инструкцию, как это очень быстро сделать без применения какого-то специализированного оборудования.

Что насчет Ledger? Ledger менее уязвим для подобного типа атаки, поскольку он имеет внутренний генератор тактовых импульсов, а также защищен «безопасным анклавом». Это предотвращает возможность украсть ваши средства даже, если чип STM32F042K был успешно взломан. Цепочка поставок

Физические механизмы «безопасности» устройства актуальны для Trezor из-за потенциальных векторов атаки, связанных с подделкой устройства в течение поставок. В дополнение к супер клею, который скрепляет корпус, коробка Trezor «защищена» голографическими наклейками, которые также являются жалкой попыткой физической защиты. Все эти попытки Trezor убедить потребителя, что кошелек не был скомпрометирован в течение поставки, должны уже настораживать. Это доказывает только то, что эти «защитные» функции не работают. А сам продавец не уверен, он ли создал и запрограммировал то устройство, которое отправляет запрос на официальный сайт.

"Защитная" упаковка Trezor

Если Trezor был перехвачен третей стороной до того, как кошелек доставили конечному пользователю, злоумышленник может просто открыть его и установить вредоносную версию программного обеспечения Trezor. Этому способствует и тот факт, что все прошивки Trezor – с открытым исходным кодом. Кроме того, поскольку защитный ключ самого устройства хранится на STM32, злоумышленник может изменить его при перепрошивке устройства. Это значит, что даже сам Trezor никогда не узнает, подделали ли это устройство или оно оригинально.

Ledger, в свою очередь, не страдает от таких угроз, потому что «безопасный анклав» надежно сохраняет ключ устройства, который используется для подтверждения оригинальности продукта. Это значительно сокращает вероятность успешного проникновения подделок в цепочку поставок.

Фраза восстановления

Наиболее уязвимой частью является фраза восстановления. Фраза восстановления - это серия из 12-24 слов, которая позволяет восстанавливать приватные ключи с помощью BIP39. В отличие от аппаратных кошельков, которые обеспечивают некоторый барьер для вредоносного использования или взлома, фраза восстановления существует в виде простого текста. Мы любим называть эту уязвимость «атакой на бельевой ящик», так как вы вероятнее всего сохранили бумажку с этой фразой в своем шкафу возле кровати.

Вероятно, это наиболее уязвимая часть аппаратного кошелька. Также особенно иронично, что если человек хочет как можно надежнее сохранить фразу восстановления, то он, в конце концов, может оказаться в банке, оформляя банковскую ячейку. После почти десятилетия работы над созданием децентрализованной P2P сети, фраза восстановления возвращает нас в самое начало – туда, где мы несем наши деньги в банк. Это, на самом деле, просто подчеркивает тот факт, что криптовалюты являются «активами на предъявителя». Как и в случае с золотом, безопасность криптовалют, по крайней мере в настоящее время, зависит от способности пользователя физически защитить их или надежно спрятать.

Наконец-то моя фраза восстановления в надежном месте!

Существуют способы повышения безопасности фразы восстановления, такие как разбивка ее на части и последующее их изложение с помощью нескольких доверенных контрагентов. Либо фраза восстановления также может быть зашифрована, или использована в сочетании с каким-то дополнительным паролем.

Скрытое наблюдение

Последняя угроза, про которую нужно рассказать хотя бы в вкратце – это опасность срытого наблюдения. Если злоумышленник подсмотрел PIN-код к вашему аппаратному кошельку, то это точно конец. Существуют удаленные инструменты наблюдения, веб-камера компьютера может быть включена и контролироваться без ведома или разрешения пользователя. Существуют также более очевидные способы: например, окружающая среда, в которой вы живете или работаете, может быть скомпрометирована скрытой камерой.

Эдвард Сноуден был параноиком в отношении наблюдения за помещениями - он использовал одеяло, чтобы скрыть ввод своего пароля.

Это может показаться не самой вероятной угрозой, но, если есть достаточно большой стимул, а цель известна, то это, скорее всего, самый простой вектор атаки.

Вывод

Какой вывод мы делаем из всего вышеизложенного? Ниже приведен краткий обзор потенциальных уязвимостей как Trezor, так и Ledger. Если бы не было уязвимости MIM-атаки, то Ledger был бы явным победителем. Однако наличие этой угрозы усложняет принятие решения. Если бы разработчики Ledger прислушались к отзывам пользователей и включили полный адрес получателя (или хотя бы 10-11 символов, а не 8, как сейчас), мне было бы гораздо легче провозгласить их продукт победителем.

Обновлено: в статье на medium.com разработчики Ledger заявили, что обновят приложение, чтобы оно показывало полные адреса. Как только это произойдет – я буду рекомендовать Ledger, а не Trezor.
Сравнение уязвимостей

Есть ли что-то еще, что мы можем сделать для повышения безопасности хранения криптовалют? Да. Кошельки с мульти-подписями. Кошелек с мульти-подписью требует нескольких цифровых подписей для перемещения токенов, аналогично тому, как для открытия банковской ячейки требуются два ключа. Мульти-подпись серьезно осложняет задачу злоумышленникам, ведь приватные ключи теперь можно держать в разных местах и на разных устройствах. Эта технология уже давно разработана, имеет долгую историю успешного использования. Как Trezor, так и Ledger предоставляют пользователям возможность использовать мульти-подпись. Кроме того, наличие нескольких лиц, которые должны подписывать транзакции перед перемещением средств, создает внутреннюю иерархию управления, которая обычно желательна в организациях.

К сожалению, Ethereum еще не поддерживает кошельки с мульти-подписью. Любой заявленный Ethereum кошелек с мульти-подписью основан на смарт-контракте, а этот смарт-контракт может иметь дополнительные уязвимости.

Еще про безопасность: Еще про кошельки: В целом, если у Вас мало крипты, то она будет в безопасности без покупки аппаратного кошелька. Хватит соблюдения советов из первой ссылки. Железо - для крупных держателей. Все-таки стоит денег. А так, сами смотрите.

Хотите зарабатывать на крипте? Подписывайтесь на наши Telegram каналы!

8 комментов7 999 просмотров
Комментарии
постраничноцеликом
датапопулярные
Леонид
0

20.11.2017 12:10:16#
Если кому интересно, лично я использую Ledger Nano S.
GoldRus
1

20.11.2017 13:02:07#
Я собирался покупать Trezor, не знаю почему именно Trezor, видимо больше о нём слышал, но после данной статьи скорей всего буду приобретать Ledger
Neta
0

21.11.2017 10:37:06изменен#
Еще летом думала, что мне аппаратный кошелек не нужен. Но жизнь меняется, особенно быстро в крипте. Заказала неделю назад на ebay Ledger, жду. Больше внешне понравился Ledger, женская логика.
Леонид
0

21.11.2017 10:42:26#
Ledger точно красивее :)))
sergey1405
0

11.01.2018 22:15:51#
Леонид, привет еще раз! подскажи,пожалуйста,хочу купить аппаратный кошелек-перерыл кучу сайтов, не могу найти адекватную инфу:
по Леджеру как я понял ближайшая доставка по предзаказу не раньше 22 марта (это очень долго,не устраивает)
Trezor тогда не подскажешь с какого сайта безопасно купить?

и точно это надежнее закрытого ключа??

icon и другие erc-20 я смогу ж так хранить,да?
sergey1405
0

11.01.2018 22:16:51#
сорри, может вопросы нубские, но блин,инфы море в инете, задолбался искать( или может кто из народа подскажет?
sportland
0

19.01.2018 16:18:47#
так с официального сайта на Россию не отправляют вроде бы.
sportland
0

19.01.2018 16:19:28#
я про Ledger Nano S.
Только зарегистрированные пользователи могут писать комментарии.
Авторизуйтесь, пожалуйста, или зарегистрируйтесь.
Подписывайтесь