id: insecure-firebase-database

info:
  name: Insecure Firebase Database
  author: rafaelwdornelas
  severity: high
  description: If the owner of the app have set the security rules as true for both "read" & "write" an attacker can probably dump database and write his own data to firebase database.
  reference:
    - https://blog.securitybreached.org/2020/02/04/exploiting-insecure-firebase-database-bugbounty
  metadata:
    verified: true
    max-request: 2
  tags: firebase,google,misconfig,intrusive

http:
  - raw:
      - |
        PUT /{{randstr}}.json HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/json

        {"id":"insecure-firebase-database"}
      - |
        GET /{{randstr}}.json HTTP/1.1
        Host: {{Hostname}}

    matchers-condition: and
    matchers:
      - type: word
        part: body_2
        words:
          - '{"id":"insecure-firebase-database"}'

      - type: word
        part: header
        words:
          - "application/json"

      - type: status
        status:
          - 200
# digest: 4b0a00483046022100e183f9b2afc0a7e2a5d4e82e4e11c02e0d8bdaa201e89d77b5031dcc89ae3ced022100f7b9a8fc645701c201eb4508bca11f6584fcad3ecb5b237ff716cb24787ad95e:922c64590222798bb761d5b6d8e72950