Exposición de S3 y del almacenamiento
Buckets públicos
Exposición de S3 y del almacenamiento es una lección gratuita de Ethical Hacking Academy en CoddyKit. Esta es la lección 3 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Ethical Hacking Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Ethical Hacking Academy incluye 4 lecciones en total.
Por qué se filtran los buckets de almacenamiento
El almacenamiento de objetos, como AWS S3, Azure Blob y GCP Cloud Storage, es una de las fuentes más habituales de filtraciones de datos en la nube. Los buckets son fáciles de crear y de configurar incorrectamente.
- Se configuran accidentalmente con acceso público de lectura o escritura
- Tienen nombres predecibles que se pueden adivinar
- Sus políticas de bucket o ACL son demasiado amplias
Un solo bucket público puede filtrar millones de registros.
Cómo funciona la nomenclatura de S3
Los nombres de los buckets de S3 son únicos globalmente y se corresponden con URL predecibles. Precisamente esta previsibilidad permite enumerarlos.
Cualquiera que adivine un nombre de bucket válido puede comprobar su nivel de acceso.
# Two equivalent S3 URL forms
https://my-bucket.s3.amazonaws.com/
https://s3.amazonaws.com/my-bucket/
# Region-specific endpoint
https://my-bucket.s3.eu-west-1.amazonaws.com/Detección de buckets públicos
La prueba más rápida consiste en realizar una solicitud no autenticada. El código de estado HTTP indica el estado del acceso.
- 200 con un listado XML — acceso público de listado
- 403 AccessDenied — el bucket existe, pero es privado
- 404 NoSuchBucket — no existe
# Anonymous listing attempt
curl -s https://example-data.s3.amazonaws.com/
# Anonymous via the AWS CLI (no signing)
aws s3 ls s3://example-data --no-sign-requestFuerza bruta de nombres de buckets
Los atacantes generan nombres candidatos a partir del nombre de la empresa y sufijos habituales, y prueban cada uno. Las herramientas automatizan este proceso a gran escala.
Patrones habituales: company-backups, company-dev, company-logs, company-assets.
# Permutate and probe bucket names from a keyword
cloud_enum -k example
# Dedicated S3 enumerator
s3scanner scan --bucket-file candidates.txtLectura pública frente a escritura pública
El acceso público puede presentarse de dos formas, y la escritura es mucho peor que la lectura.
- Lectura pública — los atacantes descargan sus datos (filtración de datos)
- Escritura pública — los atacantes suben o sobrescriben objetos
La escritura pública permite desfigurar sitios, alojar malware en su dominio e incluso realizar ataques a la cadena de suministro si el bucket sirve recursos de sitios web o software.
# Test for public write (DANGEROUS - only with authorization)
aws s3 cp test.txt s3://example-data/ --no-sign-request
# If this succeeds, the bucket allows anonymous uploads.El engañoso «Block Public Access»
AWS ofrece configuraciones de Block Public Access tanto a nivel de cuenta como de bucket. Son potentes, pero a menudo se malinterpretan.
- Las configuraciones a nivel de cuenta prevalecen sobre las políticas del bucket
- Un bucket puede ser privado incluso con una política permisiva si BPA está activado
- Por el contrario, desactivar BPA puede exponer de repente muchos buckets
Compruebe siempre el acceso efectivo, no solo una política.
# Inspect block-public-access configuration
aws s3api get-public-access-block --bucket example-data
aws s3api get-bucket-policy-status --bucket example-dataExposición de Azure Blob
Azure almacena objetos en containers dentro de storage accounts. Una configuración incorrecta establece el nivel de acceso público de un container en blob o container.
Los nombres de las storage accounts también son únicos globalmente y predecibles.
# Azure blob URL pattern
https://exampleacct.blob.core.windows.net/container/file.txt
# Anonymous list attempt against a public container
curl -s 'https://exampleacct.blob.core.windows.net/backups?restype=container&comp=list'Exposición de GCP Cloud Storage
Los buckets de Google Cloud Storage pueden hacerse públicos concediendo al principal allUsers o allAuthenticatedUsers un rol de lectura.
El patrón de exposición refleja el de S3: nombres predecibles, comprobaciones anónimas y vinculaciones públicas de IAM.
# Anonymous list of a GCS bucket
curl -s https://storage.googleapis.com/example-bucket/
# Check IAM bindings for allUsers (authenticated)
gsutil iam get gs://example-bucketQué buscan los atacantes en el interior
Un bucket público es solo la puerta. El verdadero premio es lo que contiene:
- Volcados de bases de datos y copias de seguridad
- Código fuente y archivos
.envcon secretos - Credenciales de la nube y claves de API
- PII de clientes (datos personales)
- Documentos y configuraciones internas
Incluso un archivo pequeño filtrado puede contener claves que permitan escalar hasta obtener acceso completo a la cuenta.
Corrección y refuerzo
La solución para la exposición del almacenamiento se aplica por capas:
- Active Block Public Access a nivel de cuenta
- Elimine las ACL públicas y las concesiones a
allUsers/allAuthenticatedUsers - Utilice políticas de bucket limitadas a principales específicos
- Active el cifrado y los registros de acceso
- Ejecute análisis continuos de configuración para detectar nuevos buckets públicos
Gestione los datos expuestos de forma responsable
Encontrar un bucket público lleno de datos reales tiene implicaciones éticas y legales.
- No descargue más de lo mínimo necesario para demostrar la exposición
- No extraiga ni conserve nunca PII de clientes
- Informe de inmediato y de forma segura
- Manténgase dentro del alcance y de las reglas de participación
El objetivo es demostrar que existe acceso, no recopilar los datos.
Comprobación rápida
Una solicitud anónima a la URL de un bucket de S3 devuelve el código HTTP 403 AccessDenied. ¿Qué indica esto?
Recapitulación: exposición de S3 y del almacenamiento
Ha aprendido cómo se filtran los datos del almacenamiento de objetos y cómo comprobarlo de forma segura.
- Los nombres de los buckets son únicos globalmente y predecibles, lo que permite enumerarlos
- Los códigos de estado HTTP revelan el estado del acceso: 200 (público), 403 (privado), 404 (inexistente)
- La escritura pública es más peligrosa que la lectura pública
- El mismo patrón se aplica a Azure Blob y GCP Cloud Storage
- Corrija el problema mediante Block Public Access y políticas basadas en el mínimo privilegio
A continuación: servicios de metadatos y SSRF, una cadena de ataque específica de la nube.
Aprende Ethical Hacking Academy con un tutor de IA — gratis
Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.
- Cursos
- 31
- Lecciones
- 111
Preguntas frecuentes
¿La lección «Exposición de S3 y del almacenamiento» es gratis?
Sí — el texto completo de «Exposición de S3 y del almacenamiento» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Ethical Hacking Academy, actualiza a CoddyKit PRO. El curso de Ethical Hacking Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Exposición de S3 y del almacenamiento»?
Buckets públicos Practicas Ethical Hacking Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Ethical Hacking Academy?
No se requiere experiencia previa. Ethical Hacking Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 4.
¿Cuánto tiempo toma la lección «Exposición de S3 y del almacenamiento»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Ethical Hacking Academy?
Sí. Cada lección de Ethical Hacking Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Superficie de ataque en la nube
- Configuraciones incorrectas de IAM
- Exposición de S3 y del almacenamiento
- Metadatos y SSRF