
Uno strumento di penetration testing per enumerare e analizzare i bucket Amazon S3 di proprietà di un dominio.
Attenzione: il codice è orribile perché l'ho usato solo per uso personale. Appena ho tempo lo renderò meno orribile (e più veloce).
Quando si esegue una ricognizione su un dominio, capire quali asset possiede è molto importante. Le autorizzazioni dei bucket AWS S3 sono state fraintese più e più volte e hanno permesso l'esposizione di materiale sensibile.
Questo strumento enumera i nomi dei bucket S3 utilizzando schemi comuni che ho identificato durante la mia attività di caccia ai bug e pentesting. Le permutazioni sono supportate su un nome di dominio radice utilizzando una wordlist personalizzata. Raccomando vivamente quella inclusa in AltDNS.
Per ogni bucket trovato verranno restituite le seguenti informazioni:
go get -u github.com/glen-mac/goGetBucket
goGetBucket -m ~/tools/altdns/words.txt -d <dominio> -o <output> -i <wordlist>
Utilizzo di ./goGetBucket:
-d string
Nome di dominio fornito (usato con il flag di mutazione)
-f string
Percorso di un file di test (default "/tmp/test.file")
-i string
Percorso della wordlist di input da enumerare
-k string
Elenco di parole chiave (usato con il flag di mutazione)
-m string
Percorso della wordlist di mutazione (richiede il flag del dominio)
-o string
Percorso del file di output per salvare il log
-t int
Numero di thread concorrenti (default 100)
Nel mio utilizzo dello strumento, ho ottenuto i migliori risultati quando inserisco un elenco (-i) di sottodomini per un dominio radice che mi interessa. Ad esempio:
www.dominio.com
mail.dominio.com
dev.dominio.com
Il file di test (-f) è un file che lo script tenterà di archiviare nel bucket per testare i permessi di scrittura. Quindi magari archivia le tue informazioni di contatto e un messaggio di avviso se questo viene fatto durante un bounty?
L'elenco di parole chiave (-k) viene concatenato con il nome di dominio radice (-d) e il dominio senza TLD per permutare utilizzando la wordlist di permutazione fornita (-m).
Assicurati di non aumentare troppo il numero di thread (-t) - perché AWS ha una limitazione della frequenza API che si attiverà e inizierà a restituire un codice di ritorno indesiderato.