Користувачі криптогаманців втратили щонайменше $5,69 млн через передбачувані seed-фрази

Користувачі криптовалют зазнали щонайменше $5,69 млн підтверджених збитків після того, як зловмисники змогли відновлювати передбачувані фрази відновлення (seed/recovery phrases) та отримувати доступ до коштів. Про проблему повідомила компанія Coinspect, яка пов'язує її з низкою застосунків і продуктів, зокрема RRWallet, Bexo Wallet, NanChat, Bitcoin Libre та Milo. У Coinspect наголошують: перелік потенційно вразливих гаманців може бути неповним, а ризик визначається версією ПЗ, що генерувала фразу, а не лише брендом гаманця. За даними відстеження Coinspect, 27 травня з адрес було виведено близько $3,14 млн. Ще $2,55 млн викрадено в період з 30 травня до 13 липня. Третя хвиля атак призвела до втрат приблизно $40 тис. 20'21 липня з гаманців, які використовували підмножину Chinesemnemonic. Аналіз охопив понад 2 000 seed-фраз. Активність спостерігали в мережах Bitcoin, Ethereum, Tron, Rootstock і Polygon. У Coinspect підкреслюють, що $5,69 млн — це мінімальна оцінка, реальні втрати можуть бути вищими. Причиною названо слабкий генератор випадкових чисел у бібліотеці CryptoJS. Вразливу реалізацію додали ще в червні 2014 року. Через цей недолік простір пошуку, який мав би становити 2^128 або 2^256 варіантів, скорочувався приблизно до 2^39 і 2^47. Це давало змогу перебирати уражені фрази, виводити відповідні блокчейн-адреси та перевіряти їх на наявність коштів. Coinspect зазначає, що саме використання старої залежності CryptoJS не означає автоматичної вразливості: небезпечна функція мала застосовуватися безпосередньо для створення секрету гаманця. Також оновлення застосунку не здатне "виправити" фразу відновлення, якщо її було згенеровано з недостатньою ентропією. Імпорт тієї самої фрази в інший програмний чи апаратний гаманець теж не усуває ризик. Виробники/проєкти повідомили про виправлення в окремих версіях: Bexo — у версії 20.1.0, NanChat — у версії 1.3.0, Bitcoin Libre — у версії 4. RRWallet і Milo припинені. NanChat порадила користувачам, які створили гаманці до версії 1.3.0, вважати їх скомпрометованими та мігрувати на нову, щойно згенеровану фразу. Coinspect також випустила інструмент Unlukey, який дозволяє звіряти публічні блокчейн-адреси з відомими наборами потенційно уражених даних без передачі приватної інформації. Збіг адреси вказує на можливу вразливість, а відсутність збігу означає лише те, що адреси немає в оприлюднених даних. Користувачам із підтверджено ураженими гаманцями рекомендують безпечно згенерувати нову фразу відновлення та переказати на неї всі кошти, якими керує стара seed-фраза.