Msfcli
Msfcli fornece uma interface de linha de comando poderosa para o Framework. Isso permite que você adicione facilmente exploits Metasploit em qualquer script que você pode criar.
Benefícios do mscli
Msfconsole
O msfconsole é, provavelmente, a interface mais popular para o MSF. Ele fornece um console centralizado “all-in-one” e permite acesso eficiente a praticamente todas as opções disponíveis no Metasploit Framework. Msfconsole pode parecer intimidante no início, mas uma vez que você aprender a sintaxe dos comandos que você vai aprender a apreciar o poder de utilizar esta interface.
Benefícios
Iniciar
O msfconsole é inicializado, simplesmente executando msfconsole a partir da linha de comando. msfconsole está localizado no diretório/usr/share/metasploit-framework/msfconsole
Ajuda
Você pode passar -h para msfconsole para ver as outras opções de uso disponíveis para você.
Entrando com o comando help ou um ? uma vez no prompt de comando do MSF irá mostrar uma lista de comandos disponíveis, juntamente com uma descrição do que eles são usados.
Tab Conclusão
O msfconsole é projetado para ser fácil de usar e uma das características que ajudam esse objetivo é a conclusão de tabulação. Com a grande variedade de módulos disponíveis, pode ser difícil de lembrar o nome exato eo caminho do módulo específico que você deseja utilizar. Tal como acontece com a maioria das outras shell, entrando o que você sabe e pressionando ‘Tab’ irá apresentar-lhe uma lista de opções disponíveis para você ou auto-completar a seqüência, se houver apenas uma opção. Tab conclusão depende da extensão ruby readline e quase todos os comandos no console suporta a conclusão de tabulação.
Exploits
Todos os exploits do Metasploit Framework vai cair em duas categorias: ativos e passivos.
Exploits Ativos
Exploits ativos vai explorar um host específico, executado até a conclusão, e depois sair.
Exploits passivos
Exploits passivos esperar por hospedeiros de entrada e de explorá-los como eles se conectam.
Payloads
Existem três tipos diferentes de tipos de módulos de payloads no Metasploit: Singles, Stagers e Stages. Estes tipos diferentes permitem uma grande versatilidade e pode ser útil em vários tipos de cenários. Seja ou não um payload staged é representado por ‘/’ no nome do payload. Por exemplo, “windows/shell_bind_tcp” é um payload do tipo singles enquanto “windows/shell/bind_tcp” consiste em um stager (bind_tcp) e um stage (shell).
Singles
Singles são payloads que são auto-suficientes e completamente independente. O payload single pode ser algo tão simples como adicionar um usuário ao sistema de destino ou executar um calc.exe pore exemplo.
Stagers
Stagers são pequenos e configurados apenas para abrir uma conexão entre o atacante e o alvo . O Metasploit usará o melhor quando se pode e cair de volta para um menos preferido um quando necessário.
Windows NX vs NO-NX Stagers
Problema de confiabilidade para NX CPUs e DEP
Stagers NX são maiores (VirtualAlloc)
O padrão é agora NX + Win7 compatível
Stages
Stages são payloads que são baixados por módulos Stagers. As várias etapas de payload oferecem recursos avançados, sem limites de tamanho, como Meterpreter, VNC Injection, e ‘ipwn’ Shell do iPhone.
Payload stages usam automaticamente ‘middle stagers’
Um single recv() falha com grandes payloads
O stager recebe o middle stager
O midlle stager , executa um download completo
Também melhor para RWX
Databases
Ao realizar um teste de penetração, é freqüentemente um desafio para manter o controle de tudo o que você tem feito na rede de destino. Este é o lugar onde ter um banco de dados configurado pode ser uma grande economia de tempo. O Metasploit foi construído com suporte para o sistema de banco de dados PostgreSQL. O sistema permite acesso rápido e fácil para fazer a varredura de informações, nos dá a capacidade de importar e exportar os resultados da verificação de diversas ferramentas de terceiros. Também pode usar esta informação para configurar as opções de módulo rapidamente.Mais importante ainda, ele mantém os nossos resultados limpo e organizado.
Sobre o Metasploit Meterpreter
Meterpreter é um payload avançado, dinamicamente extensível que usa na memória stagers injeção de DLL e se estende através da rede em tempo de execução. Ele se comunica sobre o soquete do stager e fornece uma abrangente API em ruby do lado do cliente . Possui histórico de comandos, preenchimento de guias, canais, e muito mais. Metepreter foi originalmente escrito por skape para 2.x Metasploit, extensões comuns foram fundidas para 3.xe está passando por uma reforma para Metasploit 3.3. A parte do servidor é implementado em C puro e agora é compilado com MSVC, tornando-o um pouco portátil. O cliente pode ser escrito em qualquer língua, mas Metasploit tem uma API cliente Rubi completo.
Fonte: Curso Metasploit(pt-br) - Break Security
Msfcli fornece uma interface de linha de comando poderosa para o Framework. Isso permite que você adicione facilmente exploits Metasploit em qualquer script que você pode criar.
Benefícios do mscli
- suporta o lançamento de exploits e módulos auxiliares
- Útil para tarefas específicas
- Bom para aprendizagem
- Conveniente usar ao testar ou desenvolver um novo exploit
- Boa ferramenta para one-off exploração
- Excelente se você sabe exatamente o que explorar e opções que você precisa
- Maravilhoso para uso em scripts e automação básica
- A única desvantagem do msfcli é que ele não é suportado muito bem como msfconsole e só pode lidar com uma shell de cada vez, tornando-se bastante prático para ataques client-side. Ele também não suporta nenhum dos recursos de automação avançados do msfconsole.
Msfconsole
O msfconsole é, provavelmente, a interface mais popular para o MSF. Ele fornece um console centralizado “all-in-one” e permite acesso eficiente a praticamente todas as opções disponíveis no Metasploit Framework. Msfconsole pode parecer intimidante no início, mas uma vez que você aprender a sintaxe dos comandos que você vai aprender a apreciar o poder de utilizar esta interface.
Benefícios
- É a única maneira suportada para acessar a maioria dos recursos no Metasploit.
- Fornece uma interface baseada em console para o framework
- Contém a maioria dos recursos e é a interface MSF mais estável
- Apoio readline completa, tabulação, e comando de conclusão
- Execução de comandos externos:
Iniciar
O msfconsole é inicializado, simplesmente executando msfconsole a partir da linha de comando. msfconsole está localizado no diretório/usr/share/metasploit-framework/msfconsole
Ajuda
Você pode passar -h para msfconsole para ver as outras opções de uso disponíveis para você.
Entrando com o comando help ou um ? uma vez no prompt de comando do MSF irá mostrar uma lista de comandos disponíveis, juntamente com uma descrição do que eles são usados.
Tab Conclusão
O msfconsole é projetado para ser fácil de usar e uma das características que ajudam esse objetivo é a conclusão de tabulação. Com a grande variedade de módulos disponíveis, pode ser difícil de lembrar o nome exato eo caminho do módulo específico que você deseja utilizar. Tal como acontece com a maioria das outras shell, entrando o que você sabe e pressionando ‘Tab’ irá apresentar-lhe uma lista de opções disponíveis para você ou auto-completar a seqüência, se houver apenas uma opção. Tab conclusão depende da extensão ruby readline e quase todos os comandos no console suporta a conclusão de tabulação.
- use exploit/windows/dce
- use .*netapi.*
- set LHOST
- show
- set TARGET
- set PAYLOAD windows/shell/
- exp
Exploits
Todos os exploits do Metasploit Framework vai cair em duas categorias: ativos e passivos.
Exploits Ativos
Exploits ativos vai explorar um host específico, executado até a conclusão, e depois sair.
- Módulos de força bruta sairá quando um shell abre a partir da vítima.
- Execução do Módulo para se for encontrado um erro.
- Você pode forçar um módulo ativo a trabalhar em background com a opção -j
Exploits passivos
Exploits passivos esperar por hospedeiros de entrada e de explorá-los como eles se conectam.
- Exploits passivos quase sempre tem seu foco em clientes como navegadores web, clientes de FTP, etc
- Eles também podem ser usados em conjunção com explorações de e-mail, à espera de ligações.
- Exploits passivos reportar shells como eles acontecem podem ser enumerados, passando o comando -l ele irá listar as sessões .Passando ‘-i’ irá interagir com uma shell.
Payloads
Existem três tipos diferentes de tipos de módulos de payloads no Metasploit: Singles, Stagers e Stages. Estes tipos diferentes permitem uma grande versatilidade e pode ser útil em vários tipos de cenários. Seja ou não um payload staged é representado por ‘/’ no nome do payload. Por exemplo, “windows/shell_bind_tcp” é um payload do tipo singles enquanto “windows/shell/bind_tcp” consiste em um stager (bind_tcp) e um stage (shell).
Singles
Singles são payloads que são auto-suficientes e completamente independente. O payload single pode ser algo tão simples como adicionar um usuário ao sistema de destino ou executar um calc.exe pore exemplo.
Stagers
Stagers são pequenos e configurados apenas para abrir uma conexão entre o atacante e o alvo . O Metasploit usará o melhor quando se pode e cair de volta para um menos preferido um quando necessário.
Windows NX vs NO-NX Stagers
Problema de confiabilidade para NX CPUs e DEP
Stagers NX são maiores (VirtualAlloc)
O padrão é agora NX + Win7 compatível
Stages
Stages são payloads que são baixados por módulos Stagers. As várias etapas de payload oferecem recursos avançados, sem limites de tamanho, como Meterpreter, VNC Injection, e ‘ipwn’ Shell do iPhone.
Payload stages usam automaticamente ‘middle stagers’
Um single recv() falha com grandes payloads
O stager recebe o middle stager
O midlle stager , executa um download completo
Também melhor para RWX
Databases
Ao realizar um teste de penetração, é freqüentemente um desafio para manter o controle de tudo o que você tem feito na rede de destino. Este é o lugar onde ter um banco de dados configurado pode ser uma grande economia de tempo. O Metasploit foi construído com suporte para o sistema de banco de dados PostgreSQL. O sistema permite acesso rápido e fácil para fazer a varredura de informações, nos dá a capacidade de importar e exportar os resultados da verificação de diversas ferramentas de terceiros. Também pode usar esta informação para configurar as opções de módulo rapidamente.Mais importante ainda, ele mantém os nossos resultados limpo e organizado.
Sobre o Metasploit Meterpreter
Meterpreter é um payload avançado, dinamicamente extensível que usa na memória stagers injeção de DLL e se estende através da rede em tempo de execução. Ele se comunica sobre o soquete do stager e fornece uma abrangente API em ruby do lado do cliente . Possui histórico de comandos, preenchimento de guias, canais, e muito mais. Metepreter foi originalmente escrito por skape para 2.x Metasploit, extensões comuns foram fundidas para 3.xe está passando por uma reforma para Metasploit 3.3. A parte do servidor é implementado em C puro e agora é compilado com MSVC, tornando-o um pouco portátil. O cliente pode ser escrito em qualquer língua, mas Metasploit tem uma API cliente Rubi completo.
Fonte: Curso Metasploit(pt-br) - Break Security