概要
SentinelLABSは2026年6月、AppleのXProtectによって検知されたRust製macOSインプラント「macOS.Gaslight」を分析・公開した。このマルウェアは北朝鮮(DPRK)系の脅威アクターによるものと高い確度で帰属評価されており、VirusTotalには同年5月22日にアップロードされていた。Gaslightが特に注目されるのは、従来のサンドボックス回避手法ではなく、AIを活用したセキュリティ解析ツールそのものを標的にしたプロンプトインジェクション技術を採用している点だ。SentinelOneの研究者Phil Stokesは「このマルウェアはサンドボックスではなく、エージェントの知覚を攻撃する」と述べており、セキュリティ業界における新たな攻撃の局面を示している。
プロンプトインジェクションによるAI解析妨害
Gaslightの最も際立った特徴は、バイナリ内に埋め込まれた3.5KBのMarkdown形式のデータブロックだ。このブロックには38件の偽の「システムメッセージ」が含まれており、LLMを活用したマルウェアトリアージエージェントを混乱させるよう設計されている。埋め込まれた文字列はメモリ枯渇、トークン期限切れ、Redisの接続失敗、SQLインジェクション警告といった実在しそうなシステムエラーをMarkdown書式で模倣しており、AIエージェントが自らのセッションを疑い、解析を中断・打ち切るよう誘導する。これらはマルウェア自身の動作とは一切無関係なダミーコンテンツだが、LLMベースの自動解析パイプラインにとっては正規のシステムメッセージと区別しづらい内容となっている。
技術的な詳細
C2通信とOPSEC
Gaslightは指令制御(C2)チャネルとしてTelegram Bot APIを使用し、ポーリングループ方式でオペレーターと通信する。通信はメッセージごとに新しいノンスを生成するAES-GCM暗号化と、SecTrustSetAnchorCertificatesOnlyを用いた証明書ピニングで保護されており、企業環境でのシステムプロキシ設定にも対応する。また、Telegramのボットトークンをランタイムログから自動で難読化(「file/token:redacted」に置換)することで、ログやクラッシュダンプからの認証情報回収を防ぐ高度なOPSEC設計が施されている。
情報窃取機能
マルウェアには6.6KBのPythonスティーラーが同梱されており、ブラウザデータ(Chrome、Brave、Firefox、Safari)、ターミナルコマンド履歴、インストール済みアプリ一覧、実行中プロセス、システムプロファイル、macOSキーチェーンデータベースを収集する。収集されたデータはZIPアーカイブに圧縮されTelegram経由で送信される。Pythonインタープリタ自体はastral-sh/python-build-standaloneプロジェクトからスタンドアロンのCPython 3.10.18をランタイムに取得するため、システム標準のPythonに依存しない。
永続化とコマンド体系
Appleの名前空間を偽装したLaunchAgentラベル「com.apple.system.services.activity」でシステム起動時に永続化する。サポートされるコマンドはヘルプ・識別情報取得・シェルコマンド実行(execvp)・PID指定のプロセス終了・ファイル持ち出し・インプラント停止の6つが確認されており、7番目の「focus」コマンドは用途不明のまま残されている。
帰属評価と侵害指標(IOC)
SentinelLABSはApple XProtectの検知ルール「MACOS_BONZAI_COBUCH」との関連から、本インプラントがDPRK系macOS活動クラスターに属すると高い確度で評価している。主なIOCは以下のとおり。
- Mach-Oハッシュ(SHA-256):
6328567511d88fdc2ae0939c5ef17b7a63d2a833881900de018a4f12f4982525 - LaunchAgentラベル:
com.apple.system.services.activity - Pythonペイロードハッシュ:
baabf249c77bc54c54ab0e66e15af798bd28aa5b4683554456a8b73ab8741239 - Bashインストーラーハッシュ:
b3c56d689414343589f38394d19ba2fe9a518133281200faa0556ba4e4136394
セキュリティへの示唆
Gaslightの発見は、脅威アクターがAI支援のセキュリティ解析パイプラインを次の攻撃対象として積極的に研究していることを示す。従来のサンドボックス回避が検知エンジン自体を避けるものだったのに対し、プロンプトインジェクションはLLMエージェントの判断を歪めてアナリストに誤情報を渡す手法であり、AI駆動の防御体制に新たな信頼性の問題を提起する。自動化されたマルウェア解析パイプラインを運用するSOCやセキュリティチームは、LLMエージェントへの入力データの検証と、AI生成の解析結果を鵜呑みにしない運用体制の整備を検討する必要がある。