Уязвимость JavaScript угрожает пользователям биткоин-кошельков

Группа исследователей опубликовала предупреждение об уязвимости старых биткоин-адресов, которые генерировались через приложения для создания криптокошельков на JavaScript.

21.04.2018, 16:05

Уязвимость JavaScript угрожает пользователям биткоин-кошельков

Слишком слабый шифр

Согласно проведенному исследованию, хакеры могут воспользоваться старой криптографической уязвимостью Java и украсть биткоины с адресов, которые генерировались с помощью SecureRandom функции на Javascript. При помощи брутфорс атаки киберпреступники могут завладеть приватными ключами, а значит, и биткоинами.

Уязвимость связана с функцией JavaScript SecureRandom, которая использовалась ранее для генерации биткоин-адресов и ключей. Биткоин- адрес представляет из себя буквенно-цифровой код, устанавливающий назначение биткойн-платежа, как для адреса электронной почты. Ключ схож с паролем, поскольку математически привязан к адресу кошелька.

Согласно заявлению одного из разработчиков Linux Foundation, функция SecureRandom, в действительности, выдает не полностью случайный набор символов. Об этой же уязвимости заявлял ранее Дэвид Джерард, Unix-эксперт из Великобритании. После этих замечаний тема стала широко обсуждаться в криптосообществе.

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

Согласно Джерарду, функция генерирует криптографические ключи с энтропией менее 48 бит, что делает приватный ключ уязвимым для брутфорс атак.

Джерард отметил, что дискуссии по этой конкретной уязвимости ведутся на форуме Bitcointalk с 2013-го года. В то время некоторые онлайн-провайдеры биткойн-кошельков использовали функцию SecureRandom для генерации ключей.

Джерард также сообщает, что многие адреса, сгенерированные с использованием сервиса BitAddress до 2013-го года или Bitcoinjs до 2014-го года, наиболее вероятно содержат описанную уязвимость. Джерард считает, что и современное ПО провайдеров биткойн-кошельков может содержать уязвимости, так как они могут использовать устаревшие коды с GitHub. По мнению эксперта, для взлома сгенерированных таким образом ключей потребуется около недели.

Читайте также:   Криптобиржа Poloniex произведёт делистинг некоторых токенов

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