偽の暗号資産ウォレットアプリがMacの認証情報を狙うマルウェア「PamStealer」を拡散

macOS向け情報窃取マルウェア「PamStealer」の新たな亜種が、偽の暗号資産ウォレットアプリを通じて配布されていることが分かりました。サーバー側で復号処理を補助する仕組みとSwift製のペイロードを使い、認証情報やブラウザデータ、Keychain項目、機密性の高いユーザーファイルを窃取します。

今回のキャンペーンは、Wavelというマルチチェーン対応ウォレットになりすましており、回避能力と永続化能力の両面で大幅なアップグレードを遂げています。

従来バージョンでは、コンパイル済みのJavaScript for Automation(JXA)ドロッパーを使い、Rust製のセカンドステージペイロードを配布していました。

最新の亜種では、攻撃者はRust製のステーラーを汎用Swift Mach-Oバイナリに置き換え、ペイロードの復号処理を攻撃者が管理するインフラストラクチャ側に移しています。

感染は、多要素対応の暗号資産ウォレットサービスを装う詐欺サイトwavel[.]appから始まります。「Download for macOS」をクリックすると、y32me8[.]com/Wavel.dmgからディスクイメージがダウンロードされます。

このDMGファイルには、拡張子が.scptコンパイル済みAppleScriptファイルが含まれています。Finderは通常拡張子を非表示にするため、この悪意あるファイルは無害な汎用文書のように見え、開くとScript Editorが起動し、埋め込まれたJXAコードが実行される仕組みです。

AppleScriptのソースコード自体にダウンローダーや復号用の素材をすべて埋め込むのではなく、JXAレイヤーは大きなBase64のブロブをデコードし、それを直接/bin/zshにパイプで渡します。

これにより生成されたzshドロッパーはバックグラウンド関数を起動して終了し、以降の実行処理をScript Editorから切り離すことで、プロセスツリーの調査を難しくしています。

このドロッパーは、攻撃者が管理するインフラwavel.apple03cloudstore[.]comから、pkgunpackという名前のカスタムMach-Oユーティリティをダウンロードします。

Image

そのファイルの隔離属性(quarantine attribute)を除去し、実行前にアドホックなコード署名を適用します。

このユーティリティはApple SiliconとIntel Macの両方に対応しており、X25519鍵交換、SHA-256、AES-256-GCMを使ってペイロードのデータ暗号化キーを復号します。

この設計が特に注目される点は、暗号化された第2ステージのアーカイブが静的解析だけでは復元できないことです。

感染が発生するたびに新しい使い捨ての鍵ペアが生成され、その公開鍵がコマンド&コントロール(C2)サーバーに送信されます。サーバー側はそれに応じて、ラップされた復号キーを返します。

PamStealerを最初に報告したJamf Threat Labsは、2026年7月にクリップボード管理ツール「Maccy」を装って出現したこのマルウェアについて、最新のキャンペーンでは配布の仕組みを変えながらも、認証情報窃取という中核的な挙動は維持されていると述べています。

DownloadAntivirus Software

偽の暗号資産ウォレットアプリ

サーバー側は鍵交換を完了させるために必要な秘密鍵を保持しており、これによりペイロードの復元処理は、攻撃者が管理する稼働中のセッションに紐づけられています。

ここで使われているコンパイル済みJXA形式は、PamStealerの初期バージョンや、それ以前のScoppr、Nancyで確認されたものと同一です。

ペイロードを復号した後、このマルウェアは~/Library/Application Support/System/Finder.app配下にWavel.appをインストールし、macOSの構成要素になりすまします。

Image

さらに、com.apple.finder.agentという名前のLaunchAgentを作成し、ログイン時に実行され、クラッシュ後は再起動し、15秒ごとに実行されるよう設定します。

このマルウェアはまた、永続化の登録処理を行う前にBackgroundTaskManagementAgentBTMNotificationAgent、Notification Centerの各プロセスを一時停止させることで、macOSのバックグラウンド項目に関するアラートを抑制します。

DownloadAntivirus Software

PamStealerは、ローカルの修復スクリプト、改変された~/.zshrcファイル、そしてグローバルなGitフックを通じて、永続化をさらに強固なものにしています。

これらの仕組みにより、防御側がある永続化レイヤーを除去しても、悪意あるアプリケーションとLaunchAgentを復元できるようになっています。さらに、ローカルに保存されたバックアップアーカイブによって、コマンド&コントロールインフラと通信しなくても復旧が可能です。

内部的にMacClientと識別されているSwift製のステーラーは、偽の「macOSが変更を許可することを求めています」というパスワード入力画面を表示し、続けて偽のアプリケーション破損警告を表示します。

入力されたパスワードは、macOSのPluggable Authentication Modules(PAM)を通じてローカルで検証されるため、攻撃者は情報を外部に送信する前に、その認証情報が実際に機能する可能性が高いことを確認できます。

このPAMを利用した検証という特徴的な挙動こそが、「PamStealer」という名称の由来となっています。

このマルウェアは、Chromeの各リリースチャンネル、Edge、Brave、Opera、Firefox、Arc、Zen、Waterfox、LibreWolf、Yandex Browser、CocCocなど、17種類のアプリケーションのブラウザデータベースを標的としています。

さらに、Keychainデータ、暗号資産ウォレット情報、ブラウザ拡張機能、シェルの履歴、Gitの設定情報、そして被害者のログインKeychainデータベースの取得も試みます。

注目すべき点として、このステーラーはシステムのプロファイリングデータを収集するほか、dsclを使ってOpen Directoryから被害者のmacOSアカウント写真を直接抽出できるため、攻撃者側が盗んだ認証情報と実在の人物の画像を紐づけられる可能性があります。

収集されたデータはZIPアーカイブに圧縮され、固定のX-Upload-Tokenヘッダーを使ってwavel.apple03cloudstore[.]comにアップロードされます。このヘッダーは、ネットワーク上での検知に役立つ痕跡となります。

組織は、判明しているドメインをブロックし、偽のFinder.appパスや不審なcom.apple.finder.agentLaunchAgentを調査するとともに、想定外のGitフックや.zshrcの改変がないか確認する必要があります。

ユーザーは、ウォレットソフトウェアを必ず検証済みの正規ベンダーサイトからのみダウンロードし、ディスクイメージ内に含まれる予期しない.scptファイルは開かないようにしてください。

SOCのアラート調査時間を1件あたり21分短縮。即時対応に必要なIOCコンテキストでSOCを強化: TI LookupをSOCに統合する

翻訳元: https://gbhackers.com/fake-crypto-wallet-app/

本記事は gbhackers.com の記事を翻訳・要約したものです。