GCP - Firebase Enum
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Firebase Realtime Database, kullanıcılarınız arasında verileri gerçek zamanlı olarak depolamanıza ve senkronize etmenize olanak tanıyan, bulut tabanlı bir NoSQL veritabanıdır. Daha fazla bilgi edinin.
Bazı Firebase uç noktaları, mobil uygulamalarda bulunabilir. Kullanılan Firebase uç noktasının, herkesin okuma (ve yazma) yetkisine sahip olduğu kötü yapılandırılmış olma ihtimali vardır.
Kötü yapılandırılmış Firebase veritabanlarını aramak ve istismar etmek için yaygın metodoloji şudur:
APK'yi alın; bu POC için cihazdan APK almak için herhangi bir aracı kullanabilirsiniz. “APK Extractor” kullanabilirsiniz https://play.google.com/store/apps/details?id=com.ext.ui&hl=e
APK'yı decompile edin; APK'dan kaynak kodunu çıkarmak için aşağıdaki komutu izleyin.
res/values/strings.xml dosyasına gidin ve “firebase” anahtar kelimesini arama yapın.
“https://xyz.firebaseio.com/” gibi bir şey bulabilirsiniz.
Sonra, tarayıcıya gidin ve bulunan URL'ye gidin: https://xyz.firebaseio.com/.json
2 tür yanıt görünebilir:
“Permission Denied”: Bu, erişim sağlayamayacağınız anlamına gelir, bu nedenle iyi yapılandırılmıştır.
“null” yanıtı veya bir dizi JSON verisi: Bu, veritabanının herkese açık olduğu ve en azından okuma erişiminiz olduğu anlamına gelir.
Bu durumda, yazma yetkilerini kontrol edebilirsiniz; yazma yetkilerini test etmek için bir istismar burada bulunabilir: https://github.com/MuhammadKhizerJaved/Insecure-Firebase-Exploit
İlginç not: MobSF ile bir mobil uygulama analiz edilirken, bir firebase veritabanı bulursa bunun herkese açık olup olmadığını kontrol eder ve bunu bildirir.
Alternatif olarak, yukarıdaki görevi otomatikleştiren bir python scripti olan Firebase Scanner kullanabilirsiniz.
Firebase veritabanına erişim için kimlik bilgilerine sahipseniz, saklanan bilgilere daha kolay erişmek için Baserunner gibi bir araç kullanabilirsiniz. Ya da aşağıdaki gibi bir script:
Diğer veritabanı işlemlerini test etmek için, örneğin veritabanına yazma gibi, burada bulabileceğiniz Pyrebase4 belgelerine başvurun.
iOS uygulamasını decompile edip GoogleService-Info.plist
dosyasını açarsanız API Anahtarı ve APP ID'yi bulabilirsiniz:
API ANAHTARI AIzaSyAs1[...]
APP ID 1:612345678909:ios:c212345678909876
Bazı ilginç bilgilere erişim sağlayabilirsiniz.
İstek
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"}'
AWS Hacking Öğrenin ve Pratik Yapın:HackTricks Training AWS Red Team Expert (ARTE) GCP Hacking Öğrenin ve Pratik Yapın: HackTricks Training GCP Red Team Expert (GRTE)