Кража биткойнов

Rogue Developer заражает широко используемый модуль NodeJS для кражи биткойнов

  
Широко используемый сторонний модуль NodeJS с почти 2 миллионами загрузок в неделю был скомпрометирован после того, как один из его разработчиков с открытым исходным кодом стал мошенником, который заразил его вредоносным кодом, запрограммированным для кражи средств, хранящихся в приложениях кошелька Биткойн.


Рассматриваемая библиотека Node.js — это Event-Stream, набор инструментов, который позволяет разработчикам легко создавать и работать с потоками, коллекцией данных в Node.js — точно так же, как массивы или строки.

Вредоносный код, обнаруженный ранее на этой неделе, был добавлен в версию 3.3.6 Event-Stream, опубликованную 9 сентября через репозиторий NPM, и с тех пор его скачали почти 8 миллионов разработчиков приложений.

Модуль Event-Stream для Node.js изначально был создан Домиником Тарром, который долгое время поддерживал библиотеку Event-Stream, но несколько месяцев назад передал разработку и сопровождение проекта неизвестному программисту по имени right9ctrl.


Очевидно, right9ctrl завоевал доверие Доминика, внеся значительный вклад в проект.

После получения доступа к библиотеке новый законный сопровождающий «Right9ctrl» выпустил в качестве зависимости версию-потока Event.6 Stream, содержащую новую библиотеку Flatmap-Stream, которая была специально разработана для целей этой атаки и включает вредоносный код.

Так как модуль потока плоских карт был зашифрован, вредоносный код оставался незамеченным в течение более 2 месяцев, пока Айртон Спарлинг (FallingSnow), студент информатики в Университете штата Калифорния, не объявил о проблеме во вторник на GitHub.

Проанализировав запутанный код и зашифрованную полезную нагрузку, менеджер проекта с открытым исходным кодом NPM, который размещал поток событий, обнаружил, что вредоносный модуль предназначен для людей, использующих приложение BitPay для кошелька биткойнов с открытым исходным кодом, компанию Copay, которая включила поток событий в свой приложение.


Вредоносный код пытался украсть цифровые монеты, хранящиеся в кошельках биткойнов Dash Copay — распространяемые через менеджер пакетов узлов (NPM), — и передать их на сервер, расположенный в Куала-Лумпуре.

Официальные лица из NPM — менеджера проекта с открытым исходным кодом, который размещал библиотеку кода событийного потока — удалили черный ход из списка NPM в понедельник на этой неделе.

BitPay также опубликовал рекомендацию, в которой говорится, что на версии Copay 5.0.2–5.0 вредоносный код повлиял, и пользователям, у которых установлены эти версии, следует избегать запуска или открытия приложения, пока они не установят Copay версии 5.2.0.

«Пользователи должны предполагать, что закрытые ключи в затронутых кошельках могли быть скомпрометированы, поэтому им следует немедленно перевести средства на новые кошельки (v5.2.0)», — говорится в сообщении BitPay.

«Пользователи должны сначала обновить свои затронутые кошельки (5.0.2-5.1.0), а затем отправлять все средства из затронутых кошельков в совершенно новый кошелек версии 5.2.0, используя функцию Send Max для инициирования транзакций всех средств».

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

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