0Pricing
Ethical Hacking Academy · Leçon

Exposition de S3 et du stockage

Compartiments publics

Exposition de S3 et du stockage est une leçon Ethical Hacking Academy gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Ethical Hacking Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Ethical Hacking Academy comprend 4 leçons au total.

Pourquoi les buckets de stockage fuient des données

Le stockage d’objets comme AWS S3, Azure Blob et GCP Cloud Storage est l’une des sources les plus courantes de fuites de données dans le cloud. Les buckets sont faciles à créer et à mal configurer.

  • Accès accidentellement configuré en lecture ou en écriture publique
  • Noms prévisibles pouvant être devinés
  • Politiques de bucket ou ACL trop permissives

Un seul bucket public peut exposer des millions d’enregistrements.

Fonctionnement de la dénomination S3

Les noms de buckets S3 sont uniques à l’échelle mondiale et correspondent à des URL prévisibles. Cette prévisibilité permet précisément leur énumération.

Toute personne qui devine le nom d’un bucket valide peut sonder son niveau d’accès.

# 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/

Détecter les buckets publics

Le test le plus rapide consiste à envoyer une requête non authentifiée. Le code d’état HTTP indique l’état des accès.

  • 200 avec une liste XML — accès public à la liste
  • 403 AccessDenied — le bucket existe, mais il est privé
  • 404 NoSuchBucket — il n’existe pas
# 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-request

Recherche exhaustive des noms de buckets

Les attaquants génèrent des noms candidats à partir du nom de l’entreprise et de suffixes courants, puis testent chacun d’eux. Les outils automatisent cette opération à grande échelle.

Schémas courants : 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.txt

Lecture publique contre écriture publique

L’accès public existe sous deux formes, et l’écriture est bien plus dangereuse que la lecture.

  • Lecture publique — les attaquants téléchargent vos données (fuite de données)
  • Écriture publique — les attaquants téléversent ou écrasent des objets

L’écriture publique permet le défigurage de sites, l’hébergement de logiciels malveillants sur votre domaine et même des attaques de la chaîne d’approvisionnement si le bucket fournit des éléments de site web ou de logiciel.

# 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.

La fonction « Block Public Access », source de confusion

AWS propose des paramètres Block Public Access au niveau du compte et du bucket. Ils sont puissants, mais souvent mal compris.

  • Les paramètres au niveau du compte prennent le dessus sur les politiques des buckets
  • Un bucket peut être privé malgré une politique permissive si BPA est activé
  • À l’inverse, la désactivation de BPA peut exposer soudainement de nombreux buckets

Vérifiez toujours l’accès effectif, et pas seulement une politique.

# Inspect block-public-access configuration
aws s3api get-public-access-block --bucket example-data
aws s3api get-bucket-policy-status --bucket example-data

Exposition des objets Blob Azure

Azure stocke les objets dans des container à l’intérieur de comptes de stockage. Une mauvaise configuration définit le niveau d’accès public d’un container sur blob ou container.

Les noms des comptes de stockage sont également uniques à l’échelle mondiale et prévisibles.

# 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'

Exposition de GCP Cloud Storage

Les buckets Google Cloud Storage peuvent être rendus publics en accordant au principal allUsers ou allAuthenticatedUsers un rôle de lecture.

Le schéma d’exposition est similaire à celui de S3 : noms prévisibles, sondage anonyme et liaisons IAM publiques.

# 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-bucket

Ce que les attaquants recherchent à l’intérieur

Un bucket public n’est que la porte d’entrée. Le véritable objectif se trouve à l’intérieur :

  • Vidages et sauvegardes de bases de données
  • Code source et fichiers .env contenant des secrets
  • Identifiants du cloud et clés d’API
  • PII des clients (données personnelles)
  • Documents et configurations internes

Même un petit fichier divulgué peut contenir des clés permettant d’obtenir un accès complet au compte.

Correction et renforcement

La correction de l’exposition du stockage repose sur plusieurs niveaux :

  • Activez Block Public Access au niveau du compte
  • Supprimez les ACL publiques ainsi que les autorisations accordées à allUsers / allAuthenticatedUsers
  • Utilisez des politiques de bucket limitées à des principaux précis
  • Activez le chiffrement et la journalisation des accès
  • Effectuez une analyse continue de la configuration afin de détecter les nouveaux buckets publics

Traiter les données exposées de manière responsable

Découvrir un bucket public rempli de données réelles comporte des enjeux éthiques et juridiques importants.

  • Ne téléchargez pas plus que le minimum nécessaire pour démontrer l’exposition
  • N’exfiltrez et ne conservez jamais de PII de clients
  • Signalez immédiatement le problème de manière sécurisée
  • Respectez le périmètre et les règles d’engagement

L’objectif est de démontrer que l’accès existe, et non de collecter les données.

Vérification rapide

Une requête anonyme vers l’URL d’un bucket S3 renvoie HTTP 403 AccessDenied. Qu’est-ce que cela indique ?

Récapitulatif : exposition de S3 et du stockage

Vous avez appris comment le stockage d’objets peut provoquer des fuites et comment le tester en toute sécurité.

  • Les noms de buckets sont uniques à l’échelle mondiale et prévisibles, ce qui permet leur énumération
  • Les codes d’état HTTP révèlent l’état des accès : 200 (public), 403 (privé), 404 (inexistant)
  • L’écriture publique est plus dangereuse que la lecture publique
  • Le même schéma s’applique à Azure Blob et à GCP Cloud Storage
  • Corrigez le problème avec Block Public Access et des politiques fondées sur le moindre privilège

Ensuite : les services de métadonnées et SSRF, une chaîne d’attaque propre au cloud.

Questions Fréquemment Posées

La leçon « Exposition de S3 et du stockage » est-elle gratuite ?

Oui — le texte complet de « Exposition de S3 et du stockage » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Ethical Hacking Academy, passe à CoddyKit PRO. Le cours Ethical Hacking Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Exposition de S3 et du stockage » ?

Compartiments publics Tu pratiques Ethical Hacking Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Ethical Hacking Academy ?

Aucune expérience préalable n'est requise. Ethical Hacking Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.

Combien de temps prend la leçon « Exposition de S3 et du stockage » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Ethical Hacking Academy ?

Oui. Chaque leçon Ethical Hacking Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Surface d’attaque du cloud
  2. Mauvaises configurations IAM
  3. Exposition de S3 et du stockage
  4. Métadonnées et SSRF
← Retour à Ethical Hacking Academy