新たに発見されたmacOS向け情報窃取マルウェア「PamStealer」は、人気のオープンソースクリップボード管理ツール「Maccy」に偽装しながら、2段階の攻撃チェーンを通じて認証情報やブラウザデータ、クリップボードの内容を密かに収集します。
Jamf Threat Labsの研究者らは、このマルウェアの名称の由来を最も特徴的な挙動から突き止めました。窃取したパスワードを外部に送信する前に、macOSのPluggable Authentication Modules(PAM)APIを使ってローカルで検証するのです。これは、一般的な情報窃取マルウェアが通常頼りにするdsclやsecurityといったシェルベースの検証コマンドを回避する手口です。
PamStealerは、タイポスクワッティングドメインmaccyapp[.]comでホストされた、Maccy.scptという名前のコンパイル済みAppleScriptファイルを含むディスクイメージを通じて配布されます。
おとりのテキストには同形異義文字(ホモグリフ)が埋め込まれており、キリル文字やギリシャ文字がラテン文字と見分けがつかないように使われています。これにより、人間の目にはブランド表示が正規のものに見える一方で、単純な文字列照合による検知はすり抜けてしまいます。
ファイルを開くと、被害者にコマンド+Rキーを押してスクリプトを実行するよう促す指示が表示されます。この一つの操作によって、埋め込まれたJavaScript for Automation(JXA)ペイロードが実行され、実際の悪意ある処理が静かに始まります。
このJXAダウンローダーは、CPUアーキテクチャ、ロケール、キーボードレイアウト、タイムゾーンといったデバイスフィンガープリント情報から暗号化キーを導き出し、隠された設定ファイルを復号します。この設定ファイルはApple Silicon搭載機でのみ正しく開くよう作られており、Intel Mac上では、マルウェアが静かに動作を停止する仕組みになっています。
さらに、ロシア語、ベラルーシ語、カザフ語のロケール、タイムゾーン、キーボードレイアウトなど、CIS(独立国家共同体)地域を示すシグナルの一覧とシステムを照合し、いずれかに一致した場合は実行を中止します。この挙動から、攻撃者の出身地が推測できます。
これらのチェックを通過すると、curlのようなコマンドラインツールではなく、ネイティブのNSURLSession呼び出しを使って第2段階のペイロードを取得します。その後、Finder.appやSoftware Update.appを装った偽のバンドルに配置し、アドホック署名を施したうえで、Dockに表示させることなく起動します。
このペイロード自体は、Rustで書かれた軽量なarm64 Mach-Oバイナリです。macOS向け情報窃取マルウェアではSwift、Go、Objective-Cが使われるのが一般的で、Rustの採用は依然として珍しいケースといえます。
組み込まれたSQLite呼び出しを通じて、ブラウザや暗号資産ウォレットのデータベースから直接認証情報を抜き取ります。またKeychainのデータについては、Security.frameworkを静的にリンクするのではなく実行時に読み込む方式でアクセスしており、これによって表面的なバイナリ解析ではその機能が見えにくくなっています。
クリップボードの内容は、pbpasteユーティリティを不規則な間隔で繰り返し起動することで取得されます。
パスワードの窃取そのものは、システム変更の許可を求める本物そっくりの偽ダイアログを通じて行われます。入力された値はpam_authenticateによってリアルタイムに検証され、失敗するたびに再入力を促すことで、正しいパスワードが確認できるまで繰り返されます。
永続化のために、このマルウェアは最新のSMAppService APIと、レガシーなログイン項目リストを利用するドロップ済みのヘルパーバイナリの両方を通じて自身を登録し、二重の足がかりを確保しています。
Jamfによると、その後の段階では、起動から最大40分遅延して表示される偽のシステムアラートを通じて、疑念を抱かれないよう巧妙にタイミングを計りながら、フルディスクアクセス権限の取得を試みるとのことです。
窃取されたデータは、ディスクに一切書き込まれない実行時生成キーを用いたChaCha20-Poly1305暗号化によって、avenger-sync[.]live/api/syncへ送信されます。
アナリストらはメモリデバッグによって実際に使用中のキーを復元し、EthereumのRPCエンドポイントを参照するサーバー側の設定情報を復号することに成功しました。この関連性は後に実際のネットワークトラフィックでも確認されており、堅牢なコマンド&コントロール(C2)基盤の可能性、あるいはウォレットの偵察活動を示唆しています。
注: IPアドレスおよびドメイン名は、誤って名前解決やハイパーリンク化されるのを防ぐため、意図的に無害化表記(例: [.])にしています。再度有効な形式に戻す作業は、MISP、VirusTotal、あるいは自社のSIEMといった管理された脅威インテリジェンス基盤上でのみ行ってください。
翻訳元: https://cyberpress.org/pamstealer-macos-infostealer/