Швейцарская компания Swiss Post Cybersecurity обнаружила и проанализировала ранее неизвестную кампанию по распространению PURELOGS, вредоносной программы для кражи данных (информационный стилер). Уникальность атаки заключается в использовании многослойной цепочки доставки, где финальный вредоносный код был скрыт внутри изображения в формате PNG, загруженного с легитимного сайта Archive[.]org. Аналитик Louis Schürmann детально описал весь путь атаки - от фишингового письма до хищения конфиденциальной информации.
Описание
Кампания начиналась с фишингового письма, маскировавшегося под фармацевтический счет. Вложение в архиве ZIP содержало файл с расширением .js. Однако это был не браузерный JavaScript, а JScript для Windows Script Host (WSH), который выполняется с привилегиями операционной системы. После удаления нечитаемых символов, мешающих статическому анализу, скрипт запускал PowerShell для выполнения закодированной полезной нагрузки (payload) прямо в памяти, минуя запись на диск.
Именно поведение PowerShell-скрипта привлекло внимание исследователей. Вместо обращения к подозрительному домену, он загружал PNG-файл с ресурса Archive.org, чья безупречная репутация не вызывает подозрений у систем мониторинга. Изображение оставалось валидным, но после стандартного маркера конца файла (IEND) злоумышленники добавили Base64-закодированную полезную нагрузку между кастомными метками "BaseStart-" и "-BaseEnd". Скрипт извлекал эту скрытую часть прямо из оперативной памяти, никогда не сохраняя полный файл на диск, что обходило файловые системы защиты.
Расшифрованный код загружал в память .NET-сборку, известную как VMDetectLoader. Этот модульный загрузчик выполнял проверку на виртуальную среду для уклонения от автоматического анализа в песочнице (sandbox) и использовал технику внедрения в процесс (process hollowing). Он запускал легитимную утилиту Microsoft CasPol.exe в приостановленном состоянии, заменял её код в памяти на вредоносный и возобновлял выполнение. Таким образом, финальная стадия работала под видом доверенного системного процесса.
Инжектированный код оказывался не самим стилером, а распаковщиком, обфусцированным с помощью .NET-Reactor. Его работа была построена на событийной модели: завершение одного этапа автоматически запускало следующий. Сначала данные расшифровывались с использованием устаревшего алгоритма Triple DES (3DES), что могло быть попыткой избежать детектирования по сигнатурам современных шифров. Затем следовала декомпрессия GZip, и наконец, с помощью механизма Reflection в память загружался и исполнялся финальный модуль PURELOGS.
PURELOGS - это типичный представитель модели Malware-as-a-Service (MaaS), доступный для аренды на теневых форумах примерно за $150 в месяц. Его конфигурация, включая адрес командного сервера (C2) и набор активных модулей, хранилась в зашифрованном виде внутри ресурсов программы. Стилер демонстрировал широкий охват целей. Ключевой модуль атаковал браузеры на движке Chromium, извлекая мастер-ключ через Windows DPAPI для кражи паролей, cookies и данных банковских карт. Другой модуль систематически искал файлы более 30 десктопных криптокошельков (Bitcoin Core, Electrum) и данные более 70 браузерных расширений для Web3, таких как MetaMask и Phantom.
Полный список целей также включал Firefox, почтовые клиенты (Outlook, Thunderbird), мессенджеры (Telegram, Signal), FTP-клиенты и другое ПО. Эксперты отмечают, что подобные кампании не отличаются высочайшей сложностью, но эффективно используют многослойное уклонение от стандартных средств защиты. Их экономика построена на массовости: атаки нацелены на домашних пользователей и малый бизнес, где редко встречаются продвинутые системы EDR. Однако скомпрометированные в таких атаках личные учетные данные сотрудников затем часто используются для атак на корпоративные ресурсы, превращая инцидент на личном устройстве в угрозу для всей организации. Противодействие требует не столько сложных инструментов, сколько наличия детальной телеметрии и мониторинга аномального поведения процессов в системе.