Pentest.rb – O​ plugin externo para metasploit

Pessoal nesse post iremos falar um pouco sobre um plugin externo para o Metasploit… pera ai, você não sabe o que é Metasploit ? Então antes de seguir com este artigo, da uma lida nos artigos anteriores sobre o Metasploit:

Introdução: http://www.guiadoti.com/2016/08/introducao-ao-metasploit-framework

Instalação e configuração: http://www.guiadoti.com/2016/08/instalacao-e-configuracoes-do-metasploit

Como eu ia dizendo … O Metasploit possui diversos plugins externos que podem ser inseridos após seu processo de instalação. Hoje falaremos de um plugin externo que auxilia a você pentester, executar ataques em massa de forma organizada e mais efetiva e a você  que é iniciante, começar com o pé direito e executar um pentest de forma mais organizada e mais intuitiva.

O pentest.rb foi criado por Carloz Perez (@darkoperator) em 2012 e atualizado até 2014, ele é o mesmo desenvolvedor da ferramenta dnsrecon. Compatível com a base de dados (PostgreSQL) existente no Metasploit e todos os seus módulos auxiliares tornou-se um plugin essencial para vida de um pentester.

Bom, alguns de vocês devem estar se perguntando, como eu coloco esse plugin no Metasploit o.O ? Calma, vou explicar. O processo é bem simples, como o próprio site do Metasploit determina, se você estiver utilizando Linux, basta criar uma pasta com o seguinte comando:

# mkdir –p $HOME/.msf4/plugins

É bem provável que esta pasta já esteja criada, então adicione a opção -p para ter certeza de que não haverá erros com pastas existentes.

Ótimo, agora com pasta criada basta agora entrar na pasta que acabamos de criar e baixar o plugin externo. Para baixar o plugin pentest.rb é só seguir os exemplos a baixo.

# cd $HOME/.msf4/plugins

# wget https://raw.github.com/darkoperator/Metasploit-Plugins/master/pentest.rb

ou

# git clone https://github.com/darkoperator/Metasploit-Plugins/blob/master/pentest.rb

Agora vamos continuar, abra o seu Metasploit Framework com o comando msfconsole. Para carregar o novo plugin, é bem simples, basta você utilizar o comando load pentest, e ….. é só isso mesmo, rsrs.

Foto2 - load plugin

Com o plugin carregado, vamos entender o que ele adicionou de novidade. Se você executar o comando de ajuda do Metasploit (?) você poderá perceber que foram adicionados 3 novos comandos a tela de ajuda, são eles:

  • Discovery Commands – Executa um portscan com a ferramenta nmap e enumera serviços existentes. ***Cuidado ao executar este comando pois o mesmo utiliza um nmap -t4 e -A, pode ser bastante barulhento e comprometer o seu ataque, muito cuidado. Se restrinja a utilizar esta ferramenta apenas em testes controlados(gray box ou white box).
  • Project Commands – O principal comando para começar a organizar suas atividades. Comando para gerenciar os seus projetos.
  • Postauto Commands – Após obter uma sessão meterpreter, você terá uma série de ferramentas que auxiliaram a buscar e armazenar (no creds) credenciais de hosts comprometidos.

Vamos começar um novo projeto.

msf > Project –c <Nome_do_projeto>

Após a criação do novo projeto, todas as informações inseridas no banco de dados do Metasploit, serão armazenadas nesta sessão.

Para excluir um projeto criado, basta utilizar a opção –d

msf > Project –d <Nome_do_projeto>

Para selecionar o seu projeto, ou outro basta utilizar a opção –s, mas lembre-se, para selecionar o projeto, você deve escrever corretamente o nome do mesmo, pois a ferramenta de seleção é key sensitive.

msf > Project –s <Nome_do_projeto>

Caso precisar de mais informações, basta utilizar a opção –h

msf > Project –h

Com o projeto criado agora devemos municia-lo de informações. Como eu havia dito no início deste post, esse plugin junto com as ferramentas já existentes no Metasploit serão o seu diferencial nos pentests. Para inserir informações podemos utilizar as funcionalidades que o próprio banco de dados disponibiliza (db_nmap) ou com a importação de dados externos (db_import).

Para importar arquivos para a base dados do Metasploit basta utilizar o comando:

msf > db_import <pasta/nome_do_arquivo>

Podem ser importados os seguintes formatos: pcap, xml, entre outros. Ferramentas como Nmap, OpenVas, Nessus, Acunetix e muitos outros podem agregar informações dos hosts mapeados.

As novas informações podem ser visualizadas com os comandos de services, host e vulns. Lembrem-se que estas funções são nativas do Metasploit, elas são habilitadas no momento em que você conecta o banco de dados da ferramenta.

Como o próprio nome já diz, a função services exibe na tela os serviços encontrados no banco de dados.

msf > services -p <numero_da_porta>

Na função host não é muito diferente, nela podemos ter uma visão dos hosts mapeados durante a fase inicial.

msf > hosts

A opção vulns é bem interessante, ela registra todas as vulnerabilidades identificadas, seja ela, importada de um Nessus, OpenVas, Acunetix ou até mesmo uma identificada por você durante a execução de um módulo que o Metasploit possui.

msf > vulns

Foto3 - vulns_exemplo_hosts

As vulnerabilidades identificadas são datadas e referenciadas na medida que foram encontradas. Um detalhe importante que devo alerta-los é que quando importamos os dados identificados por “ferramentas de testes automatizados” a função vulns fica bastante poluída.

Certo pessoal, temos nossos hosts mapeados, com diversas informações inseridas pelas ferramentas citadas anteriormente, que tal agora começar os ataques em massa? Vamos lá !

Se por exemplo, você encontrou uma credencial durante um teste interno e gostaria de testa-lá basta você inseri o seguinte comando:

msf > services -p 445 –R

Onde a opção -R trará para você um caminho com o arquivo temporário criado, contendo todos os hosts encontrados na query feita anteriormente. * A opção é key sensitive, ou seja, ela deve ser maiúscula.

Foto4 - exemplo de ataque

Agora é com vocês! deixem a criatividade tomar conta, usem e abusem das combinações aqui apresentadas e larguem o aço na rede dos “amiguinhos” 😉 mas é claro, com moderação. Ficou com alguma dúvida? deixe nos comentários. 

É isso ai pessoal, por hoje é só! Fiquem ligados nos próximos posts, iremos abordar outros assuntos dentro do Metasploit, além de diversas explorações, não percam. Não esqueçam de curtir nossas páginas nas redes sociais, Facebook, G+ e seguir o Guia do Ti no Twitter. Compartilhem e comentem esse artigo, isso é muito importante para divulgação do nosso trabalho.

Referências:

http://www.darkoperator.com/blog/2011/12/15/metasploit-pentest-plugin-part-1.html?rq=pentest

http://www.darkoperator.com/blog/2012/1/29/metasploit-pentest-plugin-part-2.html?rq=pentest

https://www.offensive-security.com/metasploit-unleashed/using-databases/

Ricardo Fajin
Na dúvida \/

Ricardo Fajin

Ricardo Fajin em Stone - Pagamentos
É outro louco por segurança da informação, mas não nega as suas raízes, e adora desenvolver em qualquer linguagem de programação.Atua profissionalmente há mais de 3 anos na área, onde é focado em análise de vulnerabilidades e testes de invasão. Atua como Analista de segurança da informação na Stone - Pagamentos. Foi convidado a compor o time de escritores e agregar com conteúdos voltados para segurança da informação, engenharia reversa e programação.
Ricardo Fajin
Na dúvida \/

Últimos posts por Ricardo Fajin (exibir todos)

Ricardo Fajin

É outro louco por segurança da informação, mas não nega as suas raízes, e adora desenvolver em qualquer linguagem de programação. Atua profissionalmente há mais de 3 anos na área, onde é focado em análise de vulnerabilidades e testes de invasão. Atua como Analista de segurança da informação na Stone – Pagamentos. Foi convidado a compor o time de escritores e agregar com conteúdos voltados para segurança da informação, engenharia reversa e programação.

Deixe seu comentário