AWS - S3 Unauthenticated Enum - HackTricks Cloud
Para saber si es un bucket
- Para checkear si es un bucket : https://[DOMAIN].s3.amazonaws.com/
- Wappalyzer
- Nslookup
domain, entramos a la ip en el navegador y nos lleva a aws.amazon.com/es/s3/
Encontrar el bucket
bash
nslookup IPSi la respuesta contiene website (por ejemplo s3-website-us-west-2.amazonaws.com ) entonces el bucket está en DOMINIO.s3-website-us-west-2.amazonaws.com
Comprobar acceso anónimo
Para ver si el bucket está abierto a todo el mundo (Everyone) , buscamo su url en el navegador, listará los top 1000 objetos que se han guardado:
Para comprobar si está abierto a Any Authenticathed User :
bash
aws s3 ls s3://level2-c8b217a33fcf1f839f6f1f73a00a9ae7.flaws.cloud/Buscar secretos & Usarlos
Descargarse todo el bucket
bash
aws s3 sync s3://level3-9afd3927f195e10225021a578e6f78df.flaws.cloud/ . --no-sign-request --region us-west-2Usar Access Key y Secret Key
bash
aws configure --profile ctfwhoami
bash
aws sts get-caller-identity --profile ctfListar S3
bash
aws s3 ls --profile ctfNo hay forma de hacer que una persona solo pueda listar el nombre de algunos buckets, puede listarlos todos si tiene la clave, pero se puede limitar que pueda listar o no su contenido.
Listar S3
bash
aws s3 ls s3://[nombre-del-bucket] --profile ctfEscribir en un bucket
bash
aws s3 cp message.txt s3://[BUCKET]]/message.txt