偽のClaude検索結果がmacOSユーザーをMacSync Stealerに誘導
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
脅威アクターがGoogle検索結果でのマルウェア広告を悪用し、悪意のある実行命令を含む正当なClaude.aiの共有会話へユーザーをリダイレクトしています。 curl コマンドを実行します。この攻撃チェーンは、MacSyncを提供します。これは高機能なmacOS用の情報窃取及びRATで、資格情報、キーチェーンの秘密、および暗号通貨ウォレットデータの搾取を目的としています。このマルウェアは、メモリー内実行とTCC権限の悪用を含む複雑な6段階のキルチェーンをたどります。
調査
Huntressのアナリストは、顧客が偽のClaudeインストールガイドを通じて侵害された後、マルウェア広告キャンペーンを調査しました。研究者は攻撃者の保護対策を回避し、敵のインフラストラクチャから直接マルウェアサンプルを取得しました。調査により、 zsh 持続性を確立するために使用されるローダー、AppleScriptベースのデータ窃取、およびMach-O RATを含む多段階の実行チェーンが明らかになりました。
軽減策
ユーザーは、信頼できないコマンドをターミナルでコピーして実行しないようにすべきです。たとえ正当なドメインや信頼できるドメインに指示が表示された場合でも同様です。セキュリティチームは、シェルプロセス内の疑わしい curl 活動やBase64でエンコードされたコンテンツを監視すべきです。BlockBlockやLuLuのようなツールを使用して、macOSの持続性メカニズムや承認されていないアウトバウンドネットワーク接続を検出することもできます。
対応措置
MacSyncの活動が検出された場合、影響を受けたmacOSデバイスをすぐに隔離し、さらなるデータ搾取を防ぐべきです。調査者は、シェル履歴およびエンドポイントテレメトリについて不正な curl or zsh 実行を確認すべきです。TCC権限の変更とともに、無許可のLaunchAgentsや変更されたアプリケーションバイナリ(特に暗号通貨ウォレットに関連するもの)も調査すべきです。
攻撃フロー
検出
疑わしいCurl実行試行 [MacOS](cmdline経由)
アーカイブがMacOSの一時フォルダー内で作成されました(file_event経由)
検出するためのIOC(SourceIP):ClaudeのGoogle検索がどのようにMacSyncに繋がったか
検出するためのIOC(DestinationIP):ClaudeのGoogle検索がどのようにMacSyncに繋がったか
悪意のある検索結果がMacSync情報窃取ツールに繋がる [Webサーバー]
Mach-O RATのアップロード/コマンド&制御接続 [Windowsネットワーク接続] via WebSockets
Curlを使用したMacSyncマルウェア広告キャンペーンの検出:Zshローダー [Linuxプロセス作成]
シミュレーション実行
前提条件:テレメトリー及びベースライン・プリフライトチェックをパスしていること。
合理性:このセクションは、検出ルールをトリガーするために設計された敵対者技術 (TTP) の正確な実行について詳述します。コマンドと物語は、識別されたTTPを直接反映し、検出ロジックによって期待される正確なテレメトリを生成することを目的とする必要があります。抽象的または無関係な例は、誤診につながります。
-
攻撃の物語とコマンド: 敵対者は偽のソフトウェアアップデート(マルウェア広告)を通じてユーザーを標的にしています。ユーザーがターミナルに提供されたコマンドを実行すると、
curl悪意のあるスクリプトを取得します。このスクリプトは即座にzshでパイプされます。スクリプトには特定の文字列daemon_functionが含まれており、悪意のあるバックグラウンドプロセスを隠すのに使用されます。検出ルールは、特にcurl,zshとdaemon_functionコマンドライン内の文字列の組み合わせを探して、この特定のキャンペーンを識別します。 -
回帰テストスクリプト:
#!/bin/bash # MacSyncマルウェア広告検出の検証用シミュレーションスクリプト。 # スクリプトを取得して実行するワンライナーをユーザーが実行する様子をシミュレートします。 echo "[+] MacSyncシミュレーション開始..." # ローカルで「悪意のある」スクリプトを作成し、その後ルールが探す正確なコマンドラインパターンを実行します。 echo "function daemon_function() { echo 'データを搾取中...'; }; daemon_function" > /tmp/fake_payload.sh chmod +x /tmp/fake_payload.sh # これは正確なパターンです:curl + zsh + daemon_function # サブシェルを使用してパイプ動作をシミュレートします echo "[+] 悪意のあるコマンドラインを実行中..." curl -s http://localhost/fake_payload.sh | zsh -s daemon_function echo "[+] シミュレーションコマンドが実行されました。" -
クリーンアップコマンド:
# シミュレーションされたペイロードと一時ファイルを削除します。 rm /tmp/fake_payload.sh echo "[+] クリーンアップ完了。"