Кампания выстроена как цепочка из трёх последовательных шагов, каждый из которых злоупотребляет доверием к легитимным сервисам .
На первом этапе злоумышленники компрометируют контейнер Google Tag Manager (GTM) на целевом сайте и размещают в нём вредоносный тег, который активируется на каждой странице магазина. Поскольку скрипт загружается с googletagmanager.com — домена, которому безоговорочно доверяют и владельцы сайтов, и системы безопасности, — он легко обходит политики Content Security Policy (CSP) и блокировщики рекламы . GTM превращается в невидимый и практически неблокируемый канал доставки.
Вместо обращения к стороннему подозрительному серверу, тег в GTM запрашивает основное тело вредоносного скрипта с api.stripe.com. Злоумышленники хранят полноценный JavaScript-скиммер внутри поля Customer metadata (метаданные клиента) в своём собственном Stripe-аккаунте, используя для записи и чтения тестовый секретный ключ формата sk_test_... . Скиммер поступает на сайт с того же домена, который обслуживает легитимные платежи, поэтому межсетевые экраны и системы мониторинга аномалий не видят в этом трафике ничего подозрительного
.
Когда посетитель магазина вводит на странице оформления заказа данные банковской карты, личную информацию и платёжный адрес, скиммер фиксирует их и отправляет обратно в Stripe. Данные записываются в виде поддельных записей Customer или полей метаданных через тот же самый API . Поскольку исходящий трафик снова направляется к
api.stripe.com, он идеально сливается с реальными платёжными запросами, что делает кражу практически незаметной для журналов брандмауэра и систем выявления аномалий .
Тестовые секретные ключи Stripe (sk_test_...) дают полный доступ на чтение и запись в рамках изолированной «песочницы» и позволяют бесплатно создавать неограниченное количество поддельных клиентов и метаданных . Поскольку тестовые ключи никогда не инициируют реальных списаний, злоупотребление ими легко упустить из виду. Злоумышленники полагаются на то, что многие компании считают тестовую среду малоопасной и не проверяют активность в ней с тем же вниманием, что и боевые операции.
Отдельную угрозу представляет компрометация боевых секретных ключей (sk_live_...), которая дала бы злоумышленнику прямой доступ к реальным транзакционным данным, возможность инициировать возвраты и переводить средства . Хотя эта кампания использует тестовые ключи для скрытности, принцип остаётся общим: любые секретные ключи Stripe — это мощные учётные данные, которые никогда не должны появляться в клиентском коде или контейнерах Google Tag Manager
.
Пока кампания Magecart атакует процессы оформления заказов в интернет-магазинах, владельцы сайтов на WordPress столкнулись с не менее срочной угрозой в виде активно эксплуатируемой уязвимости в плагине Everest Forms Pro .
CVE-2026-3300 — это уязвимость удалённого выполнения кода (RCE), не требующая аутентификации. Она затрагивает плагин Everest Forms Pro, насчитывающий около 4000 активных установок . Уязвимость получила оценку 9.8 по шкале CVSS и присутствует во всех версиях вплоть до 1.9.12 включительно
.
Уязвимость находится в функции process_filter() дополнения Calculation. Когда функция «Complex Calculation» (Сложные вычисления) включена, плагин берёт значения, введённые пользователем в текстовые поля формы, напрямую вставляет их в строку PHP-кода и передаёт результат в опасную конструкцию eval() без надлежащего экранирования . Функция
sanitize_text_field(), применяемая к пользовательскому вводу, не обезвреживает одинарные кавычки и другие символы, имеющие специальное значение в контексте PHP-кода. Это позволяет злоумышленнику выйти за пределы предполагаемой строки и внедрить произвольные команды .
Wordfence заблокировала более 29 300 попыток эксплуатации и сообщает, что в ходе пост-эксплуатационной активности злоумышленники создают несанкционированные учётные записи администраторов . Владельцам сайтов следует обратить внимание на индикаторы компрометации: появление новых администраторов с подозрительными именами, неожиданные файлы на сервере и подозрительные исходящие соединения
.
api.stripe.com в директиву script-src без крайней необходимости. Если это неизбежно — используйте Subresource Integrity (SRI) с указанием хешей. Запрет на выполнение инлайн-скриптов создаст дополнительный уровень защиты eval() eval() и исходящие сетевые подключения к незнакомым IP-адресам. После устранения уязвимости обязательно выполните полную проверку целостности WordPress: контрольные суммы ядра, тем и файлов плагинов должны быть сверены с эталонными
Comments
0 comments