Noções Básicas de Navegação no Console Metasploit

LinuxBeginner
Pratique Agora

Introdução

Bem-vindo ao mundo do Metasploit! O Metasploit Framework é uma ferramenta poderosa usada por profissionais de segurança para testes de penetração (penetration testing) e avaliação de vulnerabilidades. No seu núcleo está o Metasploit Console, ou msfconsole, uma interface de linha de comando interativa que lhe dá acesso à vasta gama de módulos, exploits e payloads do framework.

Neste laboratório, você aprenderá os comandos essenciais para navegar no msfconsole. Dominar estes conceitos básicos é o primeiro passo para usar o Metasploit de forma eficaz. Cobriremos como obter ajuda, gerenciar seus projetos com workspaces, pesquisar módulos, visualizar informações detalhadas sobre eles e sair corretamente do console.

Vamos começar iniciando o console.

Este é um Lab Guiado, que fornece instruções passo a passo para ajudá-lo a aprender e praticar. Siga as instruções cuidadosamente para completar cada etapa e ganhar experiência prática. Dados históricos mostram que este é um laboratório de nível iniciante com uma taxa de conclusão de 95%. Recebeu uma taxa de avaliações positivas de 100% dos estudantes.

Explore Comandos Principais com o Comando help

Nesta etapa, você iniciará o Metasploit Console e usará o comando help para explorar os comandos disponíveis. O comando help é o seu recurso mais valioso quando você não tem certeza sobre o que um comando faz ou quais comandos estão disponíveis.

Primeiro, vamos iniciar o Metasploit Console. Usaremos a flag -q (quiet/silencioso) para pular o banner de inicialização para uma interface mais limpa.

Execute o seguinte comando no seu terminal:

msfconsole -q

Você notará que o seu prompt de comando muda para msf >, indicando que você está agora dentro do Metasploit Console.

Agora, vamos usar o comando help para ver uma lista de todos os comandos disponíveis.

help

Você verá uma longa lista de comandos, categorizados para facilitar a navegação.

Core Commands
=============

    Command       Description
    -------       -----------
    ?             Help menu
    banner        Display an awesome metasploit banner
    cd            Change the current working directory
    color         Toggle color output
    connect       Communicate with a host
    ...

Module Commands
===============

    Command       Description
    -------       -----------
    advanced      Displays advanced options for a module
    back          Move back from the current context
    info          Displays information about a module
    ...

Você também pode obter ajuda detalhada para um comando específico. Por exemplo, para saber mais sobre o comando search, você pode digitar help search.

help search

Isso exibirá a sintaxe e as opções para o comando search.

Usage: search [options] <keywords>

Search for modules, plugins, and other framework objects.

OPTIONS:

    -h, --help             Help banner.
    -o <file>, --output <file>  Send output to a file in csv format.
    -S <string>, --search <string>  Search string for row filtering.
    -t <type>, --type <type>  The type of module to search for (exploit, payload, auxiliary, etc)
...

Sinta-se à vontade para explorar outros comandos usando help antes de passar para a próxima etapa.

Visualizar Gerenciamento de Espaços de Trabalho com o Comando workspace

Nesta etapa, você aprenderá sobre workspaces (espaços de trabalho). Workspaces são uma maneira de organizar seu trabalho no Metasploit. Cada workspace é um ambiente autônomo que armazena informações sobre hosts, serviços, vulnerabilidades e loot (coletados) para um engajamento (engagement) específico. Isso é incrivelmente útil para manter diferentes projetos de teste de penetração separados.

Por padrão, você está no workspace default. Você pode visualizar os workspaces atuais e disponíveis usando o comando workspace.

workspace

A saída mostrará os workspaces disponíveis, com um asterisco * indicando aquele em que você está atualmente.

* default

Vamos criar um novo workspace para o nosso projeto. Vamos chamá-lo de myproject. A flag -a é usada para adicionar um novo workspace.

workspace -a myproject

O Metasploit confirmará a criação e o mudará automaticamente para o novo workspace.

[*] Added workspace: myproject
[*] Workspace: myproject

Agora, se você listar os workspaces novamente, verá tanto default quanto myproject, sendo myproject o ativo.

workspace
  default
* myproject

Todas as ações subsequentes, como escanear hosts ou coletar dados, serão agora salvas dentro do workspace myproject.

Nesta etapa, você aprenderá como encontrar módulos usando o comando search. O Metasploit Framework contém milhares de módulos, que são os componentes centrais que você usará para executar ações. Estes incluem exploits, scanners auxiliares, payloads e muito mais. O comando search é essencial para encontrar a ferramenta certa para o trabalho.

Você pode pesquisar módulos com base em palavras-chave. Por exemplo, vamos pesquisar módulos relacionados a smb (Server Message Block), um protocolo de rede comum.

search smb

A saída será uma longa lista de módulos correspondentes. Os resultados são exibidos em uma tabela com várias colunas:

  • #: O número de índice do resultado.
  • Name: O caminho completo e o nome do módulo.
  • Disclosure Date: A data em que a vulnerabilidade foi divulgada publicamente.
  • Rank: A confiabilidade do exploit, de low (baixa) a excellent (excelente).
  • Check: Indica se o módulo possui um método check para testar a vulnerabilidade com segurança.
  • Description: Um breve resumo do que o módulo faz.
Matching Modules
================

   ##   Name                                    Disclosure Date  Rank       Check  Description
   -   ----                                    ---------------  ----       -----  -----------
   0   auxiliary/admin/smb/impacket/secretsdump  2021-11-09       normal     No     SMB Secrets Dump
   1   auxiliary/admin/smb/psexec_ntdsgrab       2021-11-09       normal     No     PsExec NTDSGRAB
   ...
   58  exploit/windows/smb/ms17_010_eternalblue  2017-03-14       average    Yes    MS17-010 EternalBlue SMB Remote Windows Kernel Pool Corruption
   ...

Você pode refinar sua pesquisa usando palavras-chave como type (tipo), platform (plataforma), name (nome), etc. Por exemplo, para encontrar apenas módulos do tipo exploit para a plataforma windows relacionados a smb, você pode usar o seguinte comando:

search type:exploit platform:windows smb

Isso fornecerá uma lista de resultados muito mais focada, facilitando a localização do exploit específico de que você precisa.

Exibir Informações do Módulo com o Comando info

Nesta etapa, você aprenderá como obter informações detalhadas sobre um módulo específico usando os comandos use e info. Depois de encontrar um módulo promissor com search, você precisa entender o que ele faz, quais opções ele exige e quais alvos ele afeta.

Primeiro, você precisa selecionar um módulo para trabalhar. Isso é feito com o comando use, seguido pelo nome completo do módulo encontrado nos resultados da pesquisa. Vamos selecionar o famoso exploit eternalblue.

use exploit/windows/smb/ms17_010_eternalblue

Observe que o seu prompt muda. Agora ele inclui o nome do módulo ativo, indicando que você está no contexto dele.

msf exploit(windows/smb/ms17_010_eternalblue) >

Agora que um módulo foi selecionado, você pode obter informações detalhadas sobre ele usando o comando info.

info

Este comando exibe uma visão geral abrangente do módulo, incluindo:

  • Name (Nome), Module (Módulo), Platform (Plataforma), Arch (Arquitetura)
  • Privileged: Se requer permissões especiais.
  • License (Licença) e Rank (Classificação)
  • Provided by: Os autores do módulo.
  • Available targets: Os sistemas operacionais ou aplicações específicos que ele pode alvejar.
  • Basic options: Os parâmetros que você precisa configurar, como o endereço IP do alvo (RHOSTS).
  • Payload information: Os tipos de payloads que ele pode entregar.
  • Description: Uma explicação detalhada da vulnerabilidade.
  • References: Links para avisos e artigos (CVE, BID, etc.).
       Name: MS17-010 EternalBlue SMB Remote Windows Kernel Pool Corruption
     Module: exploit/windows/smb/ms17_010_eternalblue
   Platform: Windows
       Arch: x86, x64
 Privileged: Yes
    License: Metasploit Framework License (BSD)
       Rank: Average
...

Basic options:
  Name      Current Setting  Required  Description
  ----      ---------------  --------  -----------
  RHOSTS                     yes       The target host(s), range CIDR identifier, or hosts file with syntax 'file:<path>'
  RPORT     445              yes       The target port (TCP)
  SMBDomain .                no        (Optional) The Windows domain to use for authentication
...

Revisar essas informações é uma etapa crítica antes de tentar executar qualquer exploit.

Sair do Console com o Comando exit

Nesta etapa final, você aprenderá como sair corretamente do Console Metasploit. Embora você possa fechar a janela do terminal ou usar Ctrl+C, a maneira recomendada de sair do msfconsole é usando o comando exit.

Isso garante que o framework seja encerrado de forma limpa (gracefully), parando quaisquer jobs em execução e salvando o estado atual.

Antes de sair, você pode retornar ao prompt principal do msfconsole a partir do contexto de um módulo usando o comando back.

back

Seu prompt retornará ao padrão msf >.

Agora, para sair completamente do console, basta digitar exit.

exit

Você verá uma mensagem de encerramento e será retornado ao seu prompt de shell do sistema regular.

labex:project$

Isto conclui nosso tour básico pela navegação no Console Metasploit.

Resumo

Parabéns! Você concluiu com sucesso este laboratório sobre os fundamentos de navegação no Console Metasploit.

Neste laboratório, você aprendeu a realizar as operações mais fundamentais dentro do msfconsole:

  • Iniciar o console e usar o comando help para descobrir e aprender sobre outros comandos.
  • Organizar seus projetos usando o comando workspace para criar e gerenciar ambientes separados.
  • Encontrar módulos para qualquer tarefa com o poderoso comando search e seus filtros.
  • Examinar os detalhes, opções e alvos de um módulo com o comando info.
  • Desligar o framework corretamente usando o comando exit.

Estes comandos são a base sobre a qual todo o seu trabalho futuro no Metasploit será construído. Com este conhecimento, você está agora pronto para explorar tópicos mais avançados, como a configuração e execução de módulos.