Metasploit Framework de cabo a rabo – Parte 3

Fala galera! No post de hoje, dando continuidade a série Metasploit, iremos falar um pouco sobre scanner de vulnerabilidades e a importação de relatórios do Nessus e Nexpose para o MSF. O objetivo nesse post é o Metasploit, por isso eu não vou entrar em detalhes sobre os scanners de vulnerabilidade, eu pretendo fazer outros posts dedicados a esse tema em breve.

Caso você ainda não tenha visto os outros posts da série Metasploit, recomendo fortemente a leitura antes de continuar aqui. Já falei um pouco sobre a história do Metasploit, terminologias, interfaces, arquitetura, utilitários, integração com banco de dados, scanner de rede, utilização de módulos para MSSQL, SNMP e muito mais. Para checar acesse:

Vulnerability Scanning

Um scanner de vulnerabilidades é um software que, dado um determinado alvo, seja ele um software, um computador ou um dispositivo de rede, irá analisá-lo em busca de vulnerabilidades existentes. O scanner irá testar o alvo em busca de pontos vulneráveis a ataques (senhas padrão, serviços, sistemas vulneráveis a falhas conhecidas, por exemplo).

Semelhante a outros testes de segurança, como a varredura de porta e sniffing, o scanner de vulnerabilidades também ajuda você a proteger a rede, determinando as brechas ou vulnerabilidades no seu mecanismo de segurança atual. Este mesmo conceito pode também ser utilizado por invasores, a fim de identificar as vulnerabilidades no alvo.

Nessus – O nessus é um scanner de vulnerabilidades que procura por falhas nos softwares, sistemas e redes. As vulnerabilidades identificadas são exibidas para o usuário em vários níveis de detalhes. Cada teste realizado pela ferramenta é feito utilizando um plugin separado, dessa maneira o usuário pode facilmente personalisar um scan criando um template onde ele informa qual plugin ou grupo de plugins serão executados durante o scan. O nessus é dividido em duas partes. Um servidor, no qual realizar o ataque e o cliente, que é o front end. O servidor e o cliente podem ser executados em diferentes sistemas.

Nexpose – Assim como o Nessus o Nexpose é um excelente scanner de vulnerabilidades, ele é uma ferramenta da empresa Rapid7 assim como o Metasploit, ou seja, eles fazem um par perfeito. A versão Pro do Metasploit conta com uma série de formas para se trabalhar com o Nexpose, ele fornece um conector que permite que você adicione um console do Nexpose no painel do Metasploit, assim você pode executar scans diretamente da interface web. Pessoalmente falando, eu prefiro o Nexpose do que o Nessus.

Laboratório

O laboratório que estou utilizando é extremamente simples, eu preparei duas máquinas bem zuadas pra serem nossos alvos, uma é um Windows Server 2012 R2 e a outra é um Windows 7, ambas desatualizadas (Vocês vão notar pelos relatórios de vulnerabilidade, rsrs)

Importing Nessus

Como eu citei no início do post eu não vou ficar explicando como fazer o scan ou como exportar relatórios. Então, levando em consideração que você já realizou o scan, basta exportar o relatório no formato “.nessus”. Depois disso abra o msfconsole e importe o relatório exportado usando o “db_import” (da mesma forma que usamos para importar os relatórios do Nmap). Confira na imagem abaixo a importação do arquivo:

Uma vez que o relatório é importado para o banco de dados nos podemos visualizar os hosts e seus determinados serviços utilizando os comandos que já vimos no post anterior (“hosts” e “services”). Nas imagens abaixo podemos ver a saída desses comandos:

Porém, hoje iremos passar a usar um outro comando, o “vulns”. Esse comando irá listar todas as vulnerabilidades que foram reportadas no relatório do Nessus que importamos. Assim como os comandos “hosts” e “services”, o “vulns” conta com uma série de parâmetros que podem ser utilizados de acordo com nossa necessidade.  Na imagem abaixo podemos ver parte da lista de vulnerabilidades existentes na base:

Como a lista é enorme e bem difícil de ficar procurando algo, a melhor opção é usar o parâmetro -S para buscar por uma string específica. No caso abaixo estamos buscando pela string “MS1” e utilizei o parâmetro -i para dar mais informação sobre a vulnerabildiade que for encontrada:


No exemplo acima podemos ver que uma das vulnerabilidades do host 10.0.0.7 é a vulnerabilidade MS17-010, essa é uma vulnerabilidade largamente conhecida (se você não conhece, pare agora de ler esse artigo e se informe sobre ela) que permite a execução de código remotamente e existe um módulo no metasploit pra ela. Basta fazer uma busca no msfconsole para encontrar o módulo:

O módulo que iremos utilizar é o smb_ms17_010. Nesse módulo a única informação que precisamos inserir é o rhost, o payload configurado por padrão é o cmd_shell, como eu prefiro o meterpreter eu alterei. Depois disso basta executar o módulo:

Importing Nexpose

No caso do Nexpose o relatório deve ser exportado no formato “Nexpose Simple XML”, uma vez que você exporte o relatório todos os passos seguintes são exatamente como no caso anterior, eu não vou repetir as etapas para não deixar esse post maior do que ele já vai ficar 😉


Metasploit Community

Uma coisa que podemos notar é que a tarefa de ficar pesquisando as vulnerabilidades importadas não é tão intuitiva assim, ainda mais quando a quantidade de vulnerabilidades é muito alta, em um pentest real não iremos ter somente duas máquinas como aqui. Por isso que iremos usar uma outra versão do Metasploit para nos ajudar nessa tarefa, a versão Community do Metasploit. Essa versão conta com algumas features adicionais, mas a que eu mais gosto é justamente a parte de importação de relatórios de scanners de vulnerabilidade. O MSF Community faz o parsing das vulnerabilidades e nos fala quais são os módulos que podemos utilizar para cada vulnerabilidade de forma 100% intuitiva.

Para poder usar essa versão você precisa se cadastrar no site da Rapid7 para obter a licença trial de 1 ano, vale lembrar que domínios de emails públicos como gmail, hotmail, yahoo, entre outros não são aceitos, mas nada que uma conta de email temporária da vida não resolva 😉 Depois de obter a licença baixe e instale o Metasploit:

# wget http://downloads.metasploit.com/data/releases/metasploit-latest-linux-x64-installer.run
# chmod +x desktop/metasploit-latest-linux-x64-installer.run
# ./metasploit-latest-linux-x64-installer.run

Depois disso basta seguir o wizard para concluir a instalação. Uma vez que a instalação esteja concluída acesse o endereço https://<server address>:3790 para criar seu usuário. Depois de logar você verá essa tela:

Para continuar basta criar um novo projeto, depois de criar clique no botão “import…” e selecione o relatório de vulnerabilidade que foi exportado, quando a importação for concluída clique no menu “Analysis”, você verá a lista dos hosts existentes, no nosso caso só existem dois hosts:

Quando você clicar em algum host você verá uma série de menus, mas o mais importante deles no nosso caso é o menu “modules”, esse menu irá nos dar a lista de todos os módulos existentes que iremos poder utilizar contra nosso alvo, confira na imagem abaixo:

Isso é uma funcionalidade sensacional que essa versão do Metasploit nos oferece. Agora basta abrir o msfconsole e colocar a mão na massa. Esse processo nos poupa muito tempo analisando os relatórios e procurando pelos módulos corretos.

Bem pessoal é isso ai, espero que tenham curtido. No próximo post da série iremos conhecer alguns comandos de manipulação de módulos, utilização de mais módulos e muito mais. Não preciso dizer que esse post tem fins educacionais apenas, não utilize esse conhecimento para fins maliciosos. Não esqueçam de curtir nossas páginas nas redes sociais, FacebookG+ e seguir o Guia do Ti no Twitter. Compartilhem e comentem esse artigo, isso é muito importante para divulgação do nosso trabalho.

Referências
Book: Metasploit - The Penetration Tester's Guide
https://metasploit.help.rapid7.com/docs
https://www.offensive-security.com/metasploit-unleashed/
https://metasploit.help.rapid7.com/docs

 

Ricardo Galossi
Siga me

Ricardo Galossi

É um apaixonado por segurança da informação, atua profissionalmente há mais de 7 anos na área de tecnologia da informação, onde é focado em análise de vulnerabilidades e testes de invasão.Criou o blog Guia do TI para compartilhar conhecimento, ajudar os mais novos, incentivar debates e manter a comunidade atualizada com as principais notícias da área de TI.
Ricardo Galossi
Siga me

Últimos posts por Ricardo Galossi (exibir todos)

Ricardo Galossi

É um apaixonado por segurança da informação, atua profissionalmente há mais de 7 anos na área de tecnologia da informação, onde é focado em análise de vulnerabilidades e testes de invasão. Criou o blog Guia do TI para compartilhar conhecimento, ajudar os mais novos, incentivar debates e manter a comunidade atualizada com as principais notícias da área de TI.

Deixe seu comentário