Одна буква — миллионные потери. Как русская «Е» обманула разработчиков и присвоила их крипту

leer en español

Одна буква — миллионные потери. Как русская «Е» обманула разработчиков и присвоила их крипту

11,7 миллиона установок за четыре дня — и ни у кого не возникло подозрений.

image

Платформа распространения .NET-библиотек NuGet вновь стала каналом распространения вредоносного кода. На этот раз злоумышленники использовали технику подмены символов, чтобы создать вредоносный пакет, имитирующий известную библиотеку Nethereum, применяемую для работы с Ethereum в среде .NET. По данным экспертов Socket, целью атаки стало хищение конфиденциальных данных криптовалютных кошельков, включая мнемонические фразы, закрытые ключи и файлы ключей.

Вредоносная библиотека под названием «Netherеum.All» была загружена 16 октября пользователем с ником «nethereumgroup». Через четыре дня, после обнаружения нарушения условий использования сервиса, она была удалена. Отличительной особенностью пакета стала подмена последней буквы «е» на её кириллический аналог, визуально идентичный латинскому символу, но имеющий иной код Unicode. Это позволило обмануть разработчиков, которые не заметили подмену и загружали вредоносную версию вместо оригинала.

Чтобы повысить доверие к пакету, авторы атаки прибегли к искусственной накрутке количества скачиваний. Пакет демонстрировал показатель в 11,7 миллиона загрузок, что невозможно для новой и неизвестной библиотеки. Специалисты пояснили, что такой эффект достигался путём публикации множества версий пакета с последующим автоматическим скачиванием каждой из них с использованием разных IP-адресов, заголовков и параллельных запросов. Эти действия позволили обойти кеши клиентов и обеспечить видимость популярности.

Основной вредоносный код скрывался в функции под названием EIP70221TransactionService.Shuffle. В её рамках происходила декодировка зашифрованной строки с последующим извлечением адреса командного сервера solananetworkinstance[.]info/api/gads. После этого из системы пользователя отправлялись украденные данные криптокошелька.

Ранее эта же группа уже размещала в NuGet другой вредоносный пакет под названием «NethereumNet» с аналогичным функционалом. Он также был оперативно удалён модераторами платформы. Однако инцидент указывает на устойчивую активность, направленную на компрометацию экосистемы .NET путём визуально незаметной подмены элементов в именах библиотек.

Метод подмены символов уже применялся в прошлом. Так, в середине 2024 года команда ReversingLabs фиксировала аналогичные случаи, когда вредоносные библиотеки маскировались под легитимные за счёт замены отдельных букв на визуально схожие. Ситуацию усугубляет тот факт, что в отличие от других популярных менеджеров пакетов, таких как PyPI, npm, Maven Central, Go Module и RubyGems, в NuGet нет ограничения на использование только ASCII-символов в названиях. Это создаёт благоприятные условия для тайпосквоттинга.

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