PamStealer нацелен на пользователей macOS через поддельный установщик Wavel
Новый вариант PamStealer нацелен на пользователей macOS и распространяется через поддельный установщик криптокошелька Wavel на сайте wavel.app. Заражённый DMG-файл содержит скомпилированный файл AppleScript/JXA, который запускает цепочку загрузки и установки стиллера.
Загрузка и установка PamStealer
Файл с расширением .scpt открывается в Script Editor. JXA декодирует скрипт zsh, закодированный в base64, и передаёт его процессу /bin/zsh. В этой цепочке JXA служит преимущественно носителем кода и не выполняет самостоятельное расшифрование или подготовку полезной нагрузки.
Дроппер на zsh скачивает с wavel.apple03cloudstore[.]com утилиту Mach-O pkgunpack и зашифрованную полезную нагрузку. Он удаляет атрибут карантина командой xattr -cr и применяет ad-hoc-подпись с помощью codesign -fs - --deep.
При каждом запуске pkgunpack генерирует новую эфемерную пару ключей. Дроппер отправляет эфемерный открытый ключ и nonce на сервер, который возвращает обёрнутый ключ шифрования данных. Для расшифрования полезной нагрузки утилита использует X25519, функцию вывода ключа на основе SHA-256 и AES-256-GCM. Приватный ключ хранится на сервере, а при каждом запуске создаётся новая пара ключей. Поэтому без обращения к серверу зашифрованную полезную нагрузку нельзя статически восстановить или использовать повторно.
Расшифрованный архив содержит приложение Wavel.app, которое устанавливается через LaunchAgent. Во время регистрации дроппер пытается подавить уведомления macOS о фоновых элементах: приостанавливает процессы BackgroundTaskManagementAgent, BTMNotificationAgent и NotificationCenter, а затем завершает их работу. Кроме того, он разворачивает несколько избыточных механизмов восстановления закрепления и сохраняет локальный резервный архив.
Сбор данных на компьютере жертвы
Стиллер второй ступени r8afup9un0 скомпилирован в универсальный бинарный файл Mach-O для архитектур arm64 и x86_64. Он переписан с Rust на Swift. Стиллер показывает поддельное окно аутентификации macOS и проверяет введённый пароль через интерфейс PAM с использованием службы login.
Вредоносная программа копирует базы данных учётных данных из семнадцати браузеров. Среди них варианты Chrome, Brave, Edge, Firefox, Arc, Zen, Waterfox, LibreWolf и Yandex. Перед сбором данных вспомогательные процессы браузеров принудительно завершаются, чтобы снять блокировки баз данных.
Стиллер также собирает сведения об аппаратном обеспечении, программном обеспечении, средствах защиты, дисплее и времени работы macOS. В число других собираемых данных входят JPEG-изображение профиля пользователя, полученное с помощью dscl, история команд в оболочке, файлы .zshrc, .bash_history и .gitconfig, ключевые цепочки (keychains), расширения браузеров, кошельки и другие файлы пользователя.
Данные собираются с помощью ditto в ZIP-архив, который затем проверяется и загружается запросом HTTP PUT. При передаче используются стабильные заголовки X-Upload-Token, хеш файла и его размер.
Отчет получен из сервиса CTT Report Hub. Права на отчет принадлежат его владельцу.
Ознакомиться подробнее с отчетом можно по ссылке.



