Unencrypted EBS Snapshots
Unecrypted EBS Snapshots contain all data on the original EBS volume in an unencrypted format, failing to protect this data from unauthorised decryption
Compliance risks focus on alignment with external standards and requirements. These issues highlight where systems or processes deviate from expected policies, regulatory frameworks, or audit controls. Addressing compliance risks ensures organizations meet their obligations and avoid penalties or certification failures. These issues pose a risk to the valuation of your business and deviation from industry requirements and norms.
Unecrypted EBS Snapshots contain all data on the original EBS volume in an unencrypted format, failing to protect this data from unauthorised decryption
SSH Keys that are available in an AWS account allow for provisioning of OpenSSH server and provide metadata information that can be utilised for research
Cloudfront Distributions that do not use an S3 Origin Identity require the S3 bucket to use website hosting, splitting access controls across S3 and Cloudfront as well as implementing unencrypted …
AWS S3 Bucket Policies should deny public access to S3 data. This should be part of a standard bucket policy applied to all buckets within your organisation
AWS S3 Bucket Website Endpoints have been superseded by better architectural patterns bringing greater control and data protection
AWS S3 Buckets with neither the full set of Public Access Blocks nor a Bucket Policy that prevents public access should consider their hosted data publicly accessible
AWS S3 Buckets without a Bucket Policy are prone to insecure behaviour that does not meet modern security standards
AWS S3 offers Public Access Blocks to over-ride bucket changes that leak data. Implementing all Public Access Blocks should be a standard policy for all buckets
AWS S3 Buckets allow for unencrypted uploads which need to be blocked via Bucket Policy
Public EBS Snapshots mean that any AWS customer can create a volume in the same AWS Region from the EBS snapshot effectively making the data public
Outside of entirely open-source resources, AMIs should never be shared publicly.
Fully open security groups are wholly open to all of the internet including from geographic locations with no business benefits
VPC Flow Logs provide forensic logs utilised for tracking breach origins and lateral movement. Missing or unconfigured flow logs deny access to vital forensic data
HTTP listeners force clients to communicate in plain text, exposing all communications to any machines with connectivity to the traffic route
Disabling MTLS Expiry Checks effectively gives all issued client certificates an eternal validity. This infinitely expands the impact risk for client certificates and undermines client certificate …
AWS Lambda Functions without Logs
Running depreciated AWS Lambda runtimes incurs both security and operational risks as well as upgrade risk should the service owner force an update to the runtime
Instances using SSH Keys are configured to run OpenSSH server leaving them exposed to OpenSSH attacks, lacking the features of other access methods and reinforcing the use of pet style infrastructure.
Instances not running inside a VPC are unsupported
Instances in public subnets without routes to a NAT require an Elastic IP to communicate externally exposing them directly to internet traffic. This is a diminished security posture compared to …
An EC2 instance that utilising a public IP address directly connects the instance to the internet leading to a vastly diminished security posture compared to available architectures utilising …
EC2 instances that do not exclusively utilise the IMDSv2 endpoints utilise a weaker version of IMDS issued credentials that lack a number of protections against theft and misuse.
The use of special characters in passwords is not recommended.
AWS IAM user passwords should require at least 8 characters and include a variety of character types.
AWS Account Password Policies should prevent users from utilizing previous passwords.
AWS accounts should have a custom password policy rather than relying on the default password policy.
AWS Account Password Policy should not require hard password resets, where passwords are reset only by an administrator.
IAM user passwords should not expire.
AWS account password policies should allow users to change their own passwords.
AWS IAM user passwords should include all variations of characters if the password is less than 15 characters.
AWS IAM Users should have MFA enabled and active.
AWS IAM users that are inactive should be deleted
AWS IAM Users should not have long-term inactive Access Keys
AWS IAM Users should not have unused Access Keys.
Unencrypted Snapshots contain data at rest in plain text and forfeit additional data controls available from AWS KMS
RDS Snapshots that are available publicly mean that any AWS customer can clone the data on those snapshots to their own RDS instance.
AWS CloudTrail tracks all API calls for the relevant AWS Account, providing a total repository of all activity within the account. Not enabling CloudTrail means that all data older than 90 days is …
Allowing public access to the EKS hosted Kubernetes API endpoint is a substantially worse security posture than utilising private API endpoints
EKS Clusters should remain updated to prevent publicly exposed APIs from compromise and avoid forced updates which can break service
EFS file systems should be configured to encrypt data at rest to create a permissions barrier to accessing and copying the data, thereby reducing the impact of leaked raw data.
EFS allows for insecure mounts, leaving communications between host machines and remote file systems unencrypted.
EC2 Instances without an IAM Role attached either do not have permissions to securely interact with AWS Services or they host long term credentials that are prone to compromise
Instances do not have monitoring enabled, causing a large amount of data loss that can indicate compromiseand breaches
Default VPCs are often insecure cloud environments providing ease of access rather than a secure posture, enabling implicit configurations with insecure defaults
Cloudfront Distributions that do not use AWS WAF lack a number of security protections and tracking
Cloudfront Distributions which accept unencrypted traffic respond to requests in plain text compromising all information sent and recieved.
The AWS Root User should have an MFA device enabled and active.
AWS root account users should not have attached Signing Certificates.
The AWS Root Account User should not utilise Access Keys.