
Sfruttamento di database Firebase mal configurati
Sfruttamento di database Firebase vulnerabili/mal configurati
Moduli Python non standard:
Se i seguenti comandi vengono eseguiti con successo, sei pronto per usare lo script:
git clone https://github.com/Turr0n/firebase.git
cd firebase
pip install -r requirements.txt
python3 firebase.py [-h] [--dnsdumpster] [-d /path/to/file.htm] [-o results.json] [-l /path/to/file] [-c 100] [-p 4]
Argomenti:
-h Show the help message
-d Absolute path to the downloaded HTML file.
-o Output file name. Default: results.json
-c Crawl for domains in the top-1m by Alexa. Set how many domains to crawl, for example: 100. Up to 1000000
-p How many processes to execute. Default: 1
-l Path to a file containing the DBs to crawl. One DB name per line. This option can't be used with -d or -c
--dnsdumpster Use the DNSDumpster API to gather DBs
--just-v Ignore "non-vulnerable" DBs
--amass Path of the output file of an amass scan ([-o] argument)
Esempio:
python3 firebase.py -p 4 -f results_1.json -c 150 --dnsdumpster Questo cercherà i primi 150 domini nel file Alexa così come i DB forniti da DNSDumpster. I risultati verranno salvati in results_1.json e l'intero script verrà eseguito usando 4 processi paralleli
Lo script creerà un file json contenente i database vulnerabili raccolti e il loro contenuto scaricato. Ogni database ha uno stato:
Per risultati migliori, vai su pentest-tools.com e nel suo scanner di sottodomini inserisci il seguente dominio: firebaseio.com. Una volta che la scansione è terminata, salva la pagina HTML (CTRL+S) e usa l'argomento -d [path], questo permetterà allo script di analizzare i sottodomini scoperti da quel servizio. Potrebbero essere supportati ulteriori crawler di sottodomini in futuro.
Ora supportiamo lo scanner amass di @caffix! Eseguendo qualsiasi scansione desiderata con quello strumento contro firebaseio.com usando l'argomento -o, lo script sarà in grado di elaborare il file di output e cercare i DB scoperti.
I DB Firebase funzionano con questa struttura: https://[Nome DB].firebaseio.com/. Se stai usando l'argomento -l [path], il file fornito deve contenere un [Nome DB] per riga, per esempio:
airbnb
twitter
microsoft
Usando quel file verranno controllati questi DB: https://airbnb.firebaseio.com/.json, https://twitter.firebaseio.com/.json, https://microsoft.firebaseio.com/.json
Questo script è fortemente basato sul lavoro del Mobile Threat Team di appthority. Tutti i crediti per la ricerca vanno a loro.
Per scaricare i domini dal file dei primi 1 milione di domini di Alexa, viene usato lo script di @evilpacket.