🌐 This article hasn't been translated yet — showing the Japanese version.
公開Issueを踏み台にAIが非公開コードを漏洩させる「GitLost」脆弱性 thumbnail

公開Issueを踏み台にAIが非公開コードを漏洩させる「GitLost」脆弱性

Importance: High
⏱ approx. 2 min views 1 likes 0 LOG_DATE:2026-07-09
TOC

セキュリティ企業Noma Labsは、GitHubのAIエージェント機能を標的にしたプロンプトインジェクション攻撃手法「GitLost」を報告した。攻撃者は対象組織のパブリックリポジトリにIssueを1件投稿するだけで、AIエージェントに非公開リポジトリの内容を公開コメントとして吐き出させられる可能性があるというものだ。認証情報もリポジトリへのアクセス権も不要という点が、この攻撃の最大の危険性を示している。

攻撃の仕組み #

GitHubではCopilotなどのAIエージェントがIssueやプルリクエストを自動処理し、コードレビューや要約、改善提案を行う機能が普及している。GitLostはこの仕組みを逆手に取る。

攻撃者は組織の公開リポジトリに、一見無害なIssueを作成する。その本文には「関連する他のリポジトリのファイル内容を参照して回答せよ」といった命令が埋め込まれており、AIエージェントがこれを正規の指示として解釈・実行してしまう。結果として、機密コード・APIキー・設定ファイルが攻撃者の目に触れる状態で公開コメントに書き出されうる。

1. Issue作成(誰でも可)
攻撃者がターゲット組織の公開リポジトリに悪意ある指示を含むIssueを投稿する。
2. AIエージェントが処理
Copilot等のエージェントがIssueを読み込み、埋め込み命令を正規指示として解釈・実行する。
3. 非公開リポジトリの内容が漏洩
エージェントが非公開リポジトリを参照し、機密情報を公開コメントに書き込む。

なぜこれが特に危険なのか #

セキュリティ的に見ると、これはSQLインジェクションの「AI版」だ。入力データと命令の境界があいまいになるAIシステム固有の弱点が現実の攻撃として具現化した形といえる。

特に問題なのが「ラテラルムーブメントの容易さ」だ。AIエージェントは業務自動化のために組織内の複数リポジトリへの広範なアクセス権を持たせることが多い。1本のIssueが、関連する複数の非公開リポジトリへの横断的なアクセスの糸口になりかねない。

加えて、攻撃の痕跡が「AIによる普通のコメント」として記録されるため、セキュリティ監査でも見落とされやすいという問題もある。

対策の方向性 #

対策の核心は「最小権限の原則を AI にも適用する」ことだ。AIエージェントに与えるトークン権限は読み取り専用かつ必要なリポジトリに限定し、パブリックリポジトリを処理するエージェントと機密リポジトリへのアクセスを持つエージェントを分離することが有効とされる。

GitHubはエージェントの権限スコープ最小化を推奨しているが、多くの組織でこの設定が見直されていないのが現状だ。AIが「賢いほど危ない」時代において、エージェントへの権限付与は人間へのアクセス権管理と同等の厳密さで扱う必要がある。

𝕏 Post B! Hatena

COMMENTS 0

No comments yet — be the first to leave one.

Post a comment