Configurar e Usar o Banco de Dados Metasploit

Kali LinuxBeginner
Pratique Agora

Introdução

O Metasploit Framework é uma ferramenta poderosa utilizada para testes de penetração e pesquisa de segurança. Embora possa ser usado sem um banco de dados, conectá-lo a um banco de dados como o PostgreSQL aumenta significativamente suas capacidades. Um banco de dados permite armazenar informações sobre hosts, serviços descobertos, vulnerabilidades e evidências coletadas (loot). Isso torna o gerenciamento de dados em avaliações de grande escala muito mais eficiente.

Neste laboratório, você aprenderá os passos fundamentais para configurar e usar o banco de dados do Metasploit. Você inicializará o serviço do banco de dados, verificará a conexão e aprenderá a usar workspaces (espaços de trabalho) para manter seus projetos organizados.

Inicializar o Banco de Dados do Metasploit com msfdb init

Nesta etapa, você inicializará o banco de dados do Metasploit. O Metasploit Framework inclui um script útil chamado msfdb para gerenciar o banco de dados PostgreSQL. O comando init iniciará o serviço PostgreSQL, criará um banco de dados e um usuário dedicados para o Metasploit e salvará os detalhes de conexão para que o framework possa usá-los automaticamente.

Você precisa executar este comando com sudo porque ele gerencia serviços do sistema e cria usuários de banco de dados.

Abra um terminal e execute o seguinte comando:

sudo msfdb init

Você verá uma saída indicando que o banco de dados está sendo inicializado. Este processo pode levar um momento. A saída deve ser semelhante a esta, confirmando que o usuário do banco de dados, o banco de dados e o arquivo de configuração foram criados.

[+] Starting database
[+] Creating database user 'msf'
[+] Creating database 'msf'
[+] Creating database 'msf_test'
[+] Creating configuration file '/home/labex/.msf4/database.yml'
[+] Creating initial database schema

Este comando só precisa ser executado uma vez. Depois disso, o banco de dados estará pronto para ser usado pelo Metasploit.

Verificar o Status da Conexão do Banco de Dados com db_status

Nesta etapa, você verificará se o Metasploit está conectado com sucesso ao banco de dados que você acabou de inicializar. Para fazer isso, primeiro você precisa iniciar o console do Metasploit Framework, que é a interface principal para interagir com o Metasploit.

Inicie o console digitando msfconsole no seu terminal:

msfconsole

Após um momento, você verá o prompt msf6 >, indicando que o console está pronto.

Agora, para verificar o status da conexão do banco de dados, use o comando db_status dentro do console do Metasploit:

db_status

Se a conexão for bem-sucedida, você verá uma mensagem de confirmação.

[*] postgresql connected to msf

Isso confirma que o Metasploit está devidamente conectado ao seu banco de dados e pronto para armazenar dados. Por enquanto, permaneceremos dentro do msfconsole para os próximos passos.

Criar um Novo Workspace para um Projeto

Nesta etapa, você aprenderá como criar um novo workspace. Workspaces são uma das funcionalidades mais úteis do banco de dados do Metasploit. Eles atuam como contêineres separados para seus dados, permitindo que você mantenha diferentes engajamentos de testes de penetração ou projetos completamente isolados uns dos outros. Por padrão, você começa em um workspace chamado default.

Para criar um novo workspace, você usa o comando workspace com o flag -a (que significa "add" - adicionar), seguido pelo nome do novo workspace. Vamos criar um workspace chamado project_alpha.

Dentro do prompt do msfconsole, execute o seguinte comando:

workspace -a project_alpha

O Metasploit confirmará que o workspace foi adicionado e o alternará automaticamente para o novo workspace.

[*] Added workspace: project_alpha
[*] Workspace: project_alpha

Agora, quaisquer dados que você coletar — como informações de hosts, resultados de varreduras ou credenciais — serão armazenados dentro do workspace project_alpha, mantendo-o separado do workspace default.

Listar Todos os Workspaces Disponíveis

Nesta etapa, você listará todos os workspaces disponíveis no banco de dados. Isso é útil para ver todos os seus projetos atuais e identificar em qual deles você está trabalhando no momento.

Para listar todos os workspaces, simplesmente execute o comando workspace sem nenhum argumento.

Dentro do prompt do msfconsole, execute o comando:

workspace

A saída mostrará uma lista de todos os workspaces. O workspace atual é marcado com um asterisco (*). Você deverá ver tanto o workspace default quanto o workspace project_alpha que você criou na etapa anterior.

  default
* project_alpha

Este comando oferece uma visão geral rápida dos seus projetos e ajuda você a manter o controle do seu contexto atual.

Alternar Entre Diferentes Workspaces

Nesta etapa, você aprenderá como alternar entre diferentes workspaces. Ao trabalhar em múltiplos projetos, você precisará frequentemente mudar seu workspace ativo para acessar os dados associados a um engajamento específico.

Para alternar para um workspace diferente, use o comando workspace seguido pelo nome do workspace que você deseja ativar. Vamos voltar para o workspace default.

Dentro do prompt do msfconsole, execute este comando:

workspace default

O Metasploit confirmará a alternância com uma mensagem.

[*] Workspace: default

Você pode verificar a alternância executando o comando workspace novamente. Você verá que o asterisco (*) agora está ao lado de default.

workspace
* default
  project_alpha

Você agora alternou com sucesso seu contexto de trabalho. Para sair do console do Metasploit e retornar ao terminal regular, digite exit:

exit

Resumo

Parabéns por completar este laboratório! Você aprendeu as habilidades essenciais para gerenciar o banco de dados do Metasploit, que é uma parte crítica para usar o framework de forma eficaz em engajamentos profissionais.

Neste laboratório, você abordou:

  • Inicialização do banco de dados PostgreSQL para o Metasploit usando sudo msfdb init.
  • Lançamento do console do Metasploit com msfconsole.
  • Verificação da conexão com o banco de dados com o comando db_status.
  • Criação de novos ambientes de projeto isolados usando workspace -a <name>.
  • Listagem de todos os workspaces disponíveis com o comando workspace.
  • Alternância entre diferentes workspaces usando workspace <name>.

O uso adequado do banco de dados e dos workspaces ajudará você a se manter organizado e eficiente durante suas atividades de teste de penetração.