Скрипт Adform взломан: злоумышленники подменяли криптокошельки на сайтах клиентов
Рекламная технологическая компания Adform подтвердила инцидент с модификацией собственного JavaScript-файла, который привёл к подмене криптовалютных адресов на сайтах клиентов. Атака зафиксирована 27 июля 2026 года — в этот день скрипт, обслуживаемый с домена s2.adform[.]net, содержал вредоносный код, перехватывающий и перезаписывающий номера кошельков Bitcoin, Ethereum и Tron.
Adform оперативно удалила скомпрометированный ресурс, уведомила пострадавших клиентов и сообщила о случившемся в правоохранительные органы. Компания также рекомендовала всем посетителям затронутых сайтов очистить кэш браузера — вредоносная версия файла могла остаться в кэше и продолжать действовать даже после исправлений на стороне сервера.
Как работал вредоносный скрипт
Независимый исследователь Max Maass опубликовал копию скомпрометированного файла trackpoint-async.js. В образце обнаружены два вредоносных блока, дописанных к легитимной библиотеке. Строки для замены обфусцированы с помощью XOR-ключа длиной в шесть байт.
- Первый блок отслеживает событие копирования и каждые четыре секунды пытается прочитать буфер обмена, чтобы подменить соответствующие адреса. Дополнительно он отправляет HTTP-запрос на сервер 84.32.102[.]230:7744 с именем хоста и путём страницы, которую посетил пользователь.
- Второй блок обходит текстовые узлы документа, перезаписывает значения в элементах input, textarea и contenteditable, а также восстанавливает позицию курсора после замены. Он перехватывает установщики значений, так что даже программная запись адреса фильтруется «на лету». Кроме того, скрипт перехватывает события copy, cut, paste и input.
Важно: подмена срабатывала не только при копировании через буфер обмена — введённые вручную в формы адреса также заменялись, если страница оставалась открытой.
Даже если вы заметите, что адрес неверен, и перекопируете кошелёк, он продолжит заменяться, — написал исследователь Кевин Бомонт, первым раскрывший компрометацию.
Масштаб и нераскрытые детали
Adform заявила, что не обнаружила свидетельств передачи IP-адресов или информации о посещённых сайтах. Однако в уведомлении об инциденте добавлено: «Технический анализ указывает, что такая передача могла быть возможной». Первый блок действительно формирует запрос с именем хоста и путём страницы — достиг ли он оператора, из образца неясно.
Точное количество затронутых сайтов и посетителей остаётся неизвестным. Расхождение во временных рамках также вызывает вопросы: Adform называет датой воздействия 27 июля, тогда как Бомонт утверждает, что наблюдал вредоносную активность в течение прошлой недели. Компания не публиковала индикаторы компрометации и не назвала злоумышленника.
Согласно годовому отчёту Adform за 2025 год, платформа обслуживала около 1800 клиентов и обеспечивала показ 1,5 миллиарда объявлений ежедневно в более чем 180 странах. Эти цифры описывают масштаб платформы, но не инцидента. Полезнее было бы знать, сколько загрузок страниц действительно получили изменённый ресурс, — таких данных Adform не раскрыла.
Атака на цепочку поставок
Компрометация общего файла trackpoint-async.js, который согласно документации Adform может выполняться на одной странице, в нескольких разделах или на всём сайте целиком, открыла злоумышленникам путь сразу ко множеству не связанных между собой ресурсов. Такой вектор классифицируется как атака на цепочку поставок (supply chain attack).
Пока страница с вредоносным скриптом была открыта, одного изменённого адреса в момент платежа хватило бы для перенаправления средств. Бомонт отметил, что на момент анализа файл и связанные с ним URL-ы, домены и IP-адреса не детектировались антивирусами на VirusTotal.
Adform не ответила на вопросы о том, как злоумышленники получили доступ к пути развёртывания скрипта, были ли фактически похищены средства, и почему публичное уведомление не содержит компрометационных индикаторов. Расследование продолжается.
Читайте также: Как распознать и обезвредить компьютерный вирус: руководство для новичков
Источник: The Hacker News
