「GhostApproval」と名付けられた新たに公表された脆弱性パターンが、Amazon Q Developer、Anthropic Claude Code、Cursor、Google Antigravity、Augment、Windsurfなど主要なAIコーディングアシスタントの信頼境界における重大な欠陥を露呈させています。
脆弱性評価サービス
この問題は、攻撃者がシンボリックリンク(シムリンク)を悪用してワークスペースの分離を回避し、Human-in-the-Loop(人間による確認)の保護機構を操作できることを示すもので、任意のファイル書き込みや開発者システム上でのリモートコード実行につながる可能性があります。
GhostApprovalの核心は、以前から知られているUnixのセキュリティ上の弱点であるシンボリックリンク追跡(CWE-61)を蘇らせ、より現代的な問題であるユーザーインターフェースの虚偽表示(CWE-451)と組み合わせている点にあります。
AIコーディングアシスタントは通常、ファイルを変更する前にユーザーに確認ダイアログを表示し、ユーザーがコントロールを握っているという認識を強化します。しかし研究者らは、これらのツールがしばしば誤解を招くファイルパスを表示する一方で、プロジェクトのワークスペース外にある機密性の高い場所へシンボリックリンクを静かに解決していることを発見しました。

その結果、ユーザーは気づかないうちに、~/.ssh/authorized_keysやシェル設定ファイルといった重要なシステムファイルを変更する操作を承認してしまう可能性があります。
GhostApproval攻撃
この攻撃シナリオは単純でありながら、非常に効果的です。悪意のあるリポジトリには、プロジェクト設定ファイルのような一見無害なファイルが含まれていることがありますが、実際にはそれが機密性の高いパスを指すシンボリックリンクになっている場合があります。
開発者がAIエージェントの提示するセットアップ手順に従うと、アシスタントは攻撃者が制御するコンテンツを、解決先のターゲットに書き込んでしまいます。典型的な概念実証(PoC)では、これにより攻撃者のSSHキーが被害者のauthorized_keysファイルに追加され、認証情報を必要としない永続的なリモートアクセスが可能になります。

GhostApprovalが特に懸念される点は、いくつかのケースにおいてAIエージェントが内部的にはリスクを認識しているにもかかわらず、それをユーザーに伝えていないことです。
例えば、Claude Codeがあるファイルパスの解決先がシェル設定ファイルであることを識別していたにもかかわらず、確認プロンプトには一見無害な元のファイル名しか表示されていなかったことが確認されています。この乖離は、Human-in-the-Loopモデルを実質的に骨抜きにし、ユーザーの承認を意味あるセキュリティ上のチェックポイントではなく単なる形式的なものへと変えてしまいます。
セキュリティコンサルティングサービス
この開示に対するベンダー各社の対応はまちまちでした。Amazon、Google、Cursorはこの問題を認め、パッチをリリースしました。Amazonは自社の言語サーバーでこの欠陥(CVE-2026-12958)に対処し、Cursorは重大な事例として追跡されていたCVE-2026-50549を解決しました。
Googleも修正を実施済みで、正式なCVE番号の割り当てを検討中です。一方、AugmentとWindsurfはこの指摘を認めたものの、完全な修正アップデートはまだリリースしていません。
Anthropicは当初、この報告を却下し、ユーザーがプロジェクトディレクトリを明示的に信頼し、ファイル操作を承認しているため、この攻撃は自社の脅威モデルの範囲外であると主張しました。しかし、このスタンスはセキュリティコミュニティ内で議論を呼んでいます。批判する側は、ユーザーに正確な情報が提示されている場合にのみ同意は有効であると主張しています。

インターフェースがファイル操作の本当の対象先を隠している場合、その承認をインフォームド・コンセント(十分な説明を受けた上での同意)とみなすことはできません。注目すべきは、Claude Codeの後続バージョンでシンボリックリンク解決に関する警告が導入されたことで、当初は却下したものの、緩和策への転換がうかがえます。
影響を受けたツールの中でも、AugmentとWindsurfは特に深刻な挙動を示しました。Augmentはシンボリックリンクを介した読み取り・書き込み操作をユーザーの確認なしに許可しており、サイレントなデータ流出やシステム改変を可能にしていました。
一方Windsurfは、承認ダイアログを表示する前にファイル書き込みを実行しており、このプロンプトは事実上、予防的な制御ではなく「取り消し」の仕組みにすぎないものとなっていました。
Wizによれば、GhostApprovalが持つより広範な意味合いは、AIコーディングアシスタントが急速に普及する一方で、古典的なセキュリティ上の落とし穴を引き継ぎつつ、リスクを見えにくくする新たな抽象化レイヤーを持ち込んでしまっているという点にあります。
セキュリティコンサルティングサービス
自律的なファイル操作と誤解を招くUI要素の組み合わせは、特に信頼できないリポジトリとやり取りする際に、重大な攻撃対象領域を生み出します。
セキュリティ専門家は、プロンプトを表示する前に正規のファイルパスを解決すること、ワークスペース外の場所を対象とする操作についてはユーザーに明確に警告すること、そしてファイル書き込みが行われる前に認可を厳格に強制することなど、いくつかの緩和策を推奨しています。
さらに、シンボリックリンクの作成や機密ファイルの変更を監視するといった検知メカニズムは、攻撃チェーンの早期段階で悪用の試みを特定する助けとなります。
GhostApprovalは、AI支援開発における重要な設計上の課題、すなわち安全機構が存在するだけでなく、信頼に値するものであることを保証する必要性を浮き彫りにしています。AIエージェントが開発環境に対してより深い制御を獲得していく中で、ユーザーに提示されるセキュリティ上のサインの整合性を維持することは、システムのセキュリティとユーザーの信頼の両方を確保するうえで不可欠になるでしょう。
Interact with Cyber Threats in Windows, Linux, macOS VMs to Trigger Full Attack Chain - Analyse Malware & Phishing with ANY RUN