Угроза на уровне цепочки поставок программного кода вновь дала о себе знать: рекомендованная Ripple библиотека «xrpl.js» для работы с блокчейном XRP через JavaScript была скомпрометирована. Вредоносный код в неё внедрили через официальные обновления в NPM, позволяя злоумышленникам похищать seed-фразы и ключи криптовалютных кошельков, пишет Securitylab.
Проблема затронула версии 2.14.2, 4.2.1, 4.2.2, 4.2.3 и 4.2.4, опубликованные 21 апреля между 16:46 и 17:49 по восточному времени США. Несмотря на то, что суммарное количество загрузок составило всего 452, масштабы риска куда выше — лишь за последнюю неделю библиотека была скачана более 140 тысяч раз, а значит, могла применяться для управления множеством кошельков.
Анализ показал , что к файлу «/src/index.ts» добавили новую функцию checkValidityOfSeed. На первый взгляд она выглядела как обычная проверка данных, но фактически отправляла приватные ключи, мнемоники и seed-фразы через HTTP POST-запрос на домен, контролируемый атакующими. Чтобы замаскировать трафик, использовался заголовок с фальшивым User-Agent «ad-refferal», имитирующий рекламный трафик.
Исследование компании Aikido подтвердило, что вредоносный метод вызывался из разных частей кода, тем самым обеспечивая массовый отток конфиденциальной информации без ведома разработчиков. Эти данные позволяли злоумышленникам загружать кошельки на свои устройства и мгновенно опустошать их.
Компрометация затронула только NPM-версии — в хранилище на GitHub никаких следов вредоносных коммитов не обнаружено. Это означает, что внедрение произошло либо на этапе публикации, либо через украденные учётные данные разработчика, связанного с Ripple. Такая атака — типичный пример компрометации цепочки поставок программного обеспечения, аналогичный недавним случаям с библиотеками Ethereum и Solana.
На данный момент все скомпрометированные версии удалены из NPM, а безопасный релиз под номером 4.2.5 уже доступен для установки. Поддерживающая библиотеку организация XRP Ledger Foundation настоятельно рекомендует всем пользователям немедленно перейти на новую версию, а также срочно сменить приватные ключи и отключить мастер-ключи в случае возможного компрометации. Подробные инструкции по этим шагам опубликованы на официальной документации XRPL.