GitHub CodespacesとCopilotの連携を悪用するサイバー攻撃-プロンプトインジェクションでGitHubの機密情報が漏洩する恐れ

セキュリティニュース

投稿日時: 更新日時:

GitHub CodespacesとCopilotの連携を悪用するRoguePilot-プロンプトインジェクションでGitHubの機密情報が漏洩する恐れ

Orca Securityの研究チームOrca Research Podは2026年2月16日、GitHub CodespacesでGitHub Copilot(VS CodeのCopilotエージェント機能を含む)がGitHub Issue本文を自動的に取り込み、攻撃者が埋め込んだ指示に従って機密情報を外部へ送信し得る問題を報告しました。結果として、Codespaces内のGITHUB_TOKENを奪取され、リポジトリの乗っ取り(改ざん・不正なPR作成など)につながり得るとしています。

本件は責任ある開示(Responsible Disclosure)としてGitHubへ報告され、GitHub側で修正が行われています。

概要

研究では、この攻撃をRoguePilotと命名し、受動的プロンプトインジェクション(Passive Prompt Injection)の一種だと位置付けています。攻撃者がIssueなど開発者が日常的に閲覧するコンテンツ内に指示を埋め込み、開発者がそれを意識してAIに入力しなくても、AIが自動処理する経路を踏ませることで意図しない動作を誘発します。

背景として、GitHubは2025年4月に、Issue画面からCode with Copilot Agent Modeを起動するとCodespaceが作成され、Issue本文をコンテキストとしてCopilotが作業を開始する機能を案内しています。

つまりIssueは、ユーザー投稿の非信頼コンテンツであるにもかかわらず、エージェント起動時の入力として自動的に流入してしまう設計でした。

原因

技術的な根は、単一のバグというより、複数要素の組み合わせが攻撃連鎖を成立させた点にあります。

  • Issue本文がCodespaces内のCopilotに自動投入されるため、非信頼コンテンツからエージェントへの入力経路が常時開いていた

  • 指示を見えにくくするため、HTMLコメントなどにより埋め込みを行える(人間では閲覧上は気づきにくい)

  • VS CodeがJSONスキーマをURLから取得する挙動を悪用し、外部通信を通じてデータ持ち出しに転用できる

  • GitHubリポジトリがシンボリックリンクを保持する特性などを組み合わせ、エージェントに想定外のファイル参照を誘導し得る

  • Codespacesには既定でGITHUB_TOKENが用意され、作成元リポジトリに対して読み書き権限を持つことがある

この結果、攻撃者が意図した一連の操作をCopilotに行わせ、トークンが漏えいした場合にリポジトリの改ざんなど供給網攻撃(AIが媒介するサプライチェーン攻撃)へ発展し得る、というのが本件の本質です。

攻撃が成立した場合の影響

漏えい対象として焦点になったGITHUB_TOKENは、Codespace作成元リポジトリに対して認証済み操作を行うために使われます。

GitHubはCodespacesがHTTPSでの認証にGITHUB_TOKENを用い、通常は1リポジトリに権限が限定されると説明しています。
しかし、たとえ1リポジトリに限定されていても、当該リポジトリ内での改ざん・不正PR・リリース改ざん・CI/CD経由の侵害といった波及を許す可能性があるため、実務上は重大です。

対応状況

OrcaはGitHubへ責任ある開示を行い、GitHubが迅速に対応し是正に協力したとしています。
また、セキュリティメディアはGitHub(Microsoft)が修正済みと報じています。
一方で、同種の受動的プロンプトインジェクションは設計や運用次第で再発し得るため、修正済みであっても組織側のガードレール整備が重要です。

情シス・開発基盤担当が取るべき実務対応

 Issue起点でエージェントを自動起動しない運用に寄せる

本件はIssue本文が自動でCopilotのコンテキストになる設計が起点でした。まずは、外部投稿が入り得るIssueからCodespaceを起動し、エージェントに初動タスクを与える運用を再点検してください。

Codespacesの外向き通信と既定設定を見直す

研究では、JSONスキーマの自動取得がデータ持ち出しに転用され得る点を示しています。組織の規程として、開発環境から不要な外部通信を抑える(プロキシ強制・許可リスト・DLP監視)ことは効果があります。
VS Code側にはスキーマダウンロードを制御する設定項目が存在するため、Codespacesのテンプレートや設定配布で防御側に倒すことも検討対象です。

GITHUB_TOKEN前提の被害想定と検知を用意する

GITHUB_TOKENはCodespacesで既定提供され、リポジトリ操作に使われます。想定すべきは、トークンが漏えいした場合の改ざんや不審なpush/PR作成です。
監査ログの監視、重要ブランチ保護、必須レビュー、署名付きコミット運用など、トークン単体で一気に改ざんしにくい統制を重ねてください。

シンボリックリンクや開発者コンテンツを攻撃入力として扱う

Orcaは、Issue/PR/リポジトリ内コンテンツを非信頼入力として扱い、エージェントが受動的に処理しない設計、シンボリックリンクで作業領域外を参照しない設計、トークンの寿命短縮と権限最小化など、フェイルセーフを提言しています。
自社の開発者体験を損なわない範囲で、どこまでを自動化し、どこで人の承認を挟むかの再設計が必要です。

参照

RoguePilot: Exploiting GitHub Copilot for a Repository Takeover