Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
baserunner — Uma ferramenta para explorar bancos de dados do Firebase. | Kitploit
Ferramentas/GitHubGitHub/iosiro/baserunner
ExploraçãoColeta de InformaçõesSegurança WebTestes de PenetraçãoSegurança na NuvemSegurança de Banco de Dados
GitHubiosiro/baserunner

baserunner

Uma ferramenta para explorar bancos de dados do Firebase.

Ver Repositório
24021há 1 anoRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Baserunner

Uma ferramenta para investigação e exploração de datastores Firebase. Veja esta postagem em nosso blog para uma visão geral de como o Firebase funciona e por que desenvolvemos esta ferramenta.

Configuração

  1. git clone https://github.com/iosiro/baserunner.git
  2. cd baserunner
  3. npm install
  4. npm run build
  5. npm start
  6. Acesse http://localhost:47710 em seu navegador.

Uso

A interface do Baserunner se parece com isto:

Primeiro, use a caixa de texto de configuração para carregar uma estrutura JSON de configuração do Firebase do aplicativo que você deseja testar. Ela se parece com isto:

root@kitploit:~
{
  "apiKey": "API_KEY",
  "authDomain": "PROJECT_ID.firebaseapp.com",
  "databaseURL": "https://PROJECT_ID.firebaseio.com",
  "projectId": "PROJECT_ID",
  "storageBucket": "PROJECT_ID.appspot.com",
  "messagingSenderId": "SENDER_ID",
  "appId": "APP_ID",
  "measurementId": "G-MEASUREMENT_ID",
  "databaseURL": "https://PROJECT_ID.firebasedatabase.app/"
}

Em seguida, faça login como um usuário comum, seja com e-mail e senha ou com um número de telefone celular. Ao fazer login com um número de telefone, complete o CAPTCHA antes de enviar seu número. Você será então solicitado a inserir um OTP do seu SMS. Insira-o sem completar o CAPTCHA para finalizar o login. Observe que você pode pular esta etapa para testar consultas sem autenticação.

Finalmente, você pode usar a interface de consulta para enviar consultas ao Cloud Firestore, Realtime Database e Firebase Storage do aplicativo. O Baserunner fornece uma série de consultas modelo para ações comuns. Clique em uma delas para carregá-la na caixa de texto e substitua os valores que aparecem ==LIKE THIS== por nomes válidos de coleções, IDs, campos, caminhos de arquivo, etc.

Como não há como obter uma lista de coleções disponíveis usando o SDK JavaScript do Firebase, você precisará adivinhá-los ou obter seus nomes a partir do JavaScript front-end do aplicativo alvo.

O Baserunner também pode consultar buckets do Firebase Storage. Atualmente, a ferramenta suporta listar diretórios e baixar arquivos. Para usar isso, certifique-se de que sua configuração do Firebase inclua um campo storageBucket. As operações de armazenamento funcionarão com a mesma autenticação das suas consultas ao banco de dados.

FAQ

Como saber se um aplicativo está usando Cloud Firestore ou Realtime Database?

Aplicativos que usam Realtime Database terão uma chave databaseURL em seus objetos de configuração. Aplicativos sem essa chave podem ser considerados como usando Cloud Firestore. Observe que é possível que aplicativos Firebase usem ambos os datastores, portanto, em caso de dúvida, execute ambos os tipos de consultas.

Estou sendo bloqueado pelo CORS!

Para funcionar como pretendido, o Baserunner espera que os aplicativos aceitem requisições do localhost, o que é habilitado por padrão. Portanto, o Baserunner não pode ser usado como um aplicativo hospedado.

Caso as requisições do localhost sejam desabilitadas pelo aplicativo que você está testando, uma versão do Baserunner com funcionalidades reduzidas ainda pode ser executada abrindo dist/index.html no seu navegador. Observe que essa forma de executar o Baserunner suporta apenas login com e-mail + senha e não login por telefone.

Como saber quais coleções consultar?

Cloud Firestore: Por razões de segurança, a API JavaScript do lado do cliente do Firebase não fornece um mecanismo para listar coleções. Você precisará deduzi-las analisando o código JavaScript do aplicativo alvo e fazendo suposições fundamentadas.

Realtime Database: Como este datastore é representado como um objeto JSON, você pode usar a consulta fornecida "[Realtime Database] Read datastore" para tentar visualizar todo o conteúdo. Observe que isso pode falhar dependendo das regras configuradas.

Como saber quais arquivos estão no Firebase Storage?

Tente listar a raiz (/) primeiro. Se estiver protegida, veja quais arquivos o aplicativo que você está testando está acessando. Você pode tentar pastas como /uploads ou /images.

Posso ver os resultados de consultas anteriores?

Embora apenas o resultado da consulta mais recente seja exibido na página do Baserunner, todos os resultados são registrados no console do navegador.

Ao executar consultas do Realtime Database, recebo um erro informando que o cliente está offline.

Tente executar a consulta novamente.

Como fazer login com o Google?

  1. Encontre o ID do cliente OAuth do Google do aplicativo (ou seja, NUMERIC_STR-ALPHANUMERIC_STR.apps.googleusercontent.com). Você pode fazer isso clicando em "Fazer login com o Google" no site, inspecionando o HTML e pesquisando por apps.googleusercontent.com.

  2. Edite seu arquivo DNS (/etc/hosts no Linux e macOS, C:\Windows\system32\drivers\etc\hosts no Windows) e adicione a seguinte linha:

root@kitploit:~
127.0.0.1 PROJECT_ID.firebaseapp.com
  1. No diretório do Baserunner, execute o seguinte comando para gerar um certificado autoassinado:
root@kitploit:~
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout ./selfsigned.key -out selfsigned.crt

Nos prompts, você pode deixar todos os campos em branco, exceto Common Name (e.g. server FQDN or YOUR name) [], que deve ser definido como PROJECT_ID.firebaseapp.com.

  1. Limpe todos os dados do site relacionados a PROJECT_ID.firebaseapp.com das configurações do seu navegador (alternativamente, use um navegador limpo) para evitar que o navegador bloqueie sua conexão devido a incompatibilidade de certificado (HSTS).

Se você usa DNS-over-TLS ou DNS-over-HTTPS no navegador que está usando para o Baserunner, desative temporariamente para falsificar a origem necessária para o login do Google no Firebase.

  1. Execute o Baserunner usando npm run startssl e então carregue https://PROJECT_ID.firebaseapp.com no seu navegador.

  2. Insira o ID do cliente OAuth do Google encontrado na etapa 1 no campo sob "Fazer login com o Google" e clique em "Definir ID do cliente do Google".

  3. Clique no botão de login do Google e faça login usando a conta do Google com a qual você se registrou no aplicativo.

  4. Clique no botão "Definir login do Google".

  5. Explore o banco de dados como faria com uma conta não-Google.

  6. Quando terminar os testes de segurança, remova a linha da etapa 2 do seu arquivo DNS.

Baixar ferramenta