Back to Blog

Инцидент с Trust Wallet №7: украденный API-ключ превратил официальный канал обновлений в бэкдор

Code Auditing
12 февраля 2026 г.
5 min read

25 декабря 2025 года в расширении Trust Wallet для Chrome (версия 2.68) произошел критический инцидент безопасности, который привел к краже средств пользователей на сумму около 8,5 миллионов долларов.

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

Общие сведения

Расширение Trust Wallet для Chrome разработано как типичный некастодиальный кошелек, позволяющий пользователям создавать новые или импортировать существующие кошельки. В основе любого криптовалютного кошелька лежит сид-фраза, также известная как мнемоника. Это человекочитаемое представление закрытого ключа кошелька. С помощью этой сид-фразы можно детерминированным образом вычислить все закрытые ключи, связанные с кошельком, что делает её самым важным секретом, который есть у пользователя. Любой, кто получил доступ к сид-фразе, получает полный контроль над всеми средствами на кошельке.

Чтобы обеспечить безопасное самостоятельное хранение сид-фраз, расширение Trust Wallet хранит их локально в зашифрованном виде с использованием алгоритмов криптографии. Они могут быть расшифрованы только по законному запросу пользователя при надлежащей аутентификации. Этот процесс требует от пользователя подтверждения личности с помощью биометрии или пароля, в зависимости от настроенного метода. В правильно функционирующем некастодиальном кошельке расшифрованные сид-фразы используются исключительно внутри локальной среды расширения и никогда не передаются на внешние серверы.

Анализ уязвимости

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

Следующий анализ и скриншоты основаны на деобфусцированном исходном коде.

Извлечение расшифрованных сид-фраз

Вредоносный код был внедрен в функцию разблокировки в файле 8423.js, которая отвечает за разблокировку кошелька и расшифровку сид-фразы после аутентификации пользователя. В логику разблокировки злоумышленник встроил механизм сбора аналитики, который на первый взгляд не вызывает подозрений. Как показано в приведенном ниже фрагменте кода, извлечение сид-фраз происходило сразу после стандартного процесса аутентификации. Код перебирает все кошельки, извлекая расшифрованные сид-фразы и сохраняя их в переменную с обманчивым названием errorMessage. Затем эти данные встраиваются в свойство error внутри объектов событий аналитики.

Такой же вредоносный паттерн присутствует в процессе разблокировки по паролю (строки 485-527), где биометрическая аутентификация заменяется расшифровкой на основе пароля.

Передача конфиденциальных данных

После того как сид-фразы были собраны и упакованы как аналитические данные, они направлялись через инфраструктуру аналитики PostHog. Эта инфраструктура была преднамеренно добавлена злоумышленником в версии 2.68 для передачи данных. По этому пути аналитические данные, содержащие сид-фразы, отправлялись в обертку аналитического сервиса, которая вызывала метод capture() библиотеки PostHog для создания объектов событий. События ставились в очередь, объединялись в пакеты, а затем сериализовались в формат JSON. JSON-полезная нагрузка сжималась и передавалась посредством HTTP POST-запроса на сервер злоумышленника.

Файл 4482.js раскрывает конфигурацию PostHog, которая перенаправляет аналитические данные на api.metrics-trustwallet.com. Этот домен был специально зарегистрирован злоумышленником, чтобы имитировать легитимный аналитический эндпойнт Trust Wallet.

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

Анализ атаки

Процесс атаки занял около месяца с момента первоначальной подготовки до финального эксплойта и проходил в три этапа:

  1. Компрометация API-ключа Chrome Web Store (CWS).

  2. Публикация расширения, содержащего вредоносный код.

  3. Кража средств с скомпрометированных пользовательских кошельков.

Этап 1: Компрометация API-ключа CWS

История началась с масштабной атаки на цепочку поставок в ноябре, известной как «Shai-Hulud 2.0» [2]. Эта кампания была направлена на среды разработчиков через NPM (Node Package Manager), внедряя бэкдоры в многочисленные легитимные пакеты NPM. Когда разработчики устанавливали эти скомпрометированные пакеты, на их системах выполнялся вредоносный код для кражи конфиденциальных учетных данных и токенов аутентификации.

Благодаря этой атаке на цепочку поставок злоумышленник получил API-ключ Trust Wallet для Chrome Web Store (CWS). Этот ключ особенно важен, поскольку он позволял напрямую загружать сборки расширения в Chrome Web Store, полностью обходя внутренние проверки и одобрения Trust Wallet в рамках стандартного процесса выпуска программного обеспечения.

Этап 2: Выпуск расширения с вредоносным кодом

В декабре 2025 года, имея на руках украденный API-ключ CWS, злоумышленник реализовал инфраструктуру атаки:

  1. Зарегистрировал вредоносный домен metrics-trustwallet.com (и поддомен api.metrics-trustwallet.com) для размещения эндпойнта сбора данных.

  2. Внедрил бэкдор-код в функции разблокировки кошелька и изменил конфигурацию аналитики PostHog, чтобы направить данные на свой сервер.

  3. Загрузил вредоносное расширение непосредственно в Chrome Web Store, используя украденный API-ключ, минуя стандартный процесс выпуска.

Вредоносная версия 2.68 успешно прошла автоматическую проверку Chrome и была опубликована в магазине, выглядя как легитимное обновление от официального аккаунта разработчика.

Этап 3: Кража средств с скомпрометированных пользовательских кошельков

Когда пользователи разблокировали свои кошельки с помощью этого уязвимого расширения, их сид-фразы незаметно передавались на api.metrics-trustwallet.com, сервер злоумышленника. Получив полный доступ к этим сид-фразам, злоумышленники получили полный контроль над кошельками жертв.

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

Начиная с 25 декабря, злоумышленник инициировал систематический вывод средств из скомпрометированных кошельков. Инцидент затронул около 2520 различных адресов кошельков в 10 различных блокчейнах.

Резюме

Этот взлом служит суровым напоминанием о том, что безопасность должна охватывать весь жизненный цикл протокола, включая разработку и развертывание. В 2025 году атаки на цепочки поставок стали самой разрушительной угрозой для криптовалютной инфраструктуры: всего два инцидента (включая взлом Bybit на 1,5 миллиарда долларов в феврале) привели к значительным убыткам. Помимо аудита смарт-контрактов, протоколы должны защищать свои конвейеры сборки, оберегать учетные данные разработчиков и поддерживать непрерывный мониторинг для защиты активов пользователей.

Ссылки

  1. Официальный отчет об инциденте
  2. Shai-Hulud 2.0

О компании BlockSec

BlockSec — поставщик услуг в области безопасности блокчейна и комплаенса полного цикла. Мы создаем продукты и сервисы, которые помогают клиентам проводить аудит кода (включая смарт-контракты, блокчейны и кошельки), перехватывать атаки в режиме реального времени, анализировать инциденты, отслеживать незаконные средства и соблюдать обязательства AML/CFT на протяжении всего жизненного цикла протоколов и платформ.

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

Sign up for the latest updates
Потери около 5,57 млн USD: атаки на X100 Freezer и NEM | Еженедельный обзор BlockSec
Security Insights

Потери около 5,57 млн USD: атаки на X100 Freezer и NEM | Еженедельный обзор BlockSec

Этот еженедельный отчёт охватывает два инцидента безопасности в сетях Ethereum и BNB Chain за период 19.10.2026–25.10.2026. В нём рассматриваются захват управления X100 Freezer, профинансированный с помощью флеш-кредита, и ошибка при расчёте налога, затронувшая пул ликвидности токена NEM в сети BNB Chain. Оценочные потери в рамках отчёта составляют в общей сложности около 5,57 млн USD: ~4,75 млн USD по рассматриваемой транзакции X100 и ~820 тыс. USD в результате инцидента с пулом NEM. В эту сумму не входят отдельно опубликованные данные о последующих выводах средств из X100.

Потери на сумму около 3,87 млн USD: взломы Autheo Network и UNCX | Еженедельный обзор BlockSec
Security Insights

Потери на сумму около 3,87 млн USD: взломы Autheo Network и UNCX | Еженедельный обзор BlockSec

В этом еженедельном отчёте рассматриваются 3 инцидента безопасности за период 12.10.2026–18.10.2026. Общий оценочный ущерб составил около 3,87 млн USD. Ущерб Autheo Network от компрометации закрытого ключа составил примерно 1,76 млн USD, Qubic Wallet потерял примерно 1,30 млн USD из-за ненадёжной генерации seed, а ошибка учёта в контрактах Smart Token Vesting V2 сети UNCX Network на Ethereum, BNB Chain, Base и Robinhood Chain привела к ущербу примерно в 807 тыс. USD. В подробном анализе инцидента UNCX объясняется, как некорректный расчёт совокупного количества долей смешивал транши вестинга, созданные при разных соотношениях токенов и долей, и позволял выводить из общих пулов больше положенного.

Потеряно около $542 тыс.: эксплуатация уязвимости MakerDaoBot | Еженедельный обзор BlockSec
Security Insights

Потеряно около $542 тыс.: эксплуатация уязвимости MakerDaoBot | Еженедельный обзор BlockSec

В Ethereum за 05–11.10.2026 произошёл 1 инцидент; ущерб — около $542 тыс. Атакующий передал вредоносный адаптер функции MakerDaoBot без контроля доступа. Получив права на балансы MakerDAO, адаптер закрыл 4 аукциона ETH-A, конвертировал 200 ETH-A в WETH; атакующий вывел 200 ETH.

Best Security Auditor for Web3

Validate design, code, and business logic before launch. Aligned with the highest industry security standards.

BlockSec Audit
Инцидент с Trust Wallet №7: украденный API-ключ превратил официальный канал обновлений в бэкдор