Как одна кириллическая буква и 11 миллионов загрузок позволили украсть криптовалюту?

Атака на цепочку поставок, нацеленная на репозиторий пакетов NuGet, была обнаружена компанией Socket. Злоумышленники опубликовали вредоносную библиотеку под названием Netherеum.All, которая имитировала популярную.NET-платформу для интеграции с Ethereum — Nethereum. Основной целью атаки была кража ключей от криптовалютных кошельков и других конфиденциальных данных пользователей.
Как одна кириллическая буква и 11 миллионов загрузок позволили украсть криптовалюту?
Изображение носит иллюстративный характер

Вредоносный пакет был загружен 16 октября 2025 года пользователем с ником "nethereumgroup". Спустя всего четыре дня, 20 октября 2025 года, он был удален администрацией NuGet за нарушение условий использования. За короткий срок своего существования пакет успел продемонстрировать несколько изощренных методов обмана, направленных на усыпление бдительности разработчиков.

Ключевой уловкой стал омоглифический трюк: в названии пакета Netherеum.All последняя латинская буква "e" была заменена на визуально неотличимую кириллическую «е» (U+0435). При беглом просмотре или копировании названия такая подмена практически незаметна, что позволяет вредоносному пакету маскироваться под легитимный.

Для придания пакету ложной популярности и авторитетности злоумышленники искусственно завысили счетчик его загрузок до 11,7 миллиона. Такой показатель для новой библиотеки был охарактеризован как «огромный красный флаг». Исследователь безопасности Кирилл Бойченко объяснил, что подобная накрутка достигается путем публикации множества версий пакета и последующей автоматизации их скачивания с использованием v3 flat-container.

Технически для накрутки счетчика использовались циклические команды, такие как nuget.exe install и dotnet restore с опцией no-cache, запускаемые с большого количества облачных хостов. Чтобы обходить кэширование и системы защиты, скрипты постоянно меняли IP-адреса и user-агенты, а также распараллеливали запросы для достижения максимального объема загрузок.

Вредоносный код был спрятан внутри функции EIP70221TransactionService.Shuffle. Эта функция декодировала строку, зашифрованную с помощью XOR, чтобы получить адрес командного сервера (C2): solananetworkinstance[.]info/api/gads. После активации полезная нагрузка приступала к сбору и отправке на этот сервер конфиденциальных данных жертвы.

Целью злоумышленников были данные, связанные с криптовалютными кошельками. Пакет был спроектирован для поиска и кражи мнемонических фраз, приватных ключей и данных из файлов хранилищ ключей (keystore), что давало атакующим полный доступ к цифровым активам жертв.

Данный инцидент не был единичным. Тот же злоумышленник в начале октября 2025 года загрузил другой вредоносный пакет под названием "NethereumNet", который содержал идентичную функциональность и также был оперативно удален командой безопасности NuGet. Это указывает на систематические попытки компрометации разработчиков в.NET-экосистеме.

Проблема использования омоглифов в именах пакетов на NuGet не нова. Еще в июле 2024 года организация ReversingLabs опубликовала отчет, в котором задокументировала несколько других пакетов в этом репозитории, использовавших аналогичные методы визуальной подмены для маскировки под популярные легитимные библиотеки.

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

Такие платформы, как PyPI, npm, Maven Central, Go Module и RubyGems, применяют более строгие правила именования. Они ограничивают использование символов набором ASCII, что эффективно предотвращает атаки с применением омоглифов и делает подобные методы обмана невозможными.

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


Новое на сайте

19905Зачем древние египтяне строили круглые храмы? 19904Планета, на которой вы живёте, но почти не знаете 19903Может ли анализ крови остановить рак печени ещё до его начала? 19902Кто такие GopherWhisper и зачем им монгольские чиновники? 19901«Вояджер-1» готовится к манёвру «большой взрыв»: NASA отключает приборы ради выживания 19900Почему вокруг Чатемских островов появилось светящееся кольцо из планктона? 19899Как взлом Vercel начался с Roblox-скрипта на чужом компьютере 19898Кто лежит в шотландских гробницах каменного века? 19897Почему две англосаксонские сестра и брат были похоронены в объятиях 1400 лет назад? 19896Гормон GDF15: найдена причина мучительного токсикоза у беременных 19895Почему хакеры Harvester прячут вредоносный код в папке «Zomato Pizza»? 19894Робот-гуманоид Panther от UniX AI претендует на место в каждом доме 19893Artemis застряла на земле: NASA не может лететь на луну без новых скафандров 19892Почему 20 000 промышленных устройств по всему миру оказались под угрозой взлома? 19891Зачем египетская мумия «проглотила» «Илиаду»?
Ссылка