新たに確認された脆弱性の一種により、GitHub ActionsとGitLab CI/CDパイプラインがリスクにさらされている。セキュリティ研究者は、この脅威が現実的であり、実際のワークフローですでに確認されていると警告している。
この問題はPromptPwndと名付けられたもので、開発者の作業を効率化するはずのAIエージェントが、プロンプトインジェクションによって操作され、秘密情報を漏えいさせたり、リポジトリのデータを編集したり、サプライチェーンの完全性を損なったりする可能性を示している。
これは「AIプロンプトインジェクションがCI/CDパイプラインを侵害し得ることを示す、世界で初めて確認された実例だ」と、Aikido Securityの研究者らが述べた。
Fortune 500企業5社がすでに影響を受ける
これまでに少なくとも5社のFortune 500企業が影響を受けており、さらに多くの企業が知らないうちに露出している可能性を示す兆候もある。
この脆弱性は、Gemini CLI、Claude Code Actions、OpenAI Codex、GitHub AI InferenceなどのAI搭載GitHub Actionsが、信頼できないユーザー入力を処理し、高い権限を持つリポジトリトークンを保有するよう設定されている場合に顕在化する。
組織が課題のトリアージ、PRのラベル付け、コードの要約に向けたAI駆動の自動化の導入を加速させる中、こうしたエージェント型ツールはCI/CDパイプラインの奥深くに組み込まれるようになっている。
その結果、ユーザーが制御するテキストが、特権コマンド実行の入り口となる新たな攻撃対象領域が生まれる。
PromptPwndがユーザー入力を攻撃に変える仕組み
PromptPwndの核心にあるのは、予測可能なワークフローの悪用だ。信頼できない課題タイトル、プルリクエストの説明、コミットメッセージが、そのままLLMのプロンプトに挿入される。
モデルは悪意のあるテキストを命令と誤解する可能性があり、さらに重要なことに、こうしたAIエージェントはしばしばgh issue editなどのツールや、シェルコマンドの実行機能、リポジトリを変更する機能にアクセスできる。
AikidoがGoogleのGemini CLIに対して実施した概念実証(PoC)は、その仕組みを明らかにしている。
悪意のある課題には、AIに課題本文を変更し、機密性の高い値を埋め込むよう指示する隠し命令が含まれていた。
ワークフローが課題のテキストを直接プロンプトに渡し、GEMINI_API_KEY、GOOGLE_CLOUD_ACCESS_TOKEN、GITHUB_TOKENなどのトークンを公開していたため、AIは利用可能なツールを呼び出し、公開された課題スレッドに秘密情報を漏えいさせた。
Googleは、研究者らによる責任ある開示から4日以内にこの欠陥を修正した。
この脆弱性に特定のCVEは割り当てられていないが、入力の不適切な無害化や不要な権限での実行に関するCWEカテゴリーと密接に対応している。
高度なエクスプロイトチェーンは必要ない。巧妙に細工したユーザー入力と、設定を誤った、または過度に権限を与えられたAIエージェントがあればよい。
PromptPwndが機能する理由
PromptPwndが成功するのは、3つの根本的なセキュリティ上の欠陥が重なるためだ。
- 信頼できない、ユーザーが制御するコンテンツがAIプロンプトに直接注入される
- AIが生成した出力が、CI/CDワークフロー内で誤って信頼できるコードや命令として扱われる
- AIエージェントに高い権限を持つトークンとツールへのアクセス権が与えられ、シェルコマンドまで実行できる。
これらの条件がそろうと、攻撃経路は明快になる。プロンプトの操作によってAIが誤解し、それが特権ツールの実行を引き起こし、最終的にリポジトリの侵害や秘密情報の窃取につながる。
一部のワークフローでは有効化に書き込み権限が必要だが、外部ユーザーが課題を登録するだけで起動できるものもあり、日和見的な無差別攻撃に広くさらされている。
AI駆動型パイプラインを保護する方法
組織がCI/CDパイプラインにAI駆動の自動化を導入するにつれ、従来のセキュリティ制御では対処できるよう設計されていなかった新たな攻撃対象領域も引き受けることになる。
この新たなリスクを低減するには、セキュリティチームはAIエージェントの動作方法、受け取る入力、実行を許可する操作をより厳格に管理しなければならない。
- AIエージェントの権限を制限し、シェルの実行、課題の編集、PRの変更など高リスクのツールは、絶対に必要な場合を除いて無効にする。
- ワークフローのトリガーを制限し、AI駆動のアクションが信頼できるコラボレーターに対してのみ実行され、公開された課題やPRの作成によって自動的に起動しないようにする。
- 信頼できないユーザー入力はすべて無害化し、AIプロンプトに渡る前に処理するとともに、検証が済むまではAIが生成した出力をすべて信頼できないものとして扱う。
- AIの出力を検証またはレビューし、人間による承認手順、許可リストに登録したコマンド、隔離されたサンドボックス環境を使ってから実行する。
- トークンの露出を減らし、GitHubトークンのスコープを厳格化し、短期間で失効する認証情報を使い、可能な場合はIP許可リストを適用する。
- 監視し、AIエージェントの活動をログに記録する。プロンプト、出力、ツールの実行などを記録し、予期しない編集やワークフローの起動といった異常を確認する。
- ワークフローとサードパーティー製AI統合を定期的に監査し、プロンプトインジェクションのリスク、過剰な権限を持つアクション、安全でないデフォルト設定をスキャンする。
AIエージェントを取り巻く制御を強化すれば、組織はプロンプトインジェクションやワークフローの悪用がより大規模な侵害につながる可能性を低減できる。
CI/CDパイプラインで高まるAIリスク
PromptPwndは、自動化、AI、開発者向けツールがますます融合する進化中のエコシステムにおける、さらなる警告サインだ。
組織がAIをCI/CDパイプラインのより深くに組み込む中、攻撃者はプロンプトインジェクションを武器にする新たな機会を見いだしている。一見無害な自然言語の入力が、特権操作や機密データ露出への経路に変えられているのだ。
この変化は、AIエージェントをもはや無害な補助ツールとして扱えないことを明確にしている。AIエージェントは、高度なセキュリティ制御と継続的な監視を必要とする、高い権限を持つ自動化コンポーネントとして統制しなければならない。
ゼロトラストの考え方を採用しなければならない。そこでは、ユーザー、システム、自動化されたエージェントのいずれも本質的に信頼してはならないと想定する。





