PCI DSSで学ぶAWSセキュリティ① ~スコーピングとセグメンテーション~
皆さんはパブリッククラウド環境でシステム構築する際のセキュリティ要件として何を拠り所にしていますか? さまざまなセキュリティ基準やガイドが存在するため、悩まれている方も多いのではないでしょうか。
そこで本コラムでは、その解決策の1つとしてPCI DSS[1]という基準をベースに主要なパブリッククラウドサービスプロバイダの1つであるAmazon Web Services(AWS)上でセキュアにシステムを構成する際の留意点について、AWSから公開されているガイダンス文書[2]をもとに紹介します。
PCI DSSはクレジットカード業界のセキュリティ基準であり、カード情報を保護するための対策が具体的かつ体系的にまとめられています。クレジットカード業界向けの基準ではありますが、自分達が守りたい情報に置き換えてみていただければ、カード情報を取扱うシステムに限らずさまざまなシステムで有効活用できるのではないかと思います。
第1回目のテーマはスコーピングおよびセグメンテーションという概念です。
責任共有モデル
具体的な説明に入る前に、パブリッククラウドにおける重要な概念である責任共有モデルを紹介します。パブリッククラウド環境では、利用者とクラウドサービスプロバイダの間で、セキュリティやコンプライアンスの責任が共有されます。
例えば、AWSでは仮想ファイアウォールとしてSecurityGroupという機能が用意されますが、SecurityGroupを用いてインバウンドとアウトバウンドトラフィックを業務上必要最小限に制限する責任は利用者側にあります。このようにパブリッククラウド環境において自分達が責任をもって実装しなければならない範囲を把握するために、責任共有モデルは重要な概念です。より詳しく知りたい方はこちらのコラム(https://www.intellilink.co.jp/column/pcidss/2018/061800.aspx)も参照ください。
参考:責任共有モデル(https://aws.amazon.com/jp/compliance/shared-responsibility-model/)を元に作成
スコーピング
PCI DSSでは、カード情報の流れを識別し、PCI DSSが適用される範囲を特定することをスコーピングと呼びます。具体的には、以下の考え方で適用範囲となる環境を整理します。
- カード会員データ環境(CDE)
PAN(カード会員番号)などPCI DSSで定義されるカード情報が伝送、処理、保存されるシステム、および同一セグメント環境
- 接続先システム、セキュリティに影響を与えるシステム
CDEに対して直接または間接的に接続しているシステム、または管理サービスやセキュリティサービスを提供するシステム
- 適用範囲外のシステム
CDEのセキュリティまたは設定に影響を与えず、適用範囲に含まれない
カード情報が伝送、処理、保存される領域をカード会員データ環境と呼びますが、カード会員データ環境に対して適用範囲外のシステムから直接または間接的にもアクセスできないようにすることを、PCI DSSではセグメンテーション※と呼びます。セグメンテーションにより、ネットワークを適切にセグメント化することで、カード会員データ環境の範囲を狭め、結果として PCI DSS が適用される範囲を縮小することができます。これは守るべき重要な情報を限られた環境に集約・統合し、その環境に対するセキュリティコントロールを強化するなど組織のリスク低減にもつながります。
※PCI DSSではセグメンテーションの手段として、適切に構成されたファイアウォール、特定のネットワークセグメントへのアクセスを制限する強力なアクセス制御リストまたは他のテクノロジーをもつルーターなど、いくつかの物理的または論理的な手段を通じて実現可能と例示されています。
AWSのセグメンテーション設計
それでは、AWSではどのようにセグメンテーションを実現することができるのでしょうか。ここでは主要な3つの手段を紹介したいと思います。
1. AWSアカウント
AWSアカウントはリソースや課金管理の単位、環境分離のために使用されます。
AWSアカウントを分割することで、他のAWSアカウントのリソースから論理的に分離されるため、明示的に通信チャネルを確立しない限り、守るべき領域であるカード会員データ環境を適用範囲外の環境からセグメンテーションすることができます。
前述のPCI DSSのスコーピングの考え方に照らして構成すると、例えば以下のようなAWSアカウントの構成が考えられます。
2. VPC/SecurityGroup
セキュリティグループは、ホストベースのファイアウォールに相当するAmazon Virtual Private Cloud(VPC)の機能です。必要なポート、送信元および宛先アドレスに基づいてネットワーク通信を制限することでセグメンテーション境界を確立します。
例えば以下の図では、Security Group AおよびBがカード会員データ環境、Security Group Cが接続先システム、Security Group Dが対象外システムであるとした場合、Security Group AおよびBに対してCからの必要最小限の接続のみを許可するルール設定を行うことで、Dからの直接接続を一切拒否することが可能です。
3. 抽象化されたAWSサービス
抽象化されたサービスとは、Amazon Simple Storage Service (Amazon S3) などのマネージドサービスが該当します。選択したサービスごとに利用者側の責任となる範囲は異なりますが、通常はフルマネージドのサービスであってもデータ保護やアクセス権設定などの対策は利用者側が責任を負います。そのため、プロバイダーから提供されるセキュリティコントロールを用いてアクセス制御を実施し、守るべき情報が置かれた領域について適用範囲外システムからアクセスされないよう制限する必要があります。
例えば、以下の図ではS3のbucket Policyを作成して守るべき情報が保管されたbucketに対してVPC A以外のアクセスを拒否する設定を行うことで、他の適用範囲外システムなどからのアクセスを制限します。
まとめ
今回は、PCI DSSのスコーピングおよびセグメンテーションという概念を紹介しました。
まずはAWSプラットフォーム上で、重要な情報が伝送、処理、保存される環境、その環境に接続しているシステム、管理サービスやセキュリティサービスを提供するシステムを洗い出し、自分達が守るべき範囲を特定することが重要です。
その上で、今回紹介したAWSアカウントの分割、VPC/Security Groupによるネットワークアクセス制御、抽象化されたAWSサービス毎のアクセス制御などの手段によるセグメンテーション境界を設けて自分達が守るべき範囲を他の環境から分離し、重要な情報の侵害リスクを低減しましょう。
参考リソース
-
[1]
Payment Card Industry (PCI) Data Security Standard Version 3.2.1
https://www.pcisecuritystandards.org/document_library -
[2]
PCI DSSスコーピングおよびAWS上でのセグメンテーションのためのアーキテクチャの設計
https://d1.awsstatic.com/whitepapers/ja_JP/pci-dss-scoping-on-aws.pdf
AWSにおけるPCI DSS (Payment Card Industry Data Security Standard) 3.2.1コンプライアンスガイド
https://d1.awsstatic.com/whitepapers/ja_JP/compliance/pci-dss-compliance-on-aws.pdf
お問い合わせ
AWSなどのパブリッククラウド環境のセキュリティについてまずは現状把握が重要です。PCI DSSなどのセキュリティ基準に基づいたアセスメントサービス、各種セキュリティ診断サービスなどでのご支援が可能です。お気軽にお問い合わせください。
https://www.intellilink.co.jp/contact-us.aspx
※Amazon Web Services、「Powered by Amazon Web Services」ロゴ、およびかかる資料で使用されるその他のAWS商標は、米国および/またはその他の諸国における、Amazon.com, Inc.またはその関連会社の商標です。