#ParsedReport #ChatGPT #Translated
Autotext: (TI Report Analyser + ChatGPT + Auto Translate)
------
Вариант PamStealer для macOS распространяется в виде поддельного установщика криптокошелька Wavel. Его многоэтапный полезный груз использует серверное шифрование, обеспечивает закрепление (persistence) через LaunchAgent и развертывает стиллер на Rust/Swift, который перехватывает пароли, данные браузеров, ключевые цепочки, кошельки, системную информацию, историю командной строки и файлы пользователей, после чего выгружает их с помощью HTTP PUT.
-----
Новый вариант PamStealer нацелен на пользователей macOS через поддельный установщик криптокошелька Wavel, размещённый на wavel.app. Скачанный файл DMG содержит скомпилированный файл AppleScript/JXA с расширением `.scpt`. При открытии в Script Editor JXA декодирует zsh-скрипт, закодированный в base64, и передаёт его в `/bin/zsh`, выступая преимущественно в роли носителя, а не выполняя самостоятельное расшифрование или подготовку (staging).
Дроппер zsh загружает утилиту Mach-O с именем `pkgunpack` и зашифрованную полезную нагрузку с `wavel.apple03cloudstore[.\]com`. Он удаляет атрибут карантина с помощью `xattr -cr` и применяет ad-hoc подпись с использованием `codesign -fs - --deep`. Утилита `pkgunpack` генерирует новую эфемерную пару ключей при каждом запуске. Дроппер отправляет эфемерный публичный ключ и nonce на сервер, который возвращает обернутый ключ шифрования данных. Утилита использует X25519, функцию вывода ключа на основе SHA-256 и AES-256-GCM для расшифровки полезной нагрузки. Поскольку сервер хранит приватный ключ, а при каждом запуске используется новая пара ключей, зашифрованную полезную нагрузку невозможно статически восстановить или повторно использовать без взаимодействия с сервером.
Расшифрованный архив содержит `Wavel.app`, который устанавливается через LaunchAgent. Дроппер пытается подавлять уведомления macOS о фоновых элементах, приостанавливая процессы `BackgroundTaskManagementAgent`, `BTMNotificationAgent` и `NotificationCenter` во время регистрации, а затем завершая работу приостановленных процессов. Он также разворачивает несколько избыточных механизмов восстановления закрепления и поддерживает локальный резервный архив.
Стиллер второй ступени, `r8afup9un0`, представляет собой FAT-бинарный файл 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`, хеша файла и размера файла.
Post #32691
33
CTT Report Hub #ParsedReport #CompletenessHigh 22-09-2026 PamStealer adapts again: a move to Swift with a server-side decryption chain https://www.jamf.com/blog/pamstealer-wavel-macos-infostealer/ Report completeness: High Threats: Pamstealer Typosquatting_technique…