Benchmark: 8.2.1 Using strong cryptography, render all authentication credentials (such as passwords/phrases) unreadable during transmission and storage on all system components
Description
Many network devices and applications transmit unencrypted, readable passwords across the network and/or store passwords without encryption. A malicious individual can easily intercept unencrypted passwords during transmission using a “sniffer,” or directly access unencrypted passwords in files where they are stored, and use this data to gain unauthorized access. Note: Testing Procedures 8.2.1.d and 8.2.1.e are additional procedures that only apply if the entity being assessed is a service provider.
Usage
Install the mod:
mkdir dashboardscd dashboardspowerpipe mod initpowerpipe mod install github.com/turbot/steampipe-mod-aws-complianceStart the Powerpipe server:
steampipe service startpowerpipe serverOpen http://localhost:9033 in your browser and select 8.2.1 Using strong cryptography, render all authentication credentials (such as passwords/phrases) unreadable during transmission and storage on all system components.
Run this benchmark in your terminal:
powerpipe benchmark run aws_compliance.benchmark.pci_dss_v321_requirement_8_2_1Snapshot and share results via Turbot Pipes:
powerpipe benchmark run aws_compliance.benchmark.pci_dss_v321_requirement_8_2_1 --shareBenchmarks
- 8.2.1.a Examine vendor documentation and system configuration settings to verify that passwords are protected with strong cryptography during transmission and storage
 - 8.2.1.b For a sample of system components, examine password files to verify that passwords are unreadable during storage
 - 8.2.1.c For a sample of system components, examine data transmissions to verify that passwords are unreadable during transmission
 
Controls
- CloudFront distributions should require encryption in transit
 - CodeBuild project plaintext environment variables should not contain sensitive AWS values
 - CodeBuild GitHub or Bitbucket source repository URLs should use OAuth
 - Application Load Balancer should be configured to drop invalid http headers
 - ELB application load balancers should redirect HTTP requests to HTTPS
 - ELB classic load balancers should use SSL certificates
 - ELB classic load balancers should only use SSL or HTTPS listeners
 - Elasticsearch domain node-to-node encryption should be enabled
 - Redshift cluster encryption in transit should be enabled
 - S3 buckets should enforce SSL