Skip to content

#aws #buckets #s3 #bucket

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 IP

Si 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:

flaws.cloud.s3.amazonaws.com

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-2

Usar Access Key y Secret Key

bash
aws configure --profile ctf

whoami

bash
aws sts get-caller-identity --profile ctf

Listar S3

bash
aws s3 ls --profile ctf

No 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 ctf

Escribir en un bucket

bash
aws s3 cp message.txt s3://[BUCKET]]/message.txt

Notas personales de seguridad ofensiva.