c2.15 VPC でネットワークをセグメント化する
攻撃者がいったん初期アクセスを得ると、横方向への移動はネットワークの到達性に左右されます。ワークロードを VPC とサブネットに分離し、本当に公開が必要なものだけを公開し、データベースや内部層はプライベートに保って影響範囲を縮小します。
実装ガイダンス
必要な場所だけ公開にする
インバウンドの公開アクセスが本当に必要なリソース(公開 Web サーバーなど)だけをパブリックサブネットに置き、それ以外(データベース、アプリケーション層)はプライベートサブネットに保ちます。プライベートインスタンスが更新のためにアウトバウンドのインターネットを必要とする場合は、パブリック IP を与えるのではなく NAT ゲートウェイ経由でルーティングします。
到達性が影響範囲を決める
初期アクセス後、攻撃者の横方向移動はネットワークが到達を許す範囲に制限されます。セキュリティグループでアクセスを階層化します。たとえばデータベースは Web 層のセキュリティグループからのみ許可し、オートスケーリングで追加された新しいインスタンスが自動的に正しいアクセスを継承するようにします。複数の VPC とアカウントにワークロードを分離すると、攻撃を単一の VPC/アカウントに封じ込められます。
意図的に接続する
VPC をオンプレミスに接続する(VPN、望ましくは AWS Direct Connect 経由)のは、その VPC が実際にオンプレミスへのアクセスを必要とする場合のみにします。「将来のために」すべてを接続しないでください。必要なときは VPC ピアリングを使いますが、同じ理由で最小限に保ちます。
関連
ネットワーク層は最小権限のセキュリティグループとマルチアカウント構成と組み合わせてください。
全体像
How to validate
- ワークロードはどう構成されていますか(複数アカウント、複数 VPC)?
- 重要なワークロードは組織の他の部分から分離されていますか?
- パブリックサブネットは、インバウンドの公開アクセスが本当に必要なリソースに限定されていますか?
Threats addressed
- ワークロードを VPC(およびアカウント)に分離していないと、侵害後の影響範囲ははるかに大きくなります。攻撃者がネットワークのより広い範囲に到達できるためです。
Cloud Security Maturity Model