GCP - Firebase Enum
Die Firebase Realtime-databasis is 'n wolk-gehoste NoSQL-databasis wat jou in staat stel om data tussen jou gebruikers in realtime te stoor en te sinchroniseer. Leer meer.
Ongeagte Enum
Sommige Firebase-eindpunte kan gevind word in mobiele toepassings. Dit is moontlik dat die gebruikte Firebase-eindpunt sleg gekonfigureer is en almal toestemming gee om te lees (en te skryf).
Dit is die algemene metodologie om sleg gekonfigureerde Firebase-databasisse te soek en uit te buit:
Kry die APK van die toepassing. Jy kan enige van die hulpmiddels gebruik om die APK van die toestel te kry vir hierdie POC. Jy kan "APK Extractor" gebruik https://play.google.com/store/apps/details?id=com.ext.ui&hl=e
Dekomponeer die APK met behulp van apktool, volg die onderstaande opdrag om die bronkode uit die APK te onttrek.
Gaan na die res/values/strings.xml en soek hierna en soek na die sleutelwoord "firebase"
Jy mag iets soos hierdie URL vind "https://xyz.firebaseio.com/"
Gaan daarna na die blaaier en navigeer na die gevonde URL: https://xyz.firebaseio.com/.json
2 tipes antwoorde kan verskyn:
"Toestemming Geweier": Dit beteken dat jy nie toegang daartoe het nie, so dit is goed gekonfigureer
"null" antwoord of 'n stel JSON-data: Dit beteken dat die databasis openbaar is en jy ten minste leestoegang het.
In hierdie geval kan jy kyk vir skryftoestemmings, 'n uitbuiting om skryftoestemmings te toets kan hier gevind word: https://github.com/MuhammadKhizerJaved/Insecure-Firebase-Exploit
Interessante nota: Wanneer 'n mobiele toepassing geanaliseer word met MobSF, sal dit nagaan of 'n firebase-databasis openbaar beskikbaar is en dit sal dit aandui.
Alternatiewelik kan jy Firebase Scanner gebruik, 'n Python-skrips wat die taak hierbo outomatiseer soos hieronder getoon:
Geauthentiseerde Enum
As jy geloofsbriewe het om toegang tot die Firebase databasis te verkry, kan jy 'n instrument soos Baserunner gebruik om die gestoorde inligting makliker te ontsluit. Of 'n skripsie soos die volgende:
Om ander aksies op die databasis te toets, soos skryf na die databasis, verwys na die Pyrebase dokumentasie wat hier gevind kan word.
Toegangsinligting met APPID en API-sleutel
As jy die iOS-toepassing dekomponeer en die lêer GoogleService-Info.plist
oopmaak en jy vind die API-sleutel en APP-ID:
API-SLEUTEL AIzaSyAs1[...]
APP-ID 1:612345678909:ios:c212345678909876
Jy kan dalk toegang kry tot interessante inligting.
Versoek
curl -v -X POST "https://firebaseremoteconfig.googleapis.com/v1/projects/612345678909/namespaces/firebase:fetch?key=AIzaSyAs1[...]" -H "Content-Type: application/json" --data '{"appId": "1:612345678909:ios:c212345678909876", "appInstanceId": "PROD"}'
Verwysings
Last updated