VPC Network Access Analyzer
VPC 全体のネットワークアクセスパスを自動分析し、意図しないインターネット公開や過剰なアクセス許可を検出するセキュリティ分析ツール
概要
VPC Network Access Analyzer は、VPC 内のネットワークアクセスパスを網羅的に分析し、セキュリティポリシーに違反するアクセス経路を自動検出するサービスです。Reachability Analyzer が特定の 2 点間の到達性を検証するのに対し、Network Access Analyzer は VPC 全体を対象に「どのリソースがどこからアクセス可能か」を包括的に分析します。ネットワークアクセススコープを定義し、許可すべきでないアクセスパターン (例: インターネットからデータベースへの直接アクセス) を検出条件として設定します。検出結果には具体的なアクセスパスとそれを許可しているネットワークコンポーネントが表示され、セキュリティ監査やコンプライアンスチェックに活用できます。
ネットワークアクセススコープの設計
Network Access Analyzer の分析は、ネットワークアクセススコープ (Network Access Scope) の定義から始まります。スコープは「一致条件 (Match Paths)」と「除外条件 (Exclude Paths)」で構成され、検出したいアクセスパターンを宣言的に記述します。一致条件では、送信元 (Source) と宛先 (Destination) のリソースタイプ、CIDR ブロック、プレフィックスリストを指定します。例えば、送信元を「Internet Gateway」、宛先を「特定のサブネット内の ENI」と指定すれば、インターネットからそのサブネットへの到達可能なパスをすべて検出します。除外条件では、意図的に許可しているアクセスパス (例: ALB 経由のインターネットアクセス) を除外し、誤検知を減らします。AWS が提供するプリセットスコープも利用でき、「インターネットからのインバウンドアクセス」「インターネットへのアウトバウンドアクセス」「VPC 間のアクセス」などの一般的な検出パターンをすぐに利用開始できます。カスタムスコープは JSON 形式で定義するため、バージョン管理やコードレビューの対象にできます。
検出結果の分析と修復アクション
分析を実行すると、スコープに一致するアクセスパスが「Findings (検出結果)」として一覧表示されます。各検出結果には、送信元リソース、宛先リソース、経路上のネットワークコンポーネント (セキュリティグループ、ネットワーク ACL、ルートテーブル、NAT Gateway など) が詳細に表示されます。例えば、「Internet Gateway → ルートテーブル A → サブネット B → セキュリティグループ C → EC2 インスタンス D」のように、アクセスを許可している全ホップが可視化されます。修復アクションとしては、セキュリティグループのインバウンドルールの削除、ネットワーク ACL の拒否ルールの追加、ルートテーブルからのルート削除などが考えられます。検出結果が大量に出る場合は、重要度の高いもの (データベースへの直接アクセス、管理ポートの公開) から優先的に対処します。検出結果を CSV エクスポートして、セキュリティチームのレビューワークフローに組み込む運用も効果的です。定期的に分析を再実行し、新たな検出結果が増えていないかを監視することで、設定ドリフトによるセキュリティ劣化を防止できます。
セキュリティ監査とコンプライアンスへの活用
Network Access Analyzer は、定期的なセキュリティ監査やコンプライアンスチェックの自動化に最適です。PCI DSS ではカード会員データ環境 (CDE) へのアクセスを厳密に制限する要件があり、Network Access Analyzer で CDE サブネットへのアクセスパスを定期的に検証することで、要件の継続的な遵守を証明できます。SOC 2 監査でも、ネットワークセグメンテーションの有効性を客観的に示すエビデンスとして活用できます。Organizations と連携すれば、委任管理者アカウントから組織内の全アカウントの VPC を横断分析でき、マルチアカウント環境全体のネットワークセキュリティ態勢を一元的に評価できます。API 経由での分析実行が可能なため、月次のセキュリティレポート生成を自動化し、前月比での検出結果の増減を追跡する運用が推奨されます。コスト面では、分析実行ごとに処理した ENI 数に基づいて課金されるため、大規模 VPC では分析対象をスコープで絞り込んでコストを管理します。Reachability Analyzer との使い分けとして、日常のトラブルシューティングには Reachability Analyzer、定期的なセキュリティ監査には Network Access Analyzer という役割分担が明確です。