
Una herramienta de pruebas de penetración para enumerar y analizar los buckets de Amazon S3 pertenecientes a un dominio.
Advertencia: el código es horrible ya que solo lo he usado para uso personal. Cuando tenga tiempo, lo haré menos horrible (y más rápido).
Al realizar un reconocimiento en un dominio, entender los activos que poseen es muy importante. Los permisos de los buckets S3 de AWS se han confundido una y otra vez, y han permitido la exposición de material sensible.
Lo que hace esta herramienta es enumerar nombres de buckets S3 utilizando patrones comunes que he identificado durante mi tiempo en bug hunting y pentesting. Se admiten permutaciones en un nombre de dominio raíz usando una lista de palabras personalizada. Recomiendo encarecidamente la incluida en AltDNS.
Se devolverá la siguiente información sobre cada bucket encontrado:
go get -u github.com/glen-mac/goGetBucket
goGetBucket -m ~/tools/altdns/words.txt -d <domain> -o <output> -i <wordlist>
Usage of ./goGetBucket:
-d string
Supplied domain name (used with mutation flag)
-f string
Path to a testfile (default "/tmp/test.file")
-i string
Path to input wordlist to enumerate
-k string
Keyword list (used with mutation flag)
-m string
Path to mutation wordlist (requires domain flag)
-o string
Path to output file to store log
-t int
Number of concurrent threads (default 100)
A lo largo de mi uso de la herramienta, he obtenido los mejores resultados cuando introduzco una lista (-i) de subdominios para un dominio raíz que me interesa. Por ejemplo:
www.domain.com
mail.domain.com
dev.domain.com
El archivo de prueba (-f) es un archivo que el script intentará almacenar en el bucket para probar los permisos de escritura. Entonces, quizás guarde su información de contacto y un mensaje de advertencia si esto se realiza durante un bounty?
La lista de palabras clave (-k) se concatena con el nombre de dominio raíz (-d) y el dominio sin el TLD para permutar usando la lista de palabras de permutación proporcionada (-m).
Asegúrese de no aumentar demasiado los hilos (-t) - ya que AWS tiene una limitación de tasa de API que se activará y comenzará a dar un código de retorno no deseado.