Packagist: вредоносные темы OphimCMS с jQuery от FUNNULL
Недавнее исследование выявило шесть вредоносных пакетов, размещённых на Packagist, которые маскировались под темы для OphimCMS — CMS на базе Laravel, распространённую во Вьетнаме. В заражённых пакетах злоумышленники использовали троянские JavaScript-библиотеки на базе jQuery для фильтрации URL, внедрения рекламы и перенаправления пользователей на вредоносные сайты, управляемые инфраструктурой, связанной с FUNNULL.
Краткая суть инцидента
Атака реализована через легитимно выглядящие темы, поставляемые как сторонние пакеты. Вредоносная полезная нагрузка встроена в JavaScript-файлы тем и доставляется с помощью подмены/встраивания библиотек jQuery. Впрочем, базовая PHP-кодовая база тем не изменялась — все изменения ограничены клиентской частью (JavaScript).
Ключевые технические детали
- Количество затронутых пакетов: 6.
- Основной вектор внедрения: вредоносные JavaScript-файлы, сопровождающие темы (используется jQuery как механизм доставки).
- Тип поведения: фильтрация URL, эксфильтрация данных просмотра, внедрение рекламы, перехват кликов и перенаправления на сторонние ресурсы.
- Инфраструктура C2: домены управления кодируются в некоторых вариантах при помощи шифра Caesar; термин «C2» используется для обозначения серверов управления и контроля.
- Обфускация и условия активации: использованы техники усложнения анализа — исполнение только на определённых платформах, активация после многократных посещений, управление через cookies.
- Специализация под мобильные платформы: в некоторых вариантах мобильных пользователей перенаправляют на площадки азартных игр и контент для взрослых.
- Фактические последствия на сайте: скрытие легального интерфейса с помощью наложений рекламы, показы нежелательного контента и мошеннических объявлений.
Участники и инфраструктура
Перенаправления и вредоносные домены связывают эту кампанию с FUNNULL — поставщиком инфраструктуры, базирующимся на Филиппинах, который находится под санкциями США за участие в инвестиционных криптовалютных мошенничествах и ассоциирован с большим количеством вредоносных доменов. Использование такой инфраструктуры делает кампанию масштабной и устойчивой к блокировкам.
Затронутые пакеты и их поведение
- theme-dy, theme-mtyy, theme-rrdyw — содержат значительную полезную нагрузку: эксфильтрация URL-адресов пользователей и внедрение рекламы.
- theme-pcc — демонстрирует поведение перехвата кликов (clickjacking / click interception), манипулируя взаимодействием пользователя для показа мошеннической рекламы.
- Остальные пакеты реализуют смешанные варианты: от кодирования C2 до наложения рекламы и сложной обфускации активации.
Масштаб и риск
По данным исследования, суммарно зарегистрировано более 2750 установок затронутых пакетов. Воздействие является значительным: любой сайт, использующий эти темы, рискует подвергнуть своих посетителей утечке данных, нежелательной рекламе и опасным перенаправлениям. Причём некоторые векторы атак не имеют географических ограничений и могут затронуть глобальную аудиторию.
«Этот случай иллюстрирует растущую тенденцию к компрометации supply chains программного обеспечения, когда законные платформы превращаются в оружие с помощью, казалось бы, безобидных обновлений».
Почему это опасно
- Клиентская компрометация: изменение только JavaScript оставляет бóльшую часть серверного кода нетронутой, что усложняет обнаружение при поверхностной проверке PHP-файлов.
- Сложная обфускация и условная активация усложняют статический анализ и автоматическое обнаружение на этапе CI/CD.
- Связь с санкционированной инфраструктурой FUNNULL повышает вероятность наличия больших сетей мошеннических доменов и длительного функционирования кампании.
- Атаки ориентированы как на desktop, так и на мобильных пользователей, включая специфические перенаправления на азартные платформы и контент для взрослых.
Рекомендации для разработчиков и администраторов
- Немедленно проверить используемые темы OphimCMS и зависимые пакеты на наличие упомянутых имён (theme-dy, theme-mtyy, theme-rrdyw, theme-pcc и т. п.).
- Анализировать все поставляемые JavaScript-файлы: искать обфусцированный код, необычные сетевые запросы и использование внешних доменов.
- Применять интеграционные сканеры зависимости и скриптовый аудиторинг в CI/CD; включить проверку контента в node_modules / vendor на предмет неожиданных вставок.
- Ограничить исполнение сторонних скриптов: внедрять Content Security Policy и Subresource Integrity там, где это возможно.
- Мониторить сетевой трафик на предмет подозрительных запросов к неизвестным доменам и блокировать домены, связанных с FUNNULL.
- Удалять и заменять заражённые пакеты на проверенные аналоги; возвращаться к резервным копиям при необходимости.
- Повысить бдительность у команд, отвечающих за supply chain: проверять пакеты перед публикацией и обновлением, ограничивать использование непроверенных сторонних тем.
Вывод
Обнаруженная кампания — наглядная иллюстрация современной тактики злоумышленников: компрометация цепочек поставок программного обеспечения (supply chains) и использование клиентских скриптов для масштабных мошенничеств. Сценарии, в которых «легитимные» обновления становятся вектором атаки, подчёркивают необходимость постоянного аудита сторонних пакетов, усиленного контроля JavaScript-кода и быстрого реагирования на инциденты.
Ключевое сообщение: не доверяйте внешним темам и пакетам без предварительной проверки — особенно в случаях, когда они включают клиентский код, способный выполнять сетевые запросы и манипулировать пользовательским интерфейсом.
Отчет получен из сервиса CTT Report Hub. Права на отчет принадлежат его владельцу.
Ознакомиться подробнее с отчетом можно по ссылке.
