VS Code Copilot 課金迂回脆弱性、無料でプレミアムモデルを無制限に使用
- サブエージェントとエージェント定義の組み合わせでCopilot課金迂回が可能である。
- 無料モデルで開始したリクエストはプレミアムモデルの費用が請求されない。
- 一度のメッセージで数百個のOpus 4.5サブエージェントが3時間以上実行された。
Copilot課金体系の構造的欠陥
GitHub Copilotの課金システムで深刻な脆弱性が発見された。VS Code GitHub issue #292452として報告されたこの問題は、サブエージェント機能とエージェント定義の組み合わせに起因する。[GitHub Issues]
方法は簡単である。無料モデルでチャットを開始し、プレミアムモデルを使用するエージェントを定義した後、runSubagentで呼び出せばよい。
費用計算が初期モデルにのみ適用される問題
核心は、リクエスト費用が初期モデル基準でのみ計算される点である。無料モデルで開始すると、サブエージェントがプレミアムモデルを使用しても費用は発生しない。一度のメッセージで数百個のOpus 4.5サブエージェントが3時間以上実行されたが、クレジットは3個のみ消費された。[GitHub Issues]
UIバグではなく、課金アーキテクチャの設計欠陥である。サブエージェントモデルの費用を上位リクエストに帰属させない構造が原因である。
AIツール課金設計の教訓
この脆弱性は、AIエージェント時代の課金設計の難易度を示す。単一モデル呼び出しベースの課金体系は、エージェント間の多層呼び出し構造で脆弱になる可能性がある。[GitHub Docs]
同様の構造のAIサービスを運営するチームであれば参考になることを願う。
よくある質問 (FAQ)
Q: この脆弱性はすべてのVS Codeユーザーに影響を与えるのか?
A: エージェント定義とサブエージェント機能を使用できるCopilotサブスクリプション環境でのみ再現される。一般コード自動補完のみを使用する場合は該当しない。エージェントモードがアクティブなCopilot Chatで特定の組み合わせを通じて発生し、Microsoftがサーバー側でパッチを適用すると予想される。
Q: サブエージェントとは正確には何か?
A: AIエージェントが特定のタスクを他のエージェントに委任する構造である。メインエージェントがタスクを分割してサブエージェントに任せる方式である。サブエージェントはメインと異なるモデルを使用でき、今回の脆弱性はその点を悪用したものである。
Q: このような課金迂回は法的問題になる可能性があるのか?
A: サービス約款違反に該当する可能性がある。ほとんどのAIサービスは課金迂回を禁止する。今回の事例はセキュリティ研究目的の公開報告であるが、実際の悪用時にはアカウント停止や法的措置の対象となる。脆弱性発見時には責任ある公開が重要である。
この記事が役に立った場合は、AI Digesterを購読してください。
参考文献
- Billing can be bypassed using a combo of subagents with an agent definition – GitHub (2026-02-03)
- VS Code Repository – GitHub (2026-02-03)
- GitHub Copilot Documentation – GitHub Docs (2026-02-03)