AWS Security Agent の3つのコア機能
AWS Security Agent は、アプリケーション開発ライフサイクル全体を通じてセキュリティを継続的に強化するAI駆動型サービスです。2025年12月のre:Invent 2025でパブリックプレビューが発表されてから、機能の拡充が続いています。
このサービスは現在、以下の3つのコア機能を提供しています。
機能 | 概要 | ステータス(2026年5月時点) |
|---|---|---|
設計レビュー(Design Review) | 設計書・アーキテクチャドキュメントをアップロードすると、組織のセキュリティ要件や AWS のベストプラクティスに照らして分析します。カスタムセキュリティ要件を自然言語で定義することも可能です。 | プレビュー |
コードレビュー(Code Review) | GitHub と連携し、プルリクエストを自動的にセキュリティ分析します。 | プレビュー |
ペネトレーションテスト(Penetration Testing) | 稼働中のWebアプリケーション・APIに対して自律的な侵入テストを実施します。OWASP Top 10やビジネスロジック上の欠陥を検出し、検証済みの発見事項と修正PRを生成します。 | GA(2026年3月31日) |
これら3つの機能はそれぞれ独立したツールではなく、「Agent Space」と呼ばれる共通の管理単位のもとで連携して動作します。設計段階のセキュリティ課題を設計レビューが検出し、開発中のPRをコードレビューが監視し、デプロイ後の実環境をペネトレーションテストが検証するという、シフトレフトのセキュリティパイプラインを形成しています。
そして2026年5月12日、このエコシステムに強力な新機能が加わりました。それが「フルリポジトリコードレビュー」です。
フルリポジトリコードレビューとは何か
従来のコードレビュー機能はプルリクエストのdiff(差分)を対象としていました。つまり、変更された部分だけを分析するため、リポジトリ全体に潜む既存の脆弱性は検出範囲外でした。
新たにプレビュー提供が開始された「フルリポジトリコードレビュー(Full Repository Code Review)」は、この制約を根本的に解消します。リポジトリ全体を対象に深いコンテキスト認識型のセキュリティ分析を実施し、従来のパターンマッチング型のツールでは発見できなかった体系的な脆弱性を検出します。
AWS の発表によれば、このツールは「機械的な速度で動作しながら、人間のセキュリティリサーチャーのように推論する」ことを目指して設計されています。単純なパターンマッチングではなく、アプリケーションのアーキテクチャ・トラストバウンダリー・データフローを理解した上で脆弱性を探索します。
プレビュー期間中は、既存の AWS Security Agent ユーザーに対して追加料金なしで提供されており、AWS Security Agent が利用可能なすべてのリージョンで使用できます。
SASTとの根本的な違い — コンテキスト認識型分析
従来の SAST(静的アプリケーションセキュリティテスト)ツールは、既知の脆弱性パターンとコードをマッチングします。SQLインジェクションのシンク、エスケープされていない出力、ハードコードされた認証情報など、パターンとして定義されているものを高速かつ確実に検出できます。
しかし現代のアプリケーションは、複数のサービス・API・トラストバウンダリー・認可ロジックが絡み合う複雑なシステムです。最も危険な脆弱性の多くは、単一行のパターン違反ではなく、以下のような体系的なギャップです。
- バリデーション関数が5ケースのうち4ケースしかカバーしていない
- あるエンドポイントだけ隣接する他のエンドポイントが持つ認可アノテーションが欠落している
- 特定のコードパスではエンコードが適用されているが、別のパスでは適用されていない
フルリポジトリコードレビューは、こうしたギャップを発見するために設計されています。その仕組みは以下の4つのステージで構成されています。

Stage 1 — アプリケーションのプロファイリング
スキャナーはリポジトリ全体を読み込み、アプリケーションのセキュリティモデルを構築します。マッピングされるのは、エントリーポイント・トラストバウンダリー・データフロー・認可インバリアント・既存の防御措置です。このプロファイリングステップによって、すべてのソースファイルが明示的にカバーされます。
Stage 2 — 脆弱性の探索
オーケストレーターがセキュリティプロファイルを読み込み、最高リスクのコンポーネントに特化エージェントを派遣します。各エージェントは担当モジュール・脅威コンテキスト・攻撃観点の割り当てを受け、必要に応じて担当スコープ外のインポートや呼び出し元も追跡します。
Stage 3 — トリアージと重複排除
同一シンク・同一根本原因の候補を重複排除し、低確信度のノイズをフィルタリングします。これにより、検証フェーズに入る候補の品質を高めます。
Stage 4 — 独立検証
各候補に対して独立したバリデーターがソースコードを再読し、攻撃チェーン全体をトレースします。バリデーターは両方向から検証します。「脆弱性ではない理由(補正コントロール、意図的な設計)」と「脆弱性である理由(代替攻撃パス、エッジケース)」の両方を検討し、反証の根拠が促進した根拠と同等に強い場合のみ候補を却下します。
この4ステージのプロセスが生成するファインディングには、「Verified(コードで確認済み)」と「Could not verify(環境依存)」のセクションが含まれます。チームはスキャナーがコードで直接確認したことと、デプロイ環境に依存する前提を明確に区別できます。
GitHub連携による自動コードレビューとプルリクエストコメント
AWS Security Agent のコードレビュー機能(PRベース)は、GitHub との深い連携によってデベロッパーのワークフローに自然に組み込まれます。

GitHub 連携の主なポイントは以下の通りです。
自動分析のトリガー
リポジトリでコードレビューが有効化されると、プルリクエストが「Ready for review」にマークされた時点で自動的に分析が開始されます。ドラフト状態のPRは分析対象外です。
コメントの投稿フロー
分析が開始されると、aws-security-agent[bot] がまず確認コメント(「AWS Security Agent is analyzing your code...」)を投稿します。分析が完了すると、すべてのセキュリティファインディングを1つのレビューとしてまとめて投稿します。通知の分散を防ぐ設計です。
ファインディングへの対応
デベロッパーは修正後にコミットをプッシュすると再分析がトリガーされます。解決済みの指摘はGitHub上で会話をresolvedとしてマークすることで進捗を追跡できます。
filtering.md によるカスタマイズ
リポジトリのルートに .awssecurityagent/filtering.md ファイルを配置することで、分析のカスタマイズが可能です。
- IgnorePatterns: 分析から除外するファイルやフォルダをglobパターンで指定(最大1,000パターン)
- ContextHints: アーキテクチャ上の決定やセキュリティ例外など、コードベースに関する追加情報を提供(最大20件)
なお、1つのAWSアカウントに紐付けられるGitHubアカウントは1つのみです。AWS Organizations の複数アカウント環境では、コードレビュー統合を担当するアカウントを事前に決定しておく必要があります。
自動修復(Automatic Remediation)機能の仕組み
AWS Security Agent はセキュリティ脆弱性の検出だけでなく、修正の自動化もサポートしています。ペネトレーションテストで発見された脆弱性に対して、コードの修正案をプルリクエストとして自動生成する「自動修復(Automatic Remediation)」機能です。
この機能は GitHub 連携が前提となっており、以下のような仕組みで動作します。
プライベートリポジトリの場合
GitHub リポジトリに直接プルリクエストを作成します。セキュリティファインディングごとに、具体的なファイルと行番号に紐付いたコード修正のPRが生成されます。code-remediation-strategy を AUTOMATIC に設定すると、ペネトレーションテストジョブ全体の完了を待たずに、ファインディングが確認され次第 PRが順次生成されます。
パブリックリポジトリの場合
セキュリティ上の理由から、パブリックリポジトリへの直接PR作成は行わず、ダウンロード可能なdiffファイルとして提供されます。修正内容が公開状態で露出するリスクを防ぐための設計です。
自動修復を有効にするには、Agent Space の設定でペネトレーションテストのリモディエーションを有効化し、対象リポジトリを選択するだけです。コンソールから数クリックで設定でき、セキュリティから開発チームへの修正依頼のリードタイムを大幅に短縮できます。
セットアップ手順と始め方
AWS Security Agent とフルリポジトリコードレビューを使い始めるには、以下の手順でセットアップを行います。
前提条件
- AWS Security Agent が利用可能なリージョンの AWS アカウント
- GitHub アカウント(GitHub.com または GitHub Enterprise Cloud)
- 分析対象のソースコードリポジトリ
Step 1 — Agent Space の作成
AWS Management Console で AWS Security Agent のサービスページを開き、Agent Space を作成します。Agent Space はプロジェクト単位のコンテナで、セキュリティ要件の定義・GitHub 連携・ペネトレーションテストの設定などをひとまとめに管理します。
Step 2 — GitHub 連携の設定
コードレビューを使用するには GitHub との接続が必要です。
- Console でコードレビューの設定画面を開く
- 「Create new registration」から GitHub を選択
- 「Install and authorize」をクリックし、GitHub App のインストールと認可を完了する
- GitHub の Organizations または個人アカウントを選択し、対象リポジトリを指定する
- コードレビューを有効化するリポジトリを選択する
Step 3 — S3 バケット接続(オプション)
ペネトレーションテストの精度を向上させるために、ソースコードを S3 バケット経由で提供できます。
- sourceCode: ZIPアーカイブとして S3 にアップロード。静的解析(CODE SCANNER)を実行し、発見数が大幅に増加します
- documents: 生ファイルとして S3 にアップロード。AI へのコンテキスト情報として提供され、ペネトレーションテストの精度を向上させます
Step 4 — フルリポジトリコードレビューの有効化
AWS Security Agent コンソールでフルリポジトリコードレビューを有効化し、初回スキャンを実行します。スキャンが完了するとファインディングが一覧表示され、各指摘事項の詳細・インパクト・修正提案を確認できます。
以上の手順で、アーキテクチャ全体をカバーするコンテキスト認識型のセキュリティスキャンが実現します。既存の SAST ツールやペネトレーションテストと組み合わせることで、設計から運用までを網羅したセキュリティパイプラインを構築できます。AWS Security Agent を活用して、クラウドアプリケーションのセキュリティポスチャを継続的に改善していきましょう。

















