a
Pró-Reitoria de Pós-Graduação e Pesquisa
Lato Sensu em Perícia Digital
Trabalho de Conclusão de Curso
IDENTIFICAÇÃO DO USO DE MÁQUINAS VIRTUAIS, PARA
FINS ILÍCITOS, EM SISTEMAS OPERACIONAIS WINDOWS
Autor: Vinicius Honorato Mota Lopes
Orientador: Prof. Msc. Marcelo Beltrão Caiado
Brasília - DF
2013
VINICIUS HONORATO MOTA LOPES
IDENTIFICAÇÃO DO USO DE MÁQUINAS VIRTUAIS, PARA FINS ILÍCITOS, EM
SISTEMAS OPERACIONAIS WINDOWS
Artigo apresentado ao Programa de Pós-Graduação Lato
Sensu em Perícia Digital da Universidade Católica de
Brasília, como requisito parcial para obtenção do titulo
de especialista em Perícia Digital.
Orientador: Prof. Msc. Marcelo Beltrão Caiado
Examinador: Prof. MSc. Paulo Roberto Corrêa Leão
Brasília
2013
Artigo de autoria de Vinicius Honorato Mota Lopes, intitulada “IDENTIFICAÇÃO
DO USO DE MÁQUINAS VIRTUAIS, PARA FINS ILÍCITOS, EM SISTEMAS
OPERACIONAIS WINDOWS”, apresentada como requisito parcial para a obtenção do
certificado de Especialista em Perícia Digital da Universidade Católica de Brasília, em 05 de
Dezembro de 2013, defendido e aprovado pela banca examinadora abaixo assinada:
____________________________________________________
Prof. Msc. Marcelo Beltrão Caiado
Orientador
Pós-Graduação em Perícia Digital – UCB
____________________________________________________
Prof. Msc. Paulo Roberto Corrêa Leão
Examinador
Pós-Graduação em Perícia Digital – UCB
Brasília
2013
AGRADECIMENTOS
Agradeço ao orientador Prof. MSc Marcelo Caiado primordialmente pela chance
concedida, pelo acompanhamento e sugestões neste projeto.
Now, don't hang on
Nothing lasts forever but the earth and sky
It slips away
And all your money won't another minute buy
Scorpions – Dust in the Wind
IDENTIFICAÇÃO DO USO DE MÁQUINAS VIRTUAIS, PARA FINS ILÍCITOS, EM
SISTEMAS OPERACIONAIS WINDOWS
VINICIUS HONORATO MOTA LOPES
Resumo:
O uso de máquinas virtuais para testes controlados de malware, verificação do impacto de
atualizações em sistemas operacionais e análise de novas distribuições são cenários bastantes
utilizados por especialistas em computação. Por exemplo, com o recurso de snapshot1 o
trabalho de análise comportamental de vírus pode ser acompanhado desde sua infeção, neste
sistema controlado, até os arquivos e registros acessados/modificados em sistemas Windows.
Toda essa comodidade vem despertando interesse malicioso para o uso de máquina
virtual em ações de pentesting ilícitas. Sistemas operacionais, como o Kali Linux, oferecem
ferramentas prontas para um ataque massivo em uma rede local e ainda estão disponíveis na
internet a todos.
Este trabalho tem como finalidade subsidiar o perito digital com evidências e rastros
deixados, pelo uso da ferramenta de virtualização VirtualBox, em uma estação de trabalho
comprometida com sistema operacional Windows.
Palavras-chave: Forense em Windows, Anti Forense, Máquinas Virtuais
1. INTRODUÇÃO
A destinação de altos valores à compra e, principalmente, a renovação de recursos de
Tecnologia de Informação e Comunicação (TIC) era vista como desperdício de capital em
função do gasto com equipamentos que, em poucos anos, tornar-se-iam recursos legados, com
depreciação muito alta e gerando impacto no ativo fixo da empresa.
A virtualização proporciona um ou até vários ambientes centralizados e,
consequentemente, mais controlados. A redução de custos no consumo de energia, melhor
aproveitamento do espaço físico, consolidação de infraestrutura e facilidade para migração de
ambientes, por exemplo, destacam-se como benefícios da virtualização. No campo
empresarial soluções virtualizadas são bastante utilizadas.
Não será discutido aqui as vantagens e desvantagens de virtualização muito menos
conceitos mais intrínsecos do tema, mas a possibilidade de uma pessoa mal-intencionada
utilizar um notebook com sistema operacional da família Microsoft Windows, com soluções
virtualizadas, para ações ilícitas em uma rede local. Algumas destas soluções encontram-se
prontas para uso, em Live CD, por exemplo, para serem usadas em um dos aplicativos de
virtualização domésticos mais utilizados, o VirtualBox.
1
Recurso disponível em softwares de virtualização que permite salvar o estado de uma máquina virtual
1.1 JUSTIFICATIVA
A relevância do projeto parte de que segundo o Computer Emergency Response Team
(CERT), da Universidade Carnegie Mellon (Hammerstein, 2010), a Computação Forense é
um processo fortemente baseado na capacidade da mão de obra, requerendo especialistas
altamente treinados, com conhecimentos específicos sobre sistemas operacionais e
ferramentas de coleta e análise forense. Segundo Barret e Kipper (2010), caso seja solicitado a
um perito, treinado em forense computacional, que realize uma análise de um sistema
comprometido esta será, em sua grande maioria, uma tarefa sem grandes desafios. Entretanto,
se após o rastreamento de uma máquina atacante for constatado que esta não teria condições
para realizar os ataques registrados nos logs do servidor, como por exemplo, a falta de
ferramentas de pentesting ou registros de instalação destas o analista certamente encontraria
problemas para elaborar seu laudo técnico.
Tendo em mente a capacitação de mão-de-obra e diante deste novo cenário de ataques
e técnicas antiforenses nos valemos de que a estratégia de análise deverá ser repensada.
1.2 DELIMITAÇÃO DO TEMA
A meta deste trabalho é expor a criticidade e dificuldade de análise, por parte do perito
digital, quando uma pessoa mal intencionada utiliza-se de uma máquina virtual para praticar
ações ilícitas em uma rede local.
1.3 PROBLEMA
1.3.1 Contextualização do problema
Com o advento do uso de máquinas virtuais em ações ilícitas o procedimento de
análise a ser conduzido pelo Perito Digital deverá ser revisto.
1.3.2 Enunciado do problema
Como o uso de máquinas virtuais, previamente preparadas, para disseminação de
ações ilícitas pode dificultar o trabalho do Perito Digital durante sua análise e quais
evidências podem expor seu uso na máquina comprometida?
1.4 PROPÓSITOS
1.4.1 Objetivos Específicos
O conhecimento gerado por este trabalho foi motivado, pois, como exposto no final da
introdução, observou-se o interesse em rever as técnicas de análise com a inclusão desta nova
variável de virtualização e pela escassa literatura sobre Forense em sistemas virtuais.
1.4.1 Objetivos Específicos
Este trabalho tem como objetivo alcançar:
a) Definição de procedimentos para análise em ambiente Windows comprometido;
b) Descrição de informações pertinentes ao trabalho do perito; e
c) Avaliação de evidências que serão apresentadas em um estudo de caso de uma
máquina comprometida.
2. ORGANIZAÇÃO
Além da introdução formulada este trabalho está estruturado da seguinte forma:
a) Capítulo 3: Abordagem de conceitos e ferramentas para melhor compreensão como:
Virtualbox, estrutura de registro do Windows dentre outras;
b) Capítulo 4: Serão enumeradas informações que devem ser verificadas no registro do
Windows em máquinas comprometidas e a formulação de procedimentos para
identificá-las tais como: identificação das principais chaves de registro alteradas pelo
uso de mídias removíveis e do uso de máquinas virtuais; e
c) Capítulo 5: Finalmente apresentaremos quais as principais alterações que a instalação
do VirtualBox realiza em um sistema Windows visando auxiliar a detecção de seu uso.
3. EMBASAMENTO TEÓRICO
3.1 ATO ILÍCITO
Segundo BITTAR (2007) “… ato ilícito é o procedimento, comissivo (ação) ou
omissivo (omissão, ou abstenção), desconforme à ordem jurídica, que causa lesão a outrem,
de cunho moral ou patrimonial.”
O conceito de ato ilícito é de suma importância para a responsabilidade civil, vez que
este faz nascer a obrigação de reparar o dano. O ilícito repercute na esfera do Direito
produzindo efeitos jurídicos não pretendidos pelo agente, mas impostos pelo ordenamento.
Segundo CAVALCANTE (2012) na esfera de crimes e delitos a Lei nº 12.737/2012
altera o Código Penal para tipificar como infrações uma série de condutas no ambiente digital,
principalmente em relação à invasão de computadores como mostrado no quadro 1.
Quadro 1: Principais mudanças no Código Penal
INVASÃO DE DISPOSITIVO INFORMÁTICO
Art. 154-A. Invadir dispositivo informático alheio, conectado ou não à rede de computadores, mediante
violação indevida de mecanismo de segurança e com o fim de obter, adulterar ou destruir dados ou
informações sem autorização expressa ou tácita do titular do dispositivo ou instalar vulnerabilidades para
obter vantagem ilícita.
Art. 154-B. Nos crimes definidos no art. 154-A, somente se procede mediante representação, salvo se o crime
é cometido contra a administração pública direta ou indireta de qualquer dos Poderes da União, Estados,
Distrito Federal ou Municípios ou contra empresas concessionárias de serviços públicos.
Fonte: Extrato da Lei nº 12.737
3.2 ANTIFORENSE
Para dificultar ainda mais o trabalho do perito digital, REIS (2003) afirma podem
ocorrer muitas dificuldades na coleta e análise de vestígios deixados na máquina utilizada no
ato ilícito. Criminosos podem utilizar métodos denominados antiforenses para esconder,
danificar ou excluir seus rastros digitais na cena do crime. Portanto, a antiforense pode ser
definida como a tentativa negativa de alterar a existência, quantidade e qualidade dos
vestígios eletrônicos, ou também, dificultar ou impossibilitar a realização da investigação
destas evidências (ROGERS, 2006).
3.3 VIRTUALBOX
Adquirida e distribuída pela Sun Microsystems é um conjunto de ferramentas para
virtualização destinado, segundo o site oficial do VirtualBox, tanto ao ambiente de desktop
quanto ao ambiente de servidores. O VirtualBox oferece virtualização de sistemas
operacionais de 32bit ou 64bit além de poder criar máquinas virtuais mesmo com
processadores sem recursos de virtualização. O VirtualBox é executado em um sistema
operacional já instalado que pode ser Windows, Linux, Mac OSX e Solaris.
3.4 REGISTRO DO WINDOWS
O Registro do Windows é uma espécie de banco de dados, onde são armazenadas as
informações sobre todos os programas instalados, estrutura de diretórios, informações do
usuário, de drivers e etc. Ele existe desde as versões do Windows 3.x, mas passou a ser
utilizado como padrão, a partir do Windows 95 (MICROSOFT KB 256986).
O registro guarda informações acerca de ações realizadas, arquivos recentemente
abertos, dispositivos de hardware removível, etc. O registro pode ainda conter dados ocultos,
propositalmente escondidos, úteis para uma investigação ou perícia.
A estrutura do registro é dividida em cinco ou seis hives, dependendo da versão do
sistema operacional. As chaves são as unidades básicas de informação e se distribuem de
forma hierárquica pelas hives podendo conter outras chaves (subchaves) ou itens que
armazenam dados reais, seus valores. As hives são identificadas inicialmente pelas letras
HKEY (H de handle e KEY de chave) seguidas da classe de identificação, conforme veremos
na figura 1.
Figura 1: Exemplo de organização do registro no Windows 7
hive
valor
chave
subchave
dado
Fonte: Captura de tela da máquina de trabalho
As principais hives e suas respectivas descrições são mostradas no quadro 2.
Quadro 2: Principais hives e suas descrições em sistemas Windows
Root Key
Descrição
HKEY_CLASSES_ROOT (HKCR)
Contém informações relativas à associação de arquivos aos
respectivos softwares criadores, editores ou visualizadores.
HKEY_CURRENT_USER (HKCU)
Contém informações relativas ao perfil do usuário ativo.
HKEY_USERS (HKU)
Contém informações relativas a todos os usuários do equipamento
e suas configurações pessoais. A Chave HKEY_CURRENT_USER
possui um apontador para o usuário corrente. O usuário é
identificado na chave pelo SID (security Indentifier).
HKEY_LOCAL_MACHINE (HKLM)
Mostra informações sobre configurações do computador aplicadas
a qualquer usuário.
HKEY_CURRENT_CONFIG (HKCC)
Informações sobre perfil de hardware usado na máquina local são
armazenadas nesta chave.
HKEY_DYN_DATA (HKDD)
Contém informações dinâmicas da sessão, como driver de
dispositivo virtual (VxD), configurações de plug and play, etc.,
encontrada apenas nos Windows 9X
Fonte: http://support.microsoft.com/kb/256986, acessado em 13NOV2013
As estruturas das hives são armazenadas fisicamente em arquivos. As principais hives
(SAM, Security, Software e System) podem ser coletadas no diretório
Windows\system32\config, como ilustradas na figura abaixo.
Figura 2: Arquivos das Hive do registro
Fonte: Captura de tela do Windows XP no diretório Windows\System32\Config
Outro arquivo que merece destaque é o NTUSER.DAT que está dentro do diretório
raiz de cada usuário. Ele contém configurações personalizadas, inclusive do Windows, dos
softwares instalados na máquina. Quando um usuário se loga no sistema o arquivo é
montando junto à hive HKEY_CURRENT_USER e realizado o inverso durante o logoff.
3.5 MFT (MASTER FILE TABLE)
Em sistemas de arquivos NTFS a MFT serve como contêiner para armazenar
metadados de todos os objetos do sistema operacional (arquivo, diretórios e arquivo de
metadados). Estes valores são os principais alvos de ações antiforense.
Neste trabalho não discutiremos toda a estrutura do MFT. Ao invés disso, focaremos
em dois atributos, $STANDARD_INFORMATION_ATTRIBUTE ($SIA) e $FILE_NAME
($FNA).
Segundo Halan Carvey (2012), as informações contidas no $SIA dos arquivos e
diretórios são conjuntos de timestamps, registrados em formato UTC em NTFS e em hora
local da máquina em FAT32, armazenados em registros de 72 bytes. Estes valores de tempo
referem-se aos tempos de última modificação, acesso, de atributo MFT alterado e criação, ou
tempos MACB. Será adotada neste trabalho a sintaxe MACE. No quadro 3 segue uma
descrição de cada elemento.
Quadro 3: timestamps MACE
Letra
Descrição
M
Modificado, última data/hora que o arquivo foi
aberto, editado e salvo
A
Acessado, data/hora do último acesso ao conteúdo
do arquivo
C
Criado, data/hora de quando o arquivo é criado
E
Chave modificada no registro MFT, refere-se ao
tamanho ou localização do arquivo
Fonte: http://www.slideshare.net/ctin/time-stamp-analysis-of-windows-systems
Adicionalmente, cada arquivo em NTFS terá pelo menos um atributo $FNA nos
registros MFT. Este atributo contém 66 bytes de metadados, seu nome, referência à pasta pai e
os 4 timestamps da tabela 3.
Como técnica antiforense é possível mascarar os rastros de acesso pelo invasor nos
arquivos do sistema. Caso haja permissão de escrita aos arquivos é possível modificar2 seus
valores de timestamp no atributo $SIA.
4 IDENTIFICAÇÃO DO VIRTUALBOX EM SISTEMAS WINDOWS
Existem diversos arquivos no Windows que se forem analisados podem fornecer
informações importantes sobre o uso indevido nestas máquinas.
Segundo CARVEY (2009, pg 158) o Registro é uma mina de ouro em informações
para administradores e peritos forenses. Em muitos casos softwares usados por atacantes
deixam rastros no registros e pistas sobre o incidente.
O sistema comprometido pode ter sido acessado por vários usuários. O analista não
pode confiar fielmente nos timestamps pois estes podem ter sido adulterados (CARVEY,
2011, pg 161). Sendo assim, é necessário analisar outras informações, que serão descritas a
seguir, para que haja uma melhor abordagem a respeito das atividades associadas a cada
usuário e comprovar que um usuário em especial executou o VirtualBox, para fins ilícitos, em
uma estação de trabalho comprometida.
4.1 ARQUIVOS LNK (ATALHOS)
Um arquivo LNK pode revelar o que o usuário acessou (volume, nó de rede ou
arquivo), seu identificador de classe (GUID), seu caminho completo, timestamps, número
serial do volume e o endereço MAC de onde o acesso partiu por exemplo (MICROSOFT, KB
256986).
Quando um atalho é criado, a partir da instalação de um programa por exemplo, os
timestamps criado, modificado e acessado são setados para o atual momento. Durante todo o
ciclo de vida do atalho seu timestamp criado permanece inalterado. O timestamp de data de
modificação do atalho representa o último acesso ao programa apontado pelo atalho.
PARSONAGE (2009)
4.2 ARQUIVOS MAIS RECENTES USADOS (MRU3) E PROGRAMAS EXECUTADOS
(RUNMRU)
São mantidas no registro chaves que salvam, de forma ordenada, o acesso a arquivos
e programas. Na figura 3 pode-se perceber que houve 4 acessos distribuídos entre arquivos
PNG, ZIP e diretórios.
2
3
Técnica conhecida como time stomping.
A sigla MRU vem de “most recently used”. MICROSOFT, KB 142298.
Figura 3: Exemplo de arquivos mais recentes usados no WindowsXP
Fonte: \Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs
Outra chave que merece destaque é aquela que mantêm salvo os programas
executados pelo menu iniciar (tecla de atalho Windows+R). A ordem, como mostrado na
figura a seguir, está definida pelo arquivo MRUList visualizando-se a sequência de execução
(MRUList: ba) do mspaint e logo após uma chamada ao regedit.
Figura 4: Exemplo de programas executados no WindowsXP
Fonte: \Software\Microsoft\Windows\CurrentVersion\RunMRU
4.3 MOUNTEDDEVICE
Nesta chave são armazenadas informações sobre dispositivos e volumes montados no
sistema.
Figura 5: Volumes montados em uma máquina WindowsXP
Fonte: HKEY_LOCAL_MACHINE\System\MountedDevices
Como pode ser visto na figura 5 há dois tipos básicos de nomes. “DosDevices”
que se referem a drives ou letras de volumes e aqueles que começam com “\??\Volume” que
se referem a volumes. A partir de MountedDevice e USBSTOR (que será mostrado adiante) é
possível precisar a letra usada pelo dispositivo de armazenamento usb.
CARVEY (2011) menciona estudos de Rob Lee (SANS) em que o timestamp
LastWrite indica quando o dispositivo foi conectado ao sistema na atual seção.
Aqui é possível identificar se um volume do TrueCrypt4 foi usado no sistema. Este
ponto merece destaque caso o uso da ferramenta não faça parte da rotina do proprietário da
estação de trabalho.
4.4 REGISTRO DE USO DE MÍDIA REMOVÍVEL
Quando mídias removíveis são plugadas, assinaturas e rastros são gravados no
registro. Assim que seu driver for legalmente carregado uma chave é criada, em destaque,
conforme figura 6.
A sub-chave, em azul, na figura 6 representa o identificador de classe do dispositivo
(Device Class ID). Em dispositivos onde o serial não está presente em seu descritor uma única
subchave (Unique Instance ID) é gerada. As duas subchaves representam quantas vezes um
smartfone android foi plugado na máquina (no caso da figura, 2 vezes) e correspondem ao
serial do dispositivo.
4
Ferramenta utilizada para criptografia de volumes obtida em www.truecrypt.org
Figura 6: Extrato do registro mostrando o Device Class ID e Unique Instace ID
Fonte: Captura de tela do Windows 8
Assim se o invasor for detido com um pendrive é possível, com ajuda das informações
mostradas acima, inferir se este foi usado no sistema para praticar alguma ação ilícita.
4.5 USERASSIST
Diversos estudiosos (HAOYANG, KEYU, XIAOHONG e HONGBIAO; 2012)
apontam que outro lugar importante para o perito checar é a chave UserAssist. Nesta parte do
registro há chaves com identificadores únicos (GUID) e em cada uma delas contém subchaves
chamadas count que abrigam registros de acesso (codificados em ROT135) do usuário ao
sistema tais como: acesso aos componentes do painel de controle, atalhos, programas,
documentos, mídias e etc.
Cada registro de acesso contem um valor hexadecimal de 16 bytes. O quinto byte (da
esquerda para a direita) representa, por exemplo, quantas vezes uma aplicação foi executada.
Vale salientar que o contador se inicia em 5. Os últimos 8 bytes representam o timestamp (em
formato UTC) de sua última execução. Como exemplo prático será extraída a chave grifada
em azul (figura 7) e faremos a decodificação6 desta que se encontra em rot13:
Figura 7: Exemplo da chave UserAssist no Windows XP
5
Do inglês, ROTate by 13 places (ROTacionar 13 posições) é um método de cifragem aplicável apenas
aos caracteres alfabéticos com passo 13.
6 Decodificação utilizando a ferramenta online http://edoceo.com/utilitas/rot13
Quadro 4: Extrato da chave da figura 7
Chave UserAssist
HRZR_EHACNGU:P:\Qbphzragf naq Frggvatf\IZHFRE\Zrhf qbphzragbf\ap.rkr
Chave decodificada
UEME_RUNPATH:C:\Documents and Settings\VMUSER\Meus documentos\nc.exe
Figura 8: Valor da chave da figura 7
Analisando-se seu valor hexadecimal (figura 9) e convertendo o timestamp7
concluímos que o usuário VMUSER, ou alguém que roubou sua identidade, executou o
nc.exe (netcat8) 2 vezes (7 – 5) e sua última execução foi, conforme figura 8, às 16:21:35 do
dia 14 de nov. de 2013.
Figura 9: Timestamp da figura 7
4.6 ARQUIVOS PREFETCH
É um componente do gerenciador de memória do Windows que foi introduzido no
Windows XP para aumentar a velocidade de processo de boot e reduzir o tempo gasto para
programas iniciarem (RUSSINOVICH e SOLOMON, 2005).
7
8
Utilizada a ferramenta DCode disponível em http://www.digital-detective.co.uk/freetools/decode.asp
Ferramenta de rede que permite abrir portas TCP/UDP em uma máquina
Segundo CARVEY (2012) muitos analistas reconhecem seu valor para a forense. Com
a ajuda de outros artefatos, é possível constatar se um usuário ou um invasor tentou camuflar
suas atividades.
A idéia baseia-se na monitoração de aplicações para coletar e armazenar, em local
único, todas as informações necessárias para sua execução. Desta forma, o sistema não
precisa vasculhar todo o sistema de arquivos em busca de DLL e outras informações
pertinentes para a execução da aplicação. Cada arquivo prefetch inclui o nome da aplicação
seguido de um traço mais um hash que contem o caminho da aplicação e os argumentos
usados.
Os arquivos prefetch possuem metadados onde é possível, por exemplo, verificar a
última execução de um programa, de qual volume do sistema de arquivos este foi executado e
seu número de execuções. Visando facilitar a análise arquivos prefetch utilizaremos a
ferramenta WinPrefetchView9 que mostra de forma amigável suas informações (figura 10).
Figura 10: Extrato da ferramenta WinPrefetchView no WindowsXP
4.7 DELEÇÃO DE CHAVES DE REGISTRO
Assim como arquivos, chaves de registro não somem por completo quando são
apagadas. O espaço que a chave ocupa dentro do arquivo na hive é marcado como disponível
podendo assim ser sobrescrito. Infelizmente, sua estrutura física não é tão simples como nos
sistemas de arquivos e não há material fornecido pela Microsoft em apoio a este estudo.
O estudo sobre a recuperação de chaves de registros que foram apagadas não será
contemplado neste trabalho devido a sua complexidade como citado acima.
9
Ferramenta disponível em http://www.nirsoft.net/utils/win_prefetch_view.html
4.9 VESTÍGIOS DE INSTALAÇÃO E USO DO VIRTUALBOX
Segundo YIN (2010, p. 22) um estudo de caso é uma das várias maneiras de realizar
uma pesquisa de ciência social. Em geral, o estudo de caso é o método preferido quando: as
questões “como” ou “por que” são propostas; o investigador tem pouco controle sobre os
eventos; e o enfoque está sobre um fenômeno contemporâneo no contexto da vida real.
Sendo assim, a partir das informações elencadas e analisadas anteriormente, serão
expostas as alterações que a instalação do VirtualBox efetua (sistemas de arquivos e registro)
em uma máquina virtual utilizando o sistema operacional Windows XP.
Para termos de estudo, uma rede local não possui acesso à internet e uma de suas
máquinas foi usada para realizar um ataque de força bruta contra o serviço SSH em um
servidor (foram constatadas várias tentativas de acesso pelo IP daquela em um curto espaço de
tempo). Durante a análise, o perito constatou que a máquina com Windows XP não seria
capaz de executar tais ações ilícitas pois não se observou nenhuma ferramenta de intrusão
instalada. Sendo assim, a estratégia de análise deverá ser repensada e visando enriquecer este
ensaio, serão mostradas as principais evidências deixadas pela ferramenta mesmo após sua
desinstalação.
Foi realizado um dump do registro da máquina com o FTK Imager10 e para melhor
ilustração dos resultados serão utilizadas as ferramentas já apresentadas com a adição do
Windows Registry Recovery11 (WRR).
Conforme mostrado no item 3.2, máquinas comprometidas podem ter sido alvos de
técnicas de antiforense, mas esta análise não será realizada, pois o assunto é extenso ficando
assim postergado para projetos futuros.
4.9.1 BUSCANDO POR ARQUIVOS LNK
Após a desinstalação do VirtualBox não há rastros visíveis de atalhos. Utilizando-se a
ferramenta FTK Imager é possível encontrar evidências. Nas figuras 11 e 12 é possível
constatar que arquivos apagados no sistema não desaparecem por completo, pois suas
entradas no registro MFT apenas ficam marcadas como livres.
Figura 11: Encontrado arquivo LNK do VirtualBox mesmo após desinstalação
10 Ferramenta de aquisição de dados para análise forense obtida em http://www.accessdata.com
11 Software para análise de arquivos de hive obtida em http://www.mitec.cz/wrr.html
Figura 12: Visualização do instalador do VirtualBox apagado
4.9.2 REGISTRO DE USO DE MÍDIA REMOVÍVEL
Como citado, não há acesso à internet, assim o invasor provavelmente teria plugado
alguma mídia removível com ferramentas de pentesting. Utilizando o WRR com os arquivos
de hive da máquina é possível observar nas figuras 13 e 14 que uma mídia removível foi
plugada pelo usuário e o sistema atribuiu ao volume a letra “E”. Apoiando-se na citação do
item 4.3 sobre o registro LastWrite, podemos afirmar que esta ação ocorreu por volta das
03:44:10.
Figura 13: Volumes montados pelo usuário
Figura 14: Propriedades da chave da figura anterior
Finalmente utilizado o arquivo NTUSER.DAT (figura 15) pode-se perceber que uma
imagem ISO, possivelmente do sistema operacional Kali Linux12, foi usada a partir da mídia
removível identificada anteriormente para ser usada junto ao VirtualBox como LiveCD.
Figura 15: Arquivo com as informações do usuário
4.9.3 IDENTIFICANDO VESTÍGIOS NAS CHAVES USERASSIST
Utilizando a ferramenta citada é possível constatar que o VirtualBox foi executado
várias vezes como mostrado na figura 16.
Figura 16: Visualização dos arquivos do VirtualBox executados na máquina
12
Distribuição Linux, baseada em Debian, especializada em Testes de Intrusão e Auditoria de Segurança
obtida em http://www.kali.org/
4.9.4 VISUALIZAÇÃO DE ARQUIVOS PREFETCH
Seguem-se os arquivos que ratificam ainda mais a execução do VirtualBox na
máquina. Mesmo que estes sejam excluídos é possível recuperá-los nos registros MFT como
mostrado na figura 17.
Figura 17: Registros sobre arquivos prefetch na estrutura MFT
Na figura 18 é mostrada uma melhor visualização dos arquivos.
Figura 18: Formatação dos arquivos prefetch com ferramenta WinPrefetchView
4.9.5 OUTRAS CONSIDERAÇÕES
O VirtualBox armazena na raiz da pasta do usuário um diretório denominado
“VirtualBox Vms” que abriga todas as máquinas virtuais criadas pelo usuário e seus
respectivos arquivos de configurações e logs.
Figura 2: Pasta VirtualBox VMs do caso de uso
Segundo o BLOG da ORACLE, na pasta Logs da figura 19 é possível, ao se analisar o
arquivo Vbox.txt, precisar quando uma máquina virtual foi iniciada e desligada a partir das
ocorrências de texto “Changing the VM state from CREATED to POWERING_ON” e “Guest
state at power off” respectivamente.
No arquivo KaliLinux.txt, figura 20, estão configurações interessantes ao
analista: as informações de rede, mídias usadas e seu disco rígido virtual. É possível ratificar
que foi utilizada a ISO do Kali Linux (tag XML “DVDImages”) a partir do pendrive plotado
no item 4.9.2. A resposta para o IP da máquina WindowsXP ter aparecido nos logs de SSH do
servidor deve-se ao fato da máquina virtual estar realizado NAT (subtag de “Network”) com a
interface de rede da máquina física.
Figura 3: Extrato do arquivo KaliLinux.txt
O arquivo KaliLinux.vmdk, ressaltado na tag XML “HardDisks”, é o disco rígido
virtual criado para acomodar o sistema operacional instalado, no caso o Kali Linux. Com
todos esses arquivos mostrados na figura 19 é possível reativar a máquina virtual para então
realizar uma segunda bateria de análises forenses e descobrir quais as ferramentas ilícitas
utilizadas e seus respectivos timestamps. Como este arquivo tende a ocupar vários clusters
devido ao seu tamanho, na ordem de 2-4GB, a simples remoção pode tornar sua recuperação
problemática devido à fragmentação do sistema de arquivos no WindowsXP.
5 CONCLUSÃO
Ficou comprovado que sempre haverão vestígios e evidências que auxiliarão o perito
em sua análise por anormalidades e abuso em máquinas.
Há muitas outras fontes para coleta de evidências não citadas tais como: Logs de
Eventos, verificação de memória e pagefiles.sys13 que poderiam agregar ainda mais valor,
mas o uso destas merecem trabalhos dedicados devido à extensão e complexidade de cada
tema exposto.
Outro ponto a ser levado em consideração foi o não uso de técnicas antiforese. A
coleta de evidências não será prejudicada desde que o perito tenha um conhecimento mínimo
do que fora apresentado. Caso chaves de registros tivessem sido apagas, arquivos removidos e
logo após o desfragmentador de disco fosse executado, os resultados poderiam ser bem mais
obscuros.
6 PROJETOS FUTUROS
Tendo em vista o aprimoramento deste trabalho sugere-se a formalização de
procedimentos para aquisição de dados em forense de máquinas virtuais e a elaboração de
técnicas para recuperação de chaves de registro apagadas.
Outra vertente que poderia ser explorada seria a identificação e análise de técnicas de
antiforense que visam ocultar intenções ilícitas e destruição de evidências.
13
É um arquivo criado para sanar insuficiência de memória RAM em sistemas Windows
ABSTRACT
Keywords: Forensics on Windows, Anti Forensics, Virtual Machines
The use of Virtual machines for malware´s controlled tests, veryfication the impact of
upgrades in operating systems and analysis of new distributions are scenarios used by
computer experts. For example, with the recurse of snapshot behavioral analysis of virus can
be traced from their infection, in this controlled system, to the files and records
accessed/modified in Windows systems.
This feature raises interest for the use of virtual machine actions in illegal pentesting.
Operating systems, such as Linux Kali, are ready to offer a complete environment of attacks
on a local network and these tools are still available on the internet for everybody.
This work aims to subsidize digital expert with evidence and traces, left by use of the
VirtualBox virtualization tool, on a compromised workstation with Windows operating
system.
REFERÊNCIAS
•
BARRET, Diane e KIPPER, Gaeg. Virtualization and Forensics, A digital Forensic
Investigator´s guide to virtual enviorements. Burlington, MA, 2010, Syngress Publising,
Inc
•
CARVEY, Harlan. Windows forensic analysis: DVD toolkit, 2ª ed..Burlington, MA,
2009 Syngress Publising, Inc
•
______________. Windows Forensic Analysis Toolkit, 3ª ed. Burlington, MA, 2012,
Syngress Publising, Inc
•
ForensicsWiki, disponível em <http://www.forensicswiki.org/wiki/MAC_times>.
Acesso em: 13 nov 2013.
•
HARRIS, Ryan. Arriving at an anti-forensics consensus: Examining how to define
and control the antiforense problem. Acesso em 14 de nov. 2013. Disponível em:
<http://www.dfrws.org/2006/proceedings/6-Harris.pdf>.
•
MICROSOFT, MS-SHLLINK: Shell Link (.LNK) Binary File Format. 08 de ago.
de 2013. Acesso em 14 de nov. 2013. Disponível em: <http://msdn.microsoft.com/enus/library/dd871305.aspx>.
•
“Ovide Decroly.” TrabalhosFeitos.com. 10, 2012. Acesso em 14 de nov. de 2013.
http://www.trabalhosfeitos.com/ensaios/Ovide-Decroly/416151.html.
•
ROGERS, M. Panel session at CERIAS 2006. Information Security Symposium.
Disponível
em
http://www.cerias.purdue.edu/symposium/2006/materials/pdfs/antiforensics.pdf. Acessado em
14 de nov. 2013
•
MICROSOFT, KB 256986. Informações do Registro do Windows para usuários
avançados. Disponível em: http://support.microsoft.com/kb/256986. Acessado em: 14 de ago
de 2013.
•
MICROSOFT, KB 142298. Como limpar as listas MRU do Windows Explorer.
Disponível em: http://support.microsoft.com/kb/142298. Acessado em: 14 de ago. De 2013.
•
LEE, Rob (2009). Guide to Profiling USB Device. SANS INSTITUTE. Disponível
em https://blogs.sans.org/computer-forensics/files/2009/09/USBKEY-Guide.pdf. Acessado
em: 14 de ago. de 2013.
•
KARSTETTER, Randall. Time Stamp Analysis of Windows Systems. 12 de mai. de
2011. Disponivel em: http://www.slideshare.net/ctin/time-stamp-analysis-of-windowssystems. Acessado em 14 de ago. de 2013.
•
BITTAR, Carlos Alberto. Teoria Geral do Direito Civil, 2007, Forense Universitária.
•
CAVALCANTE, Márcio André Lopes. Primeiros comentários à Lei n.°12.737/2012,
que
tipifica
a
invasão
de
dispositivo
informático.
Disponível
em:
http://www.dizerodireito.com.br. Acesso em: 14 nov 2013
•
BRASIL. Lei nº. 12.737, de 30 de novembro de 2012. Dispõe sobre a tipificação
criminal de delitos informáticos; altera o Decreto-Lei nº 2.848, de 7 de dezembro de 1940 –
Código
Penal;
e
dá
outras
providências.
Disponível
em
<http://www.planalto.gov.br/ccivil_03/_ato2011-2014/2012/lei/l12737.htm>. Acesso em 14
de nov. de 2013
•
REIS, M. A. Forense computacional e sua aplicação em segurança imunológica.
Dissertação de mestrado, Instituto de Computação, Universidade Estadual de Campinas,
2003.
•
ROGERS, M. Panel session at CERIAS 2006. Information Security Symposium.
Disponível
em
http://www.cerias.purdue.edu/symposium/2006/materials/pdfs/antiforensics.pdf. Acesso em
14 nov. 2013.
•
PARSONAGE, H. The meaning of linkfiles in forensic examinations,
2009.Disponível
em
<http://computerforensics.parsonage.co.uk/downloads/TheMeaningofLIFE.pdf>. Acesso em
14 de nov. 2013.
•
DERRICK, J. Farmer. A Windows Registry Quick-Reference for the Everyday
Examiner.
2007,
Champlain
College.Burlington,
Vermont.
Disponível
em
<http://www.forensicfocus.com/downloads/windows-registry-quick-reference.pdf>. Acesso
em 14 de nov. 2013
•
HAOYANG Xie; KEYU Jiang; XIAOHONG Yuan; HONGBIAO Zeng. Forensic
Analysis Of Windows Registry Against Intrusion. International Journal of Network
Security & Its Applications (IJNSA), Vol.4, No.2, março de 2012. Disponível em:
<http://airccse.org/journal/nsa/0312nsa09.pdf>. Acesso em 14 de nov. de 2013.
•
RUSSINOVICH, Mark; SOLOMON, David. Microsoft Windows Internals. 4 ed.
2005, Microsoft Press.
•
YIN, R. K. Estudo de Caso: Planejamento e Métodos. 4. ed. Porto Alegre: 2010 ,
Bookman.
•
BLOG
ORACLE.
VirtualBox
log
files.
Disponível
em
https://blogs.oracle.com/fatbloke/entry/virtualbox_log_files. Acesso em 28 de nov. de 2013.
Download

Vinícius Honorato Mora Lopes - Universidade Católica de Brasília