Cloud Penetration Testing
Cloud penetration testing requires a different methodology than traditional network pentesting. This lesson covers the legal and scoping considerations unique to cloud environments, the tools and techniques used to enumerate and exploit cloud misconfigurations, and how to structure a cloud pentest engagement from reconnaissance through reporting.
Learning Objectives — Deep Dive
Each objective below is broken down into plain English so you know exactly what you are learning, why it matters, and what you will be able to do when you are done. Mark each one complete as you work through the lesson.
Enumerate IAM permissions
Use enumerate-iam or Pacu to determine what permissions your test credentials have.
aws iam get-user && aws iam list-attached-user-policies --user-name $(aws iam get-user --query "User.UserName" --output text)Check for privilege escalation paths
Use Pacu or manual analysis to identify IAM privilege escalation opportunities.
python3 pacu.pyEnumerate S3 buckets
List accessible S3 buckets and check for public read/write access.
aws s3 ls && aws s3api list-buckets --query "Buckets[*].Name"Test for SSRF to metadata service
From a web application, attempt to reach the EC2 metadata service to check for SSRF vulnerability.
curl http://169.254.169.254/latest/meta-data/iam/security-credentials/