Pci Dss Compliance On Aws
Pci Dss Compliance On Aws
Pci Dss Compliance On Aws
October 2020
Notices
Customers are responsible for making their own independent assessment of the
information in this document. This document: (a) is for informational purposes only, (b)
represents current AWS product offerings and practices, which are subject to change
without notice, and (c) does not create any commitments or assurances from AWS and
its affiliates, suppliers or licensors. AWS products or services are provided “as is”
without warranties, representations, or conditions of any kind, whether express or
implied. The responsibilities and liabilities of AWS to its customers are controlled by
AWS agreements, and this document is not part of, nor does it modify, any agreement
between AWS and its customers.
© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved.
Contents
Overview ..............................................................................................................................1
PCI DSS Compliance Status of AWS Services...............................................................1
AWS Shared Responsibility Model ..................................................................................2
Scope and Cardholder Data Environment ..........................................................................3
Customer PCI DSS Scope ...............................................................................................3
Scope Determination and Validation ...............................................................................4
Diagrams and Inventories ...................................................................................................5
Data Flow Diagrams.........................................................................................................5
Network Diagrams ............................................................................................................6
System Component and Data Storage Inventories.........................................................7
Network Segmentation .....................................................................................................7
Guide for PCI DSS Compliance on AWS ...........................................................................8
Requirement 1 ..................................................................................................................8
Requirement 2 ................................................................................................................10
Requirement 3 ................................................................................................................13
Requirement 4 ................................................................................................................13
Requirement 5 ................................................................................................................14
Requirement 6 ................................................................................................................15
Requirement 7 ................................................................................................................16
Requirement 8 ................................................................................................................17
Requirement 9 ................................................................................................................18
Requirement 10 ..............................................................................................................19
Requirement 11 ..............................................................................................................20
Requirement 12 ..............................................................................................................22
Conclusion .........................................................................................................................23
Contributors .......................................................................................................................23
Additional Resources ........................................................................................................23
Document Revisions..........................................................................................................24
About this Guide
The objective of this guide is to provide customers with sufficient information to be able
to plan for and document the Payment Card Industry Data Security Standard (PCI DSS)
compliance of their AWS workloads. This includes the selection of controls that meet
specific PCI DSS 3.2.1 requirements, planning of evidence gathering to meet
assessment testing procedures, and explaining their control implementation to their PCI
Qualified Security Assessor (QSA).
AWS Security Assurance Services, LLC (AWS SAS) is a fully owned subsidiary of
Amazon Web Services. AWS SAS is an independent PCI QSA company (QSAC) that
provides AWS customers and partners with specific and prescriptive information on PCI
DSS compliance. As a PCI QSAC, AWS SAS can interact with the PCI Security
Standards Council (SSC) or other PCI QSAC under the confidentiality and contractual
framework of PCI.
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
Overview
The purpose of the PCI DSS is to protect cardholder data (CHD) and sensitive
authentication data (SAD) from unauthorized access and loss. Cardholder data consists
of the Primary Account Number (PAN), cardholder name, expiration date, and service
code. Sensitive authentication data (SAD) includes the full track data (magnetic-stripe
data or equivalent on a chip), CAV2/CVC2/CVV2/CID, and PINs/PIN blocks.
Applications that store, process, or transmit cardholder data must be protected, and
require careful planning to both implement and demonstrate compliance of all PCI DSS
controls. It is important to note that PCI DSS is not just a technology standard, it also
covers people and processes. Security and compliance are important shared
responsibilities between AWS and the customer. It is the customer’s responsibility to
maintain their PCI DSS cardholder data environment (CDE) and scope, and be able to
demonstrate compliance of all controls, but customers are not alone in this journey. The
use of PCI DSS compliant AWS services can facilitate customer compliance, and AWS
Security Assurance Services team can assist customers with additional information
specific to demonstrating the PCI DSS compliance of their AWS workloads.
AWS completed a Level 1 assessment as a Service Provider in July 2019. The AWS
Services in Scope by Compliance Program (“Compliance Program”) website lists the
AWS services that were included in the annual PCI DSS assessment, along with all
other services by Compliance Program. This list is updated throughout the year.
Customers can access AWS compliance documentation, to include the AWS PCI
Responsibility Summary and the AWS Attestation of Compliance (AOC), through the
AWS Management Console using AWS Artifact.
1
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
AWS Services listed as PCI DSS compliant means that they have the ability to be
configured by customers to meet their PCI DSS requirements. It does not mean that any
use of that service is automatically compliant. Customers are responsible for the
implementation of additional controls that may be necessary or applicable.
Customers can leverage AWS security, identity, and compliance services to achieve
PCI compliance of their cardholder data environment by addressing specific required
security controls. Examples of these include the AWS Management Console and AWS
Command Line Interface (AWS CLI), AWS Identity and Access Management (IAM),
Amazon CloudWatch, AWS CloudTrail, and Amazon Time Sync Service.
AWS is responsible for the security and compliance of the cloud, or the infrastructure
that runs all of the services offered in the AWS Cloud. Cloud security at AWS is the
highest priority. AWS customers benefit from a data center and network architecture
2
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
that are built to meet the requirements of the most security-sensitive organizations and
compliance frameworks. This infrastructure is composed of the hardware, software,
networking, and facilities that run AWS Cloud services. This includes controls that
maintain separation between customer resources and data, along with numerous other
administrative, compliance, and security related controls.
Customers are responsible for the security and compliance in the Cloud, or the
customer configured systems and services provisioned on AWS. Customers are
responsible for the compliant configuration of all system components, to include AWS
resources and services, included in or connected to their cardholder data environments
(CDE). Customers are responsible for the operating systems and installed applications
on Amazon Elastic Compute Cloud (Amazon EC2), and network routing and
configuration of associated virtual networking components. For abstracted services like
Amazon Simple Storage Service (Amazon S3) or Amazon DynamoDB, this includes
customer-configurable controls such as access controls, permissions, log settings,
encryption settings, and Security Groups. Some Amazon services, like Amazon Elastic
Container Service (Amazon ECS), present a form of hybrid model in which customers
can choose a serverless compute engine in AWS Fargate or run their containers on
Amazon EC2 infrastructure. Customers are responsible for the non-abstracted portion
of the service and AWS is responsible for underlying infrastructure. AWS Fargate is a
good example of this; customers are responsible for the application (container) and
defining networking and IAM policies, but not for the underlying virtual machines and
clusters.
A good rule-of-thumb is that if a customer can set a particular configuration, they are
responsible for setting it appropriately to meet PCI DSS requirements. AWS is
committed to helping customers achieve the highest levels of security in the cloud.
3
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
responsibility of meeting all applicable PCI DSS requirements, such as retail locations,
mobile devices, administrative systems in offices, or on-premises systems.
A complete and accurate description of business processes and data flows that involve
PAN and CHD is the basis for planning and demonstrating compliance. Cardholder data
should be stored and processed in the fewest locations possible, to limit the exposure of
cardholder data to misuse and limit customer assessment scope.
As noted in PCI DSS, v3.2.1 – “At least annually and prior to the annual assessment,
the assessed entity should confirm the accuracy of their PCI DSS scope by identifying
all locations and flows of cardholder data, and identify all systems that are connected to
or if compromised could impact the CDE (e.g. authentication servers) to ensure they are
included in the PCI DSS scope.” It is critical that organizations be able to not only
describe their PCI DSS scope within the environment, but also support the Assessor’s
ability to validate it.
An additional consideration for Amazon EC2 instances is that other instances that do
not touch cardholder data may be in PCI DSS scope if they have un-segmented
network access to instances that do store, transmit, or process cardholder data.
4
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
Here is a sample data flow diagram and associated data flow index:
5
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
Network Diagrams
PCI DSS requires that customers maintain current network diagrams. These diagrams
are critical to understanding both the scope and function of the CDE. They must show
the boundaries of the networks and environment, all ingress and egress points, and
network access controls at the communication points between the CDE and both
trusted and untrusted networks clearly. Trusted networks are those networks that are
controlled and assessed by the organization or a compliant service provider. Untrusted
networks are all other networks, including networks external to, or unassessed by, the
organization. These diagrams must also include key in-scope resources and
technologies, such as AWS WAF or Amazon EC2 instances, and the different subnets
resources reside in. This would also include, but is not limited to, items such as
demarcation points, adjacent out-of-scope networks, all Security Groups protecting the
CDE, and virtual private clouds (VPC). Customers have the option of incorporating all
items into a single comprehensive high-level network diagram, or maintaining separate
high-level and detailed network diagrams that incorporate the different required
elements.
6
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
For example network diagrams, see Standardized Architecture for PCI DSS on the
AWS Cloud Quick Start.
Network Segmentation
Network segmentation is an important security control for safeguarding CHD, and can
limit the scope of a customer’s CDE and PCI DSS assessment. Network segmentation
is not a requirement, and many assessors may not be familiar with AWS network
segmentation methods. It is important to list all mechanisms in place, both those used
by applications and those provided by AWS. For more in-depth information about
network segmentation and PCI DSS scope, see Architecting for PCI DSS Scoping and
Segmentation on AWS.
Note that network segmentation may require filtering at the Application Layer of the OSI
networking model. This layer is typically not in the scope of network devices and
7
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
Amazon EC2 networking features include a mapping service, which performs checks to
ensure that packets with malformed or modified addresses cannot cross Amazon VPC
boundaries, and satisfies the Requirement 1.3.3 for customer VPC-hosted
environments. Traffic received by public Elastic IP addresses is routed on to the
Amazon EC2 network, and therefore is subject to inherent, assessed network controls,
before it is received by Amazon EC2 instances.
Amazon VPC lets customers provision a logically isolated section of the AWS Cloud
where they can launch AWS resources in a virtual network that they define. Security
Groups act as a stateful firewall for resources within an Amazon VPC, controlling both
inbound and outbound traffic at the virtual network interface. Security Groups can be
used to restrict traffic by IP address, port, and protocol, and satisfy elements of PCI
DSS Requirements 1.1, 1.2, and 1.3. Note that by default, Security Groups allow all
outbound connections; customers are responsible for configuring specific outbound
connection rules for PCI DSS compliance. Network access control lists (ACLs) are an
8
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
optional layer of security for VPCs that acts as a stateless router for controlling traffic in
and out of one or more subnets. Customers can utilize IAM can evaluate and deny
traffic based on the connection source, whether in standard CIDR IPv4 or IPv6 format or
specific AWS resources and provide traffic filtering above layer 4 of the OSI model.
VPC Endpoints are a feature of Amazon VPC that enable customers to connect to
supported AWS services using private IP addresses on their own VPC. VPC endpoint
services are powered by AWS PrivateLink. This traffic does not leave the AWS network
and does not require internet access or public IP addresses to communicate with
resources exposed with VPC endpoints. AWS APIs use TLS, by default, for encrypting
data transmitted to endpoints, so creation of this private network path is not necessary
for compliance. However, VPC Endpoints are useful for designing PCI DSS compliant
networks because they simplify demonstrating that data between Amazon VPC
resources and AWS services does not traverse open, public networks under PCI DSS
Requirements 1.3.4.
AWS Service Endpoints are web services interfaces with public IP addresses that are
fully the security and compliance responsibility of AWS. They are assessed for all PCI
DSS requirements as part of the AWS assessment. Customers can be assured that
these AWS service API endpoints are compliant network boundaries between untrusted
and trusted networks and segmentation within trusted networks (e.g. between a DMZ
and internal network). Customers can leverage AWS endpoints and APIs, such as
Amazon CloudFront or Amazon API Gateway, to satisfy Requirements 1.3, 1.3.1, 1.3.2,
and 1.3.6 for implementing a DMZ and prohibiting direct public access when placed “in
front” of customer VPC resources such as Amazon RDS and combined with appropriate
IAM restrictions and any other appropriate security controls.
9
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
PCI DSS requirement 2.2 requires that Customers are aware of and follow vendor
security guidance, such as ensuring secure use of AWS API security features, for
instance, AWS Access Keys and signed requests.
For abstracted services that transmit CHD over public networks, it is critical to ensure
that only TLS 1.1 or higher is used. Customers should configure this by using client
configurations to initiate a handshake with AWS that specify TLS 1.1 or higher. Note
that not all configurations of TLS 1.1 use strong cryptography. NIST SP800-52 has
details on TLS configuration. For a complete discussion of network segmentation for
PCI DSS scope, see Architecting for PCI DSS Scoping and Segmentation on AWS.
Requirement 2
2.1 Change Vendor Defaults
Customers are responsible for changing all vendor-supplied defaults in any third-party
software and code incorporated into their AWS environments. AWS services do not
have default accounts or credentials. Customers must provision the access they desire
using IAM, Amazon Cognito, AWS Directory Service, or other authorization mechanism.
Customers are generally responsible for configuring operating system level access to
EC2 instances. AWS generates unique passwords for the administrator or root
accounts, and encrypts these credentials using customer-specific private keys when
starting an EC2 instance to support compliance with Requirement 2.1.
10
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
Customers leveraging Amazon EC2 have multiple options to address their responsibility
under this PCI DSS Requirement:
11
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
AWS offers other services that do not store, process, transmit, or directly affect the
security of cardholder data, but can assist customers in managing system components
in the cardholder data environment. AWS Config is a fully managed service that
provides an AWS resource inventory, configuration history, and configuration change
notifications to enable security and governance. AWS Config Rules enable automatic
checks of AWS resources configurations recorded by AWS Config. Customers can
leverage AWS Config to ensure resources stay in a securely configured state, and are
responsible for managing their permissions configured within the service. Customers
can also use AWS Managed Services (AMS) to operate their AWS resources on their
behalf in a compliant manner. AWS Managed Services provides routine infrastructure
operations such as patch management, continuity management, security management,
and IT management processes such as incident, change, and service request
management.
12
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
Requirement 3
AWS provides database encryption at rest capability for most storage services,
including all Amazon relational, key-value, document, graph, and ledger databases, and
Amazon ElastiCache for Redis. Encryption is also available in-transit and at-rest for
Amazon S3. It is the customer’s responsibility to enable encryption and to maintain
strong data retention policies and procedures, which include not storing or logging
sensitive authentication data once an authorization is complete. Customers can use the
AWS Key Management Service and/or AWS CloudHSM to simplify the creation and
management of key material involved in Requirements 3.5 and 3.6, and enforce
granular access restrictions using IAM. Customers can also use Amazon Macie to
discover, classify, and protect sensitive data stored in Amazon S3.
Requirement 4
Customers are responsible for configuring the strong cryptography and security controls
that Amazon provides as service options. Externally exposed Amazon services, such as
Amazon CloudFront, Amazon API Gateway, and Amazon Elastic Load Balancing
support the use of transport encryption levels of TLS 1.1 or greater, and customers can
implement policies to enforce it. Customers are responsible for selecting an Elastic
Load Balancing security policy that requires at least TLS 1.1. Security groups and
Network ACLs can block the use of insecure protocols. Customers can leverage
Amazon CloudFront’s field-level encryption to add an additional layer of security along
with HTTPS to protect specific data throughout processing.
13
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
AWS Direct Connect connections are not encrypted by default between customer
environments and AWS; customers must validate the privacy of the circuit and
determine whether additional controls are needed to comply with Requirement 4.1.
Per Requirement 4.1.c, customers should directly test traffic to ensure clients and
servers are negotiating strong TLS ciphers.
Requirement 5
Amazon Web Services is responsible for the deployment and management of antivirus
and antimalware solutions on AWS managed services such as Amazon RDS, Amazon
ECS, and AWS Fargate. Customers inherit the security and compliance provided by the
AWS PCI DSS assessment for AWS managed operating systems. Customers are
responsible for configuring and running appropriate antivirus software on any applicable
EC2 instance in which they have access to and responsibility for the underlying
operating system. The AWS Marketplace offers numerous products for customer
consumption.
14
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
Requirement 6
6.1 Security Vulnerabilities
Customers are responsible for establishing a process to identify security vulnerabilities,
and assigning a risk ranking to newly discovered security vulnerabilities. Amazon
Inspector is an automated security assessment service that helps improve the security
and compliance of applications deployed on AWS, and can assist customers with their
identification. AWS publishes security bulletins to notify customers of important security
events. Customers can also find a number of turnkey solutions in the AWS Marketplace,
from industry-recognized vendors such as Rapid7, Qualys, and Tenable.
15
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
Customers are ultimately responsible for their change management practices and
procedures under Requirement 6.4.
Requirement 7
Much of Requirement 7 is addressed by the customer’s access management policy and
practices. Amazon has developed the AWS Well-Architected Framework to help
organizations build secure, high-performing, resilient, and efficient infrastructure for their
applications. The Security Pillar focuses on protecting information and systems. Key
topics include confidentiality and integrity of data, identifying and managing who can do
what with privilege management, protecting systems, and establishing controls to detect
security events. Best practices include limiting AWS root account use and access,
requiring multi-factor authentication for AWS Management Console accounts, and
implementing the principle of least privilege. It is the customer’s responsibility to
16
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
manage their AWS resources, such as through their IAM footprint, to meet these strong
access control requirements. AWS IAM settings include a default “deny-all” that satisfies
Requirement 7.2.3. Customers can leverage AWS Cognito, Amazon RDS Identity
Federation, and IAM Federation services to extend access management control into the
customer’s on-premises environment.
Requirement 8
It is the customer responsibility to ensure that their AWS IAM Password Policy is
configured to enforce a minimum password length of 7 characters, requires at least
letters and numbers or non-alphanumeric characters, have a password expiration of 90
days or less, and prevents password reuse of the last 4 or more passwords. A
procedure or automated mechanism must also be in place to identify and remove or
disable inactive IAM accounts within 90 days. Customers have the option of
implementing this with AWS services, using identity federation with an external
customer-managed source, or AWS Directory Service. These solutions may be used to
satisfy many of the account and password requirements. By default, IAM handles
credentials in a secure manner, to satisfy Requirement 8.2.1. AWS recommends using
IAM Roles to further limit the need for discrete user accounts, and Amazon SNS topics
for notification of particular behavior.
17
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
Customers must establish database engine identities and roles within the database
instance by the customer. IAM Database Authentication, allowing users and accounts to
connect to RDS databases, can simplify meeting this requirement.
Requirement 9
Amazon manages the physical infrastructure for the hosted environments, and physical
security requirements are inherited from the AWS global infrastructure. Customers are
responsible for the physical security and data classification of media exported or
transferred out of the AWS environment under PCI DSS Requirements 9.5 through 9.8,
but not for the physical security of data stored within AWS. Under PCI DSS
Requirement 9.9, customers are also responsible for the physical security and
management of any physical payment devices they use that connect to resources
provisioned in the AWS Cloud. Customers are also still responsible for the physical
18
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
security of any physical locations in which they store, process, or transmit cardholder
data. These might include corporate offices, call centers, or retail locations.
Requirement 10
10.1, 10.2, 10.3 Implement Audit Trails and Content
AWS provides many service-specific security and audit logs to assist customers in
meeting their compliance needs. With this in mind, controls should be in place to keep
PAN and CHD out of log and debug files. AWS CloudTrail provides an event history of
AWS account activity, including actions taken through the AWS Management Console,
AWS SDKs, command line tools, and other AWS services. These logs include sufficient
detail to satisfy the 6 PCI DSS 10.3.x sub-requirements, and can deliver logs to Amazon
S3 for secure storage and analysis.
Customers can use Amazon CloudWatch to log all requests handled by AWS Lambda
functions. Customers are also responsible for inserting logging statements as applicable
into their code, to record cardholder data access and administrative activities within their
applications. Installing the Amazon CloudWatch agent on Amazon EC2 instances can
provide additional system-level metrics.
19
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
Requirement 11
11.2; 11.3 Vulnerability Scanning and Penetration Testing
The AWS Acceptable Use Policy describes permitted and prohibited behavior on AWS
and includes descriptions of prohibited security violations and network abuse. AWS
customers are welcome to carry out security assessments or penetration tests against
their AWS infrastructure without prior approval for eight services. All penetration testers
and vulnerability scan managers should understand and comply with the AWS
Customer Support Policy for Penetration Testing.
Note: Customers are not permitted to conduct any security assessments of AWS
infrastructure, or of the AWS services themselves. Contact AWS Security
immediately if you suspect any security issue with any AWS service.
20
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
A second option is to use a transit network architecture that uses IP routing to ensure
that all network traffic crosses a single network. That option allows the use of a virtual
firewall or IDS/IPS device from the AWS Marketplace to inspect all traffic transiting
between networks. It is also possible to use a VPC Gateway to route all traffic to on-
premises IDS/IPS infrastructure.
21
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
AWS resources. AWS Config continuously monitors and records AWS resource
configurations and allows customers to automate the evaluation of recorded
configurations against desired configurations. Customers can also configure alerts
based on AWS CloudTrail events to monitor for changes in customer-configured
services such as Amazon S3.
Requirement 12
It is the customer’s responsibility to maintain their information security policy and
program that sets the organizational security tone and protects their cardholder data
environment. The automation capabilities provided by AWS services such as IAM and
AWS CloudTrail can ease the administrative burden, and are identified below.
22
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
Conclusion
Achieving compliance in the AWS Cloud is possible with a combination of the right
proscriptive guidance and understanding the environment. Organizations can take the
stress out of demonstrating PCI DSS compliance, with careful planning and maintaining
compliance awareness throughout the lifecycle of their systems and applications.
Contributors
Contributors to this document include:
Additional Resources
For additional information, see:
23
Amazon Web Services Payment Card Industry Data Security Standard (PCI DSS) 3.2.1 on AWS
Document Revisions
Date Description
October 2020 Updates for clarity – Data flow diagram; 2.3 Non-Console
Management; Requirement 4; Client TLS Configuration; 8.1.6, 8.1.7
Account Lockouts; 8.1.8 Idle Session Timeouts; 10.1, 10.2, 10.3
Implement Audit Trails and Content; 11.5 Change Detection
24