PCI DSSの12要件とAWSにおける対応方法

AWS

PCI DSSの12要件とAWSにおける対応方法

今回は、AWSを使ってクレジットカード業界のセキュリティ基準であるPCI DSS(Payment Card Industry Data Security Standard)を満たすためにどのようなサービスを使用していけばよいかお話しします。

PCI DSSとは

PCI DSSの12要件とAWSにおける対応方法

PCI DSS(Payment Card Industry Data Security Standard)とは、カード会員情報の保護を目的として、国際ペイメントブランド5社(アメリカンエキスプレス、Discover、JCB、マスターカード、VISA)が共同で策定したカード情報セキュリティの国際統一基準です。

2018年6月から施行された割賦販売法改正によりEC事業者は1件でもクレジットカードを保持する場合にはPCI DSSへの準拠が求められます。

PCI DSSは12の要件から成り立っており、その要件を満たすことで、安全なシステムを構築する必要があります。

PCIデータセキュリティ基準

また、クレジットカード情報を扱うシステムに限らず、個人情報を保持したり金融関係のシステムなど高いセキュリティを保つ必要があるシステムにおいて、PCI DSSの枠組みに従うことで安全なシステムを構築できると思います。

各PCI DSS要件とAWSにおける対応サービス

PCI DSSの要件の一覧と対応するそれに対応するAWSサービスは下記の通りです。

要件番号 要件名 対応するAWSサービス
1 カード会員データを保護するために、ファイアウォールをインストールして構成を維持する セキュリティグループ 

S3バケットポリシー

2 システムパスワードおよび他のセキュリティパラメータにベンダ提供のデフォルト値を使用しない なし
3 保存されるカード会員データを保護する Key Management System
4 オープンな公共ネットワーク経由でカード会員データを伝送する場合、暗号化する AWS Certificate Manager

ELBのHTTPS機能

CloudFrontのHTTP機能

5 すべてのシステムをマルウェアから保護し、ウイルス対策ソフトウェアまたはプログラムを定期的に更新する なし
6 安全性の高いシステムとアプリケーションを開発し、保守する AWS WAF
7 カード会員データへのアクセスを、業務上必要な範囲内に制限する AWS IAM
8 システムコンポーネントへのアクセスを識別・認証する AWS IAM
9 カード会員データへの物理アクセスを制限する AWSの責任範囲のため対応不要
10 ネットワークリソースおよびカード会員データへのすべてのアクセスを追跡および監視する VPCフローログ

CloudTrail

S3アクセスログ

ELBのアクセスログ

CloudFrontのアクセスログ

Kinesis Firehose

11 セキュリティシステムおよびプロセスを定期的にテストする。 AWS Inspector
12 すべての担当者の情報セキュリティに対応するポリシーを維持する。 なし

以下に具体的な各要件ごとの対応方法を簡単に述べていきます。

各PCI DSS要件ごとの対応方法

PCI DSSの12要件とAWSにおける対応方法

それでは一つ一つの要件の対応方法を実際に見ていきましょう。

要件1. カード会員データを保護するために、ファイアウォールをインストールして構成を維持する

AWSではセキュリティグループという通信を制限する機能がありますので、それを使いシステムをセグメントに分けます。

環境 説明 セキュリテイレベル
カード会員環境 クレジットカード情報を保持する最も厳しく管理しなくてはならない環境
カード会員環境と何らかの通信をする環境 クレジットカード情報は扱わないが、カード会員環境と何らかの通信を行う環境
対象外の環境 クレジットカード会員環境と一切通信を行わない環境

カード会員環境が広ければ広いほど要求される事項は多くなり、対応すべき項目は多くなります。

そのため、セキュリティグループを使って、最低限必要な通信のみを許可し、カード会員環境をできる限り狭くすることが重要になってきます。

要件2. システムパスワードおよび他のセキュリティパラメータにベンダ提供のデフォルト値を使用しない

こちらはEC2インスタンスに置いて、標準で作成されているユーザー(ec2-userなど)を使用不可能にするなどの対応を個別にしていく必要があります。

要件3. 保存されるカード会員データを保護する

AWSの場合には、S3(クラウドストレージ)やRDS(リレーショナルデータベース)がデータの保存場所として使われる場合が多いと思います。

その場合は、Key Management Systemにより、保存されるデータの暗号化を行います。

要件4. オープンな公共ネットワーク経由でカード会員データを伝送する場合、暗号化する

AWSでWebサービスをインターネットを介して公開する場合には、ELBやCloudFrontのHTTPS機能を使って暗号化を行う必要があります。

その際にも使用するプロトコル(SSL/TLSのバージョン)や暗号化方式についても注意が必要で、デフォルトの設定では弱い暗号化方式になってしまう場合がありますので安全なものを使用します。

要件5. すべてのシステムをマルウェアから保護し、ウイルス対策ソフトウェアまたはプログラムを定期的に更新する

こちらはEC2上で動いているプログラムを最新の状態に保ち脆弱性が無いように利用者の責任で運用する必要があります。

要件6. 安全性の高いシステムとアプリケーションを開発し、保守する

AWSのサービスではAWS WAFというWebアプリケーションファイアウォールの機能がありますので、CloudFrontやアプリケーションロードバランサーに導入して利用できます。

要件7. カード会員データへのアクセスを、業務上必要な範囲内に制限する

IAMユーザー、グループ、ロールのポリシーを使って、必要なサーバやユーザーには必要な権限のみを与えるようにします。

要件8. システムコンポーネントへのアクセスを識別・認証する

要件7と同様IAMを使い制限を行います

要件9. カード会員データへの物理アクセスを制限する

物理環境のセキュリティについてはAWSの責任範囲であり、AWSのサービスを利用している限りではユーザー側での対応は不要です。

要件10. ネットワークリソースおよびカード会員データへのすべてのアクセスを追跡および監視する

まずネットワークの通信ログについてはVPCフローログが利用できます。

次に、AWSのリソースに対する設定変更であればCloudTrailにより追跡が行えます。

その他、Linuxサーバ内のユーザー認証の履歴など保持しなければならないログについてはKinesisエージェントを使い、S3に送ることができます。

CloudFrontやELBのアクセスログについてもS3に保存する機能がありそちらを利用します。

要件11. セキュリティシステムおよびプロセスを定期的にテストする。

こちらはAWSのサービスの場合はAWS Inspectorというものが利用できるようですが、エージェントのインストールが必要なようなので、特にそれにこだわる必要はないかなと思います。

要件12. すべての担当者の情報セキュリティに対応するポリシーを維持する。

こちらの要件についてはAWSということに限らず、ポリシーの文書化を進めていく必要があります。

以上、PCI DSSの要件の一覧とAWSにおける対応方法について説明しました。

一つ一つの要件についての具体的な説明はまた別の記事で説明したいと思います。

関連記事

  1. AWSをセキュリティを高めて安全に使う方法

    AWS

    AWSをセキュリティを高めて安全に使う方法

    今回はAWSを安全に使うための方法についてご説明します。AWSは簡…

  2. AWS

    AWSで大規模障害発生時に被害を最小限にする方法

    先日、AWSで大規模障害が発生し、多くのサービスが影響を受けました。こ…

  3. PCI DSS

    PCI DSSに準拠するためにまず最初にやるきべこと

    今回はあなたのシステムでPCI DSSに準拠すると決めた時、まず最初に…

  4. AWS

    CloudFrontでLambda@Edgeを本番運用してわかった注意点

    CloudFrontでLambda@Edgeを一年間運用しまして、気づ…

  5. AWSコンソール用の安全なユーザーの作成方法

    AWS

    AWSコンソール用の安全なユーザーの作成方法

    AWSに最初にアカウントを作るとルートユーザーというものが作られます。…

  6. AWS

    AWSでコンプライアンスのための監査ログを取得する方法

    PCI DSSやIT内部統制などのコンプライアンスの観点でAWS上で監…

最近の記事

  1. PCI DSS準拠するためにAWSのセキュリティグループを使うためのポイント

    AWS

    PCI DSS準拠するためにAWSのセキュリティグループを使うためのポイント
  2. AWSでCloudFrontを導入する際に注意する点

    AWS

    AWSでCloudFrontを導入する際に注意する点
  3. AWS

    AWSでLinuxサーバ上のログを自動的にS3に保存する方法
  4. AWS

    CloudFormationを効果的に使うための6つのルール
  5. PCI DSS

    PCI DSSに準拠するためにまず最初にやるきべこと
PAGE TOP