0

Ошибка в JavaScript-классе привела к генерации уязвимых ключей для криптокошельков

Специалист по безопасности Дэвид Джерард в своём блоге сообщил, что использующие класс SecureRandom() JavaScript-приложения криптовалют могли генерировать уязвимые ключи. Созданные в браузере пароли также можно взломать.

В чём заключается проблема?

Функция генерирует ключи, которые имеют менее 48 бит энтропии. Затем SecureRandom() запускает номер, полученный через устаревший алгоритм RC4. Это ещё больше снижает количество бит энтропии, а ключ становится более предсказуем.

Уязвимы адреса, созданные с использованием BitAddress до 2013 года, а также Bitcoinjs до 2014 года. Слабые ключи генерируют приложения, использующие версии jsbn.js до 2013 года — они содержат SecureRandom().

В декабре 2017 года у пользователей Reddit украли Bitcoin Cash через сервис рассылки Mailgun. Расследование показало, что злоумышленник взломал аккаунт сотрудника сервиса и через него запрашивал смену паролей.

Источник: блог Дэвида Джерарда