В канун Рождества 2024 года была скомпрометирована популярная система защиты данных Cyberhaven, установленная в виде расширения для браузера Chrome у 400 тысяч пользователей. Злоумышленники выпустили вредоносное обновление, которое похищало учетные данные и токены сессий с таких платформ, как Facebook* и ChatGPT.
Описание
Спустя год, в канун Рождества 2025 года, история повторилась, однако на этот раз мишенью стал криптовалютный кошелек Trust Wallet, принадлежащий Binance и насчитывающий более 1 миллиона пользователей в Chrome. Атака развивалась по уже знакомому сценарию: вредоносное обновление было выпущено в праздничный период, когда многие команды безопасности работают в сокращенном составе, что позволило злоумышленникам беспрепятственно собирать данные и выводить средства до обнаружения инцидента. По предварительным оценкам, в результате было похищено около 7 миллионов долларов из кошельков пользователей за менее чем 48 часов. Технический анализ Koi Security скомпрометированного расширения раскрывает новые детали этой тщательно спланированной кампании, выходящие за рамки первоначальных публичных сообщений.
Хронология и реакция
24 декабря 2025 года в Chrome Web Store была опубликована версия Trust Wallet 2.68.0. Уже через несколько часов после обновления пользователи начали сообщать о несанкционированном списании средств. 25 декабря известный исследователь блокчейна ZachXBT обнаружил и публично обозначил подозрительную активность в сети, а вскоре после этого специалист по безопасности под псевдонимом Akinator связал проблему именно с обновлением расширения. К 26 декабря команда Trust Wallet официально подтвердила факт компрометации. Сооснователь Binance Чанпэн Чжао (CZ) объявил, что все пострадавшие пользователи будут полностью возмещены за счет фонда SAFU. Скомпрометированная версия была удалена из магазина, а в качестве исправления выпущена версия 2.69. Пользователям рекомендовали перевести средства на новые кошельки.
Однако публичная история инцидента не раскрывает всей его глубины и технических нюансов, которые имеют критическое значение для понимания масштабов угрозы.
Расширенный радиус поражения: не только импорт сид-фраз
В большинстве первоначальных сообщений утверждалось, что атака затронула лишь пользователей, которые импортировали свои сид-фразы (секретные мнемонические фразы для восстановления кошелька) в расширение в период его компрометации. Это утверждение существенно преуменьшает реальный масштаб инцидента.
Вредоносный код активировался при *каждой* разблокировке кошелька, независимо от способа аутентификации - пароля или биометрии. Неважно, пользовались ли вы кошельком месяцами или открыли его всего один раз в период действия скомпрометированной версии: сид-фразы всех ваших кошельков внутри расширения были эксфильтрированы. Таким образом, любой, кто разблокировал Trust Wallet, пока была установлена версия 2.68.0, должен считать свой кошелек скомпрометированным.
Технический разбор механизма атаки
Атака осуществлялась через два файла, работавших в тандеме. Во-первых, злоумышленники перехватили аналитическую конечную точку. Расширение использовало сервис PostHog для сбора телеметрии. В файле "4482.js" была изменена инициализация SDK (комплекта средств разработки) таким образом, чтобы данные отправлялись на сервер, контролируемый атаковавшими - "api.metrics-trustwallet[.]com". Этот домен, маскирующийся под легитимную инфраструктуру Trust Wallet, служил для приема похищенных данных под видом телеметрии.
Непосредственная логика эксфильтрации была внедрена в файл "8423.js", в код процессов разблокировки. Вредоносная часть кода была инжектирована в оба пути аутентификации - по паролю и по биометрии, что обеспечивало полный охват. Код выполнял перебор всех кошельков в аккаунте пользователя, а не только активного. Сами сид-фразы помещались в поле с названием "errorMessage" внутри структуры данных, имитирующей стандартное аналитическое событие об успешной разблокировке. При беглом анализе кода это выглядело как метаданные об ошибке, однако фактически «ошибками» были 12-словные мнемонические фразы.
Признаки репакэджинга и дополнительные угрозы
Анализ структуры расширения выявил признаки того, что злоумышленники не внедряли код в сборочный конвейер Trust Wallet, а полностью переупаковали расширение. В файле "manifest.json" версии 2.68 отсутствовало критически важное поле "key", содержащее публичную ключевую подпись расширения. Его удаление позволяет переупаковать расширение с другой криптографической идентичностью, что указывает либо на отсутствие у атакующих доступа к оригинальному ключу подписи Trust Wallet, либо на намеренное устранение этого поля для уклонения от сигнатурного обнаружения.
Кроме того, в скомпрометированную версию был добавлен новый модуль "WebAssembly" ("WASM") для криптографических операций на эллиптической кривой secp256k1 (той самой, что используется в Bitcoin и Ethereum). Этот модуль экспортировал функции для подписи транзакций и манипуляций с приватными ключами, создавая дополнительную поверхность для атаки, которой не было в чистой версии.
Инфраструктура злоумышленников и планирование
Домен для эксфильтрации указывал на IP-адрес 138.124.70[.]40, где работал веб-сервер nginx. На этом же сервере был доступен интерфейс входа в систему хранения данных Synology DiskStation (DSM 6.2), что может свидетельствовать об использовании злоумышленниками NAS-устройства в качестве инфраструктуры. При прямом запросе сервер возвращал отсылку к вселенной «Дюны» - «Пряность должна течь». В контексте атаки «пряностью» были сид-фразы: контролируя их, злоумышленники контролировали средства.
Заголовок "Last-Modified" в ответах сервера показал, что инфраструктура была подготовлена уже 8 декабря - более чем за две недели до публикации вредоносного обновления 24 декабря. Это подтверждает, что атака была тщательно спланированной, а не спонтанной. Использование отсылок к «Дюне» также наблюдалось в других недавних атаках на цепочку поставок, например, в инциденте с пакетом Shai-Hulud в npm.
Ключевой открытый вопрос и выводы
Главный нераскрытый вопрос - как именно злоумышленникам удалось протолкнуть вредоносное обновление через официальные каналы Chrome Web Store. Возможные векторы включают компрометацию учетных данных разработчиков, атаку на конвейер непрерывной интеграции и доставки (CI/CD), инсайдерский доступ или социальную инженерию. Trust Wallet заявила, что расследование продолжается, и ответ на этот вопрос важен для всех издателей расширений.
Из этого инцидента можно извлечь несколько важных уроков. Для команд безопасности критически важно внедрять политику задержки обновлений расширений на 48-72 часа. Это позволяет новым версиям пройти публичную проверку сообществом до их установки в корпоративной среде. В данном случае вредоносная версия была обнаружена менее чем за 24 часа, и такая политика полностью предотвратила бы экспозицию. Кроме того, канун Рождества два года подряд становится окном для подобных атак, что требует особого планирования и повышенной готовности в этот период. Также необходимо отслеживать изменения в манифестах расширений, особенно удаление поля "key".
Издателям расширений необходимо проводить аудит своих сборочных и релизных процессов и внедрять механизмы верификации подписи, которые могут обнаружить несанкционированный репакэджинг. Для пользователей, которые разблокировали Trust Wallet в период с 24 по 26 декабря, единственной рекомендацией остается немедленный перевод средств на новый кошелек, созданный вне скомпрометированного расширения. Этот инцидент в очередной раз демонстрирует высокие риски, связанные с использованием браузерных расширений для критически важных операций, таких как управление криптовалютными средствами. Функциональность кошельков по умолчанию должна находиться в выделенных приложениях или аппаратных решениях, а не в контексте браузера.
Повторение сценария с Cyberhaven и Trust Wallet в один и тот же календарный период через официальный механизм обновлений Chrome указывает на устоявшуюся тактику. Защита не обязательно требует обнаружения каждой вредоносной версии самостоятельно. Достаточно не быть в первой линии обновления, позволив более широкому сообществу безопасности выступить в роли системы раннего предупреждения. Простая задержка в установке обновлений может стать одним из самых эффективных барьеров против подобных атак на цепочку поставок.
* Компания Meta и её продукты (включая Instagram, Facebook, Threads) признаны экстремистскими, их деятельность запрещена на территории РФ.
Индикаторы компрометации
Extension ID
- egjidjbpglichdcondbcbdnbeeppgdph
Compromised Version
- 2.68.0
Malicious Domain
- metrics-trustwallet.com
Exfiltration IP
- 138.124.70.40
PostHog API Key
- phc_b7MQeJq5OhCBJDKHWLA2c1ubYhbY5L97ZsZ66RGwq6O
Malicious Files
- 4482.js
- 8423.js
WASM Module
- 4f8cd8a01d2966c5de9b.module.wasm
