GitHub Copilot / コミット前セキュリティ

GitHub Copilotの/security-reviewでコミット前に何を確認できる?

GitHub Copilotアプリの/security-reviewは、いま作業しているコード変更をコミット前にAIで確認し、深刻度・信頼度付きの指摘と修正案を返すコマンドです。便利ですが、リポジトリ全体の監査や依存関係・Secrets検査を置き換える機能ではありません。

パブリックプレビュー /

まず使い方

/security-review
  1. GitHub Copilotデスクトップアプリで対象プロジェクトを開く。
  2. コードを変更し、コミット前の状態にする。
  3. Copilotのチャット欄に/security-reviewと入力する。
  4. 深刻度と信頼度が付いた指摘を確認する。
  5. 修正案をそのまま信用せず、該当コードと再現条件を確認する。
  6. 修正後にテストを実行し、もう一度/security-reviewを実行する。
  7. コミット後もCodeQL、Dependabot、Secret scanning、PRレビューを通す。

利用できるプラン

Copilot Freeプレビュー期間中に利用可能
Copilot Pro利用可能
Copilot Business利用可能。組織ポリシーも確認
Copilot Enterprise利用可能。企業の運用ルールを優先

GitHub公式Changelogでは、Free、Pro、Business、Enterpriseユーザーがパブリックプレビュー中に利用できると案内されています。組織アカウントでは管理者設定やデータ取り扱い方針も確認します。

何を検出する機能か

インジェクション

SQL、シェル、コマンドなど、外部入力が危険な処理へ届く変更を確認します。

クロスサイトスクリプティング

未処理の入力をHTMLへ出力するなど、XSSにつながる変更を確認します。

安全でないデータ処理

信頼境界を越える入力、検証不足、機密データの不適切な扱いを確認します。

パストラバーサル

利用者入力からファイルパスを組み立て、想定外の場所へアクセスする変更を確認します。

弱い暗号

古いハッシュや不適切な暗号利用など、文脈上危険な実装を確認します。

高信頼度の指摘を優先

公式説明では、深刻度と信頼度で評価した優先順位付きの結果を返します。

検出対象の例であり、網羅保証ではありません。

指摘が0件でも安全とは限らず、表示された指摘が必ず脆弱性とも限りません。入力経路、権限、実行環境、テスト結果を人間が確認します。

CodeQL・Dependabot・Secret scanningとの違い

機能主な対象実行する段階置き換えられない理由
/security-review現在作業中のコード変更コミット前、任意実行軽量なAI確認で、完全なリポジトリ監査ではない
CodeQL / code scanningコードベースのデータフローや既知の脆弱性パターンpush・PR・定期解析リポジトリ全体を対象に深い静的解析を行う
Dependabot依存関係の既知脆弱性と更新リポジトリ上で継続監視/security-reviewだけでは依存パッケージを網羅できない
Secret scanningAPIキー、token、認証情報push前後・履歴・公開範囲専用パターンと保護機能が必要
PRレビュー仕様、設計、保守性、影響範囲共有・マージ前脆弱性以外の品質とチーム判断を扱う

Copilotアプリ版とCLI版の違い

比較CopilotアプリCopilot CLI
提供状況2026年7月14日からパブリックプレビュー2026年6月10日から実験的プレビュー
実行場所デスクトップアプリのチャットターミナル
開始方法プロジェクトを開いて/security-reviewCLIセッションで/security-review
公式の位置づけ日常の作業フローに統合した確認ローカル変更の専用セキュリティレビュー

CLIのコマンドリファレンスも「active local code changes」の集中レビューであり、完全なリポジトリ監査ではないと明記しています。

安全な確認フロー

  1. 差分を自分で読む:git diffで対象範囲を確認する。
  2. AIレビューを実行:/security-reviewで優先指摘を得る。
  3. 根拠を確認:入力元、危険な処理、実行条件が本当に接続しているか確認する。
  4. 最小修正:過剰な権限変更や広範囲リファクタリングを避ける。
  5. テスト:正常系、異常系、権限境界、入力検証を実行する。
  6. 専用検査:Secrets、依存関係、CodeQLを確認する。
  7. PRで人間確認:仕様とリスクを説明し、レビュー可能な差分にする。

指摘を受けた時の判断

結果次にすること避けること
高深刻度・高信頼度コミットを止め、再現条件と影響範囲を確認理由を読まず自動修正だけ適用する
高深刻度・低信頼度入口から危険処理までの経路を人間が追う誤検知と決めつけて閉じる
低深刻度悪用可能性と修正コストを比較して記録数が多いという理由だけで無視する
指摘なし通常のテストと専用スキャンを続ける安全証明として扱う

AIに送る前の注意

差分に秘密情報を含めないでください。

.env、APIキー、秘密鍵、顧客データ、内部URLを変更差分へ入れたままレビューしないことが基本です。組織ではCopilotの利用ポリシー、保持設定、許可リポジトリを確認します。外部から取得したコードや文書に、AIへの命令を装った文字列が含まれる可能性も考え、AIの提案をそのまま実行しません。

関連する2026年7月のGitHubセキュリティ更新

Agentic autofix

Code scanningアラートをCopilotへ割り当て、関連ファイルを調査し、修正、CodeQL再実行、ドラフトPR作成まで進める別機能です。対象ライセンスとAI Creditsが必要です。

CodeQL 2.26.0

JavaScript/TypeScript向けに、信頼できない入力がAIのsystem promptへ流れる問題を検出するクエリが追加されました。

/security-reviewはコミット前の入口、CodeQLはpush・PR後の深い検査、Agentic autofixは検出済みアラートの修正支援です。役割を混同しないことが大切です。

よくある質問

Freeプランでも使えますか?

はい。GitHub公式はパブリックプレビュー中、Copilot Free、Pro、Business、Enterpriseで利用可能と案内しています。

セキュリティレビューが0件ならコミットして大丈夫ですか?

0件は安全保証ではありません。テスト、Secret scanning、Dependabot、CodeQL、PRレビューを続けます。

CodeQLは不要になりますか?

不要にはなりません。GitHub自身が補完関係と説明しています。CodeQLはリポジトリ上でより深い静的解析を行います。

修正案はそのまま適用してよいですか?

根拠と差分を確認してから適用します。修正が仕様、認証、権限、例外処理を壊す場合があるため、テストと再レビューが必要です。

リポジトリ全体を監査できますか?

完全な監査ではありません。公式CLIリファレンスでも、現在のローカル変更に集中したレビューであると説明されています。

関連ページ

確認した公式情報

パブリックプレビュー中のため、検出範囲、利用条件、画面、課金条件は変更される可能性があります。