
Outil d'énumération rapide et furtive des buckets Amazon S3 pour pentesteurs.
s3enum est un outil d'énumération de buckets Amazon S3 rapide et discret. Il utilise le DNS au lieu de HTTP, ce qui signifie que les requêtes ne sont pas enregistrées dans les journaux d'accès du serveur S3.
Il a été initialement créé en 2016 pour cibler GitHub.
go install github.com/koenrh/s3enum@latest
Vous devez spécifier le nom de base de la cible (par exemple, hackerone), une liste de mots et une liste de suffixes. Les noms de buckets candidats sont générés en combinant le nom de la cible avec chaque mot (en utilisant -, _, ., et aucun délimiteur), puis éventuellement en préfixant ou suffixant chaque entrée de la liste de suffixes. Vous pouvez utiliser les fichiers d'exemple wordlist.txt et suffixlist.txt de ce dépôt, ou obtenir une liste de mots ailleurs. En option, vous pouvez spécifier le nombre de workers (50 par défaut).
$ s3enum \
-wordlist examples/wordlist.txt \
-suffixlist examples/suffixlist.txt \
hackerone
hackerone
hackerone-attachment
hackerone-attachments
hackerone-static
hackerone-upload
Par défaut, s3enum utilise le serveur de noms spécifié dans /etc/resolv.conf. Vous pouvez également spécifier un serveur de noms différent avec l'option -nameserver. De plus, vous pouvez tester plusieurs noms en même temps.
s3enum \
-wordlist examples/wordlist.txt \
-suffixlist examples/suffixlist.txt \
-nameserver 1.1.1.1 \
-workers 100 \
hackerone h1 roflcopter
La détection des buckets repose sur les réponses CNAME sous s3.amazonaws.com. Les buckets dans us-east-1 résolvent vers s3-1-w.amazonaws.com et sont actuellement impossibles à distinguer des buckets inexistants.