Forense Computacional: fundamentos, tecnologias e
Transcrição
Forense Computacional: fundamentos, tecnologias e
Forense Computacional: fundamentos, tecnologias e desafios atuais Evandro Della Vecchia Pereira, Leonardo Lemes Fagundes, Paulo Neukamp, Glauco Ludwig, Marlom Konrath Universidade do Vale do Rio dos Sinos (UNISINOS) [email protected] SBSeg 2007 Autores Mestre em Ciência da Computação pela UFRGS, Bacharel em Ciência da Computação pela PUCRS. Atualmente é perito criminal do Estado do Rio Grande do Sul (SSP/IGP – Instituto Geral de Perícias) e professor da Graduação Tecnológica em Segurança da UNISINOS. Contato: [email protected] Mestre em Computação Aplicada e Bacharel em Informática - Hab. Análise de Sistemas pela Universidade do Vale do Rio dos Sinos – UNISINOS. Atualmente é coordenador executivo e professor da Graduação Tecnológica em Segurança da UNISINOS. Contato: [email protected] Tecnólogo em Segurança da informação – Graduado na Universidade do Vale do Rio dos Sinos – UNISINOS. Criador e mantenedor da distribuição FDTKUbuntuBr (Forense Digital ToolKit), Analista de suporte em uma multinacional química em Novo Hamburgo - RS. Contato: [email protected] Mestre em Computação Aplicada e Especialista em Redes de Computadores pela Universidade do Vale do Rio dos Sinos – UNISINOS. Atualmente é professor da Graduação Tecnológica em Segurança, Desenvolvimento de Jogos e Engenharia da Computação desta instituição. Contato: [email protected] Mestre em Computação Aplicada e Bacharel em Informática (Análise de Sistemas) pela Universidade do Vale do Rio dos Sinos – UNISINOS. Atualmente trabalha em uma empresa de desenvolvimento de software em São Paulo. Possui interesse nas áreas: Peer-to-Peer, Redes e Segurança. Contato: [email protected] 2 Roteiro Introdução Códigos maliciosos (malware) Forense computacional Técnicas forenses Exame dos dados Ferramentas forenses Estudos de caso Desafios atuais em forense computacional Considerações finais 3 Introdução Cyber crime: são utilizados dispositivos eletrônicos, computadores e Internet y Mais difícil de ser investigado devido à possibilidade de anonimato y As evidências podem estar distribuídas em diversos servidores Segundo estatísticas, em 2006, aproximadamente U$200.000.000,00 foram perdidos em fraudes eletrônicas y Ex.: Nigerian Letter Fraud y Cerca de 76% dos casos reportados tiveram o e-mail como meio de comunicação com a vítima 4 Introdução Ocorrências mais comuns: y Calúnia, difamação e injúria via e-mail y Roubo de informações confidenciais y Remoção de arquivos Outros crimes: y Pedofilia y Fraudes y Tráfico de drogas via Internet 5 Introdução Investigações começam a depender de conhecimento técnico para desvendar crimes cibernéticos Æ forense computacional “Forense Computacional pode ser definida como a inspeção científica e sistemática em ambientes computacionais, com a finalidade de angariar evidências derivadas de fontes digitais para que seja possível promover a reconstituição dos eventos encontrados (podendo assim, determinar se o ambiente em análise foi utilizado na realização de atividades ilegais ou não autorizadas)” 6 Códigos maliciosos (Malware) “Conjunto de instruções executadas em um computador e que fazem o sistema realizar algo que um atacante deseja” Cada malware é classificado em uma ou mais categorias, de acordo com ações que este realiza Geralmente conhecidos como vírus ou trojans (cavalos de tróia), mas existem outras categorias: y y y y y y Backdoors Spywares Worms Keyloggers Rootkits Bots 7 Códigos maliciosos - Vírus Possuem a capacidade de se auto-replicarem “Um vírus é considerado uma função computável que infecta qualquer programa. Um programa infectado pode realizar três ações, disparadas conforme as entradas:” y Ser executado para propagar a infecção y Danificar o sistema y Se faz passar por algum programa Uma das características de um vírus: necessidade de anexar-se a um “arquivo hospedeiro” y Arquivo executável y Setor de inicialização y Documento que suporte macros 8 Códigos maliciosos - Vírus Propagação de vírus: y y y y Mídias removíveis E-mails Downloads Diretórios compartilhados Os vírus possuem diferentes classificações, de acordo com autores de publicações “Vírus acompanhantes”: não infectam arquivos executáveis, mas utilizam o mesmo nome, com extensão diferente (aquela que tem prioridade) y Ex.: Se o usuário clicar em Iniciar Æ Executar, e digitar “notepad”, será executado um arquivo com nome “notepad” e com qual extensão? 9 Códigos maliciosos - Vírus 10 Códigos maliciosos - Vírus Nos vírus que infectam um arquivo executável, modificando seu código, a infecção pode ser feita: y No início do arquivo. Ex.: Nimda y No fim do arquivo (mais utilizado). Ex.: Natas Alguns vírus podem se instalar nos primeiros setores lidos durante a inicialização de um S.O. (vírus de boot) Ex.: Michelangelo Vírus de macro são executados em softwares que têm a capacidade de interpretar código presente dentro dos arquivos de dados y Microsoft Word, ex.: Melissa 11 Códigos maliciosos - Vírus Vírus simples: não fazem nada muito significativo além de replicarse, podendo consumir toda memória. Ex.: Jerusalem. Vírus com auto-reconhecimento: detectam um sistema já infectado através de alguma assinatura, não gerando duplicidade de infecção. Ex.: Lehigh. Vírus invisíveis: interceptam chamadas de sistemas para tentar esconder a sua presença. Ex.: Tequila, Frodo. Vírus com arsenal: empregam técnicas para dificultar a análise de seu código e podem atacar antivírus presentes no sistema. Ex.: Whale, Samara.1536. Vírus polimórficos: infectam novos alvos com versões modificadas ou criptografadas de si mesmo. Ex.: V2P6, Nuah. 12 Códigos maliciosos - Backdoor “Software que permite uma entrada pela porta dos fundos” Habilita um atacante a furar os controles normais de segurança de um sistema, ganhando acesso ao mesmo através de um caminho alternativo Normalmente opera sobre Telnet, rlogin ou SSH Tipicamente fornece uma das seguintes funcionalidades ao atacante: y Aumento dos privilégios locais y Acesso remoto e execução de comandos y Controle remoto da interface gráfica 13 Códigos maliciosos - Backdoor Netcat (“canivete suiço”): pode ser utilizado como um backdoor y Pode executar praticamente qualquer comando em uma máquina e desvia a entrada/saída padrão para uma conexão de rede y Pode-se programar para escutar em uma porta UDP ou TCP (máquina alvo) y Exemplo: “-l” = listening, “-p” = porta, “-e” = comando, “-vv” = modo detalhado de visualização 14 Códigos maliciosos - Backdoor Virtual Network Computing (VNC): utilizado comumente para administração remota 15 Códigos maliciosos – Cavalo de Tróia Comumente chamado de trojan (trojan horse) É um programa que se mascara ou aparenta possuir um propósito benigno, mas que arbitrariamente realiza ações maliciosas Normalmente não é capaz de replicar-se automaticamente As ações de um cavalo de tróia podem variar, mas geralmente instalam backdoors Para não ser descoberto, é comum que cavalos de tróia tentem disfarçar-se de programas legítimos 16 Códigos maliciosos – Cavalo de Tróia 17 Códigos maliciosos – Cavalo de Tróia Outra prática comum é um programa cavalo de tróia ser combinado com um programa executável normal em um único executável Programas que juntam dois ou mais executáveis são chamados de wrappers, ex.: File Joiner 18 Códigos maliciosos – Spyware Software que auxilia a coleta de informações sobre uma pessoa ou organização sem o seu conhecimento y Pode enviar informações a alguém sem o consentimento do proprietário y Pode tomar o controle do computador sem que o usuário saiba Pesquisa conduzida pela Dell (set/2004) y Aproximadamente 90% dos PCs com Windows possuíam no mínimo um spyware Este tipo de software foi responsável por metade das falhas em ambientes Windows reportados por usuários da Microsoft 19 Códigos maliciosos – Spyware Advertising displays: códigos que mostram anúncios de vários tipos no PC do usuário; Automatic download software: instalam outros softwares sem o conhecimento e consentimento do usuário; Autonomous spyware: programas que são executados fora de um navegador Web, normalmente sendo executados na inicialização e permanecendo indetectáveis pelo usuário; Tracking software: programas que monitoram os hábitos de um usuário ou os dados fornecidos por ele em páginas web e enviam estas informações pela Internet para algum servidor remoto; 20 Códigos maliciosos – Spyware 21 Códigos maliciosos – Spyware Anti-spywares mais conhecidos: y y y y Spybot Search and Destroy Ad-Aware Pest Patrol Microsoft Windows Defender Recentemente os softwares de antivírus começaram também a detectar e remover este tipo de código malicioso 22 Códigos maliciosos – Worm “Caracterizados como programas que se auto-propagam por meio de uma rede de computadores explorando vulnerabilidades em serviços usados em larga escala” Não necessita de intervenção humana para se disseminar Considerados uma das maiores ameaças virtuais y No Brasil chega a atingir 65% dos incidentes de segurança (Centro de Estudos, Resposta e Tratamento de Incidentes de Segurança no Brasil (CERT.br) - período de Janeiro a Março de 2007) Um worm pode ter as mais diversas finalidades: y y y y y espalhar-se consumindo largura de banda causar ataques de negação de serviço apagar arquivos enviar arquivos por e-mail instalar outros malwares como keyloggers, rootkits e backdoors 23 Códigos maliciosos – Worm Exemplo: Code red 1. O worm tenta conectar-se na porta TCP 80 de máquinas selecionadas aleatoriamente. No caso de obter conexão, o atacante envia uma requisição “HTTP GET” para o alvo. A presença da seguinte string em um log de um servidor web pode indicar o comprometimento do servidor por parte do Code Red: /default.ida?NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN NNNNNNNNNNNNNNNN%u9090%u6858%ucbd3%u7801%u9090%u 6858%ucbd3%u7801%u9090%u6858%ucbd3%u7801%u9090%u9090 %u8190%u00c3%u0003%u8b00%u531b%u53ff%u0078%u0000%u00 =a 24 Códigos maliciosos – Worm 2. Uma vez executado, o worm faz uma busca pelo arquivo c:\notworm. Caso esse arquivo seja encontrado, a execução do Code Red é cancelada. Caso contrário, o worm gera 100 threads; 3. Se a data do sistema invadido for anterior ao dia 20 do mês, 99 threads são usadas para a tentativa de invadir mais sistemas; 4. A centésima thread é responsável por modificar a página principal do servidor Web (caso a linguagem padrão do sistema seja o inglês), a qual passará a exibir a mensagem: “HELLO! Welcome to http://www.worm.com! Hacked by Chinese!”. Essas alterações são realizadas sem modificar o arquivo da página no disco físico, mas sim, na memória; 5. Caso a data do sistema for entre os dias 20 e 28, o worm tenta então disparar um ataque de negação de serviço ao domínio www.whitehouse.com; 6. Caso a data seja superior ao dia 28, a execução do worm é cancelada. 25 Códigos maliciosos – Keyloggers Tipo de spyware cuja finalidade é capturar tudo o que for digitado em um determinado computador As intenções no uso de um keylogger podem ser as mais diversas: y monitorar as atividades dos funcionários de uma determinada empresa y capturar conversas em programas de mensagens instantâneas y capturar informações e senhas bancárias As informações obtidas podem então ser enviadas pela Internet para: y o gerente da empresa (com ou sem consentimento do funcionário) y um atacante (sem o consentimento do usuário) 26 Códigos maliciosos – Keyloggers Hardware keylogger: trata-se de um dispositivo físico posicionado entre o teclado e o computador da vítima 27 Códigos maliciosos – Keyloggers Sofware keylogger usando um mecanismo de hooking: um hook trata-se de uma rotina que tem como objetivo “ficar no meio do caminho” do tratamento normal da execução de informações do S.O. Kernel keylogger: trabalha no nível do kernel e usa suas próprias rotinas para receber os dados diretamente dos dispositivos de entrada (no caso, o teclado). y método mais difícil de ser desenvolvido, por exigir um elevado conhecimento de programação y Mais difícil de ser detectado (substitui as rotinas padrão do S.O. e é inicializado como parte do próprio sistema) y Não são capazes de capturar informações que são trocadas diretamente no nível de aplicações (ex: operações de copiar e colar e operações de autocompletar) y Exs.: THC vlogger, ttyrpld 28 Códigos maliciosos – Keyloggers Um dos mais conhecidos: BPK (Blazing Perfect Keylogger) y y y y y y Baseado em hooking Processo de instalação simples Interface amigável Preço acessível: U$ 34,95 Versão de avaliação disponível Pode ser executado em modo background e ficar invisível ao gerenciador de tarefas do Windows! Nos últimos anos foi desenvolvido também o conceito de screenlogger y Obtém uma cópia (screenshot) da tela do computador da vítima assim que um clicar do mouse for efetuado. y Alguns keyloggers possibilitam a captura de tela a cada período de tempo, formando um “filme” (videologger) 29 Códigos maliciosos – Keyloggers 30 Códigos maliciosos – Keyloggers 31 Códigos maliciosos – Rootkits “Conjunto de programas usado por um atacante para que o mesmo consiga ocultar sua presença em um determinado sistema e, ainda, para permitir acesso futuro a esse sistema” Rootkits tradicionais: caracterizados por versões modificadas de comandos do sistema, como ls, ps, ifconfig e netstat. y Esses comandos passaram a ser programados para ocultarem do administrador do sistema os processos, os arquivos e as conexões utilizadas pelo atacante. y Ex.: ifconfig substituído por uma versão maliciosa que oculta o fato de uma determinada interface de rede estar sendo executada em modo promíscuo 32 Códigos maliciosos – Rootkits Rootkits baseados em LKM (Loadable Kernel Modules): funcionam alterando as chamadas do sistema. y Normalmente altera as chamadas do sistema que permitem listar os módulos de kernel instalados. y O processo de detecção desses malwares é muito mais difícil, pois os comandos do sistema continuam inalterados e o próprio kernel responderá às requisições. 33 Códigos maliciosos – Bots Há três atributos que caracterizam um bot (nome derivado de Robot): y Existência de um controle remoto y Implementação de vários comando y Mecanismo de espalhamento, que permite ao bot espalhar-se ainda mais. Tipicamente um bot conecta-se a uma rede IRC (Internet Relay Chat) e fica esperando por comandos em um canal específico Ao identificar seu mestre, o bot irá realizar o que lhe for ordenado através de comandos. y Ataques de negação de serviço y Spam y ... 34 Forense Computacional - Introdução Objetivo: a partir de métodos científicos e sistemáticos, reconstruir as ações executadas nos diversos ativos de tecnologia utilizados em cyber crimes. A forense aplicada à tecnologia é muito recente, porém a ciência forense como um todo existe há muito tempo. y Historiador romano Virtrúvio relata que Arquimedes foi chamado pelo rei Hieron para atestar que a coroa encomendada junto a um artesão local não era composta pela quantidade de ouro combinada previamente entre as partes (teoria do peso específico dos corpos). y No século VII já eram utilizadas impressões digitais para determinar as identidades dos devedores. As impressões digitais dos cidadãos eram anexadas às contas que ficavam em poder dos credores. 35 Forense Computacional - Introdução Século XX: evolução da ciência forense y Pesquisas que conduziram à identificação do tipo sanguíneo e a análise e interpretação do DNA; y Publicação dos principais estudos referentes à aplicação de métodos e técnicas utilizadas na investigação de crimes; y Criado o “The Federal Bureau of Investigation (FBI)” – uma referência no que tange à investigação de crimes e a utilização de técnicas forenses em diversas áreas. 36 Forense Computacional - Introdução Atualmente, existem peritos especializados em diversas áreas: y y y y y y y Análise de documentos (documentoscopia); Balística; Criminalística; Genética; Odontologia; Química; Computação (Forense Computacional? Forense Digital?) 37 Forense Computacional – Processo de investigação Relembrando...a forense computacional é empregada: y para fins legais (ex.: investigar casos de espionagem industrial); y em ações disciplinares internas (ex.: uso indevido de recursos da instituição); O intuito é obter evidências relacionadas à realização dos eventos. Evidências: peças utilizadas por advogados nos tribunais e cortes do mundo inteiro. Para serem consideradas provas válidas, é muito importante que o perito realize o processo de investigação de maneira cuidadosa e sistemática. y Preservação das evidências y Documentação detalhada 38 Forense Computacional – Processo de investigação Fases de um processo de investigação: 39 Forense Computacional – Coleta dos dados Identificação de possíveis fontes de dados: y y y y y Computadores pessoais, laptops; Dispositivos de armazenamento em rede; CDs, DVDs; Portas de comunicação: USB, Firewire, Flash card e PCMCIA; Máquina fotográfica, relógio com comunicação via USB, etc. 40 Forense Computacional – Coleta dos dados Os dados também podem estar armazenados em locais fora de domínios físicos da cena investigada. y Provedores de Internet y Servidores FTP (File Transfer Protocol) y Servidores coorporativos Nesses casos, a coleta dos dados somente será possível mediante ordem judicial. 41 Forense Computacional – Coleta dos dados Após a identificação das possíveis origens dos dados, o perito necessita adquiri-los. Para a aquisição dos dados, é utilizado um processo composto por três etapas: y identificação de prioridade; y cópia dos dados; y garantia e preservação de integridade. 42 Forense Computacional – Coleta dos dados Identificar a prioridade da coleta: o perito deve estabelecer a ordem (prioridade) na qual os dados devem ser coletados y y y Volatilidade: dados voláteis devem ser imediatamente coletados pelo perito. Ex.: o estado das conexões de rede e o conteúdo da memória Esforço: envolve não somente o tempo gasto pelo perito, mas também o custo dos equipamentos e serviços de terceiros, caso sejam necessários. Ex.: dados de um roteador da rede local x dados de um provedor de Internet Valor estimado: o perito deve estimar um valor relativo para cada provável fonte de dados, para definir a seqüência na qual as fontes de dados serão investigadas 43 Forense Computacional – Coleta dos dados Exemplo: investigação de invasão de rede, ordem da coleta de dados: y dados voláteis: conexões da rede, estado das portas TCP e UDP e quais programas estão em execução; y dados não-voláteis: a principal fonte de dados não-voláteis é o sistema de arquivos que armazena arquivos: temporários; de configuração; de swap; de dados; de hibernação; de log. 44 Forense Computacional – Coleta dos dados Copiar dados: envolve a utilização de ferramentas adequadas para a duplicação dos dados y Garantir e preservar a integridade dos dados: após a coleta dos dados, o perito deve garantir e preservar a integridade dos mesmos y y Ex.: utilitário dd (Linux) - pode ser usado para coletar os dados voláteis como os contidos na memória e para realizar a duplicação das fontes de dados não-voláteis. Se não for garantida a integridade, as evidências poderão ser invalidadas como provas perante a justiça A garantia da integridade das evidências consiste na utilização de ferramentas que aplicam algum tipo de algoritmo hash Assim como os demais objetos apreendidos na cena do crime, os materiais de informática apreendidos deverão ser relacionados em um relatório (cadeia de custódia) 45 Forense Computacional – Coleta dos dados 46 Forense Computacional – Exame dos dados Finalidade: avaliar e extrair somente as informações relevantes à investigação Æ tarefa trabalhosa! y Capacidade de armazenamento dos dispositivos atuais y Quantidade de diferentes formatos de arquivos existentes (imagens, áudio, arquivos criptografados e compactados) Em meio aos dados recuperados podem estar informações irrelevantes e que devem ser filtradas y Ex.: o arquivo de log do sistema de um servidor pode conter milhares de entradas, sendo que somente algumas delas podem interessar à investigação y Muitos formatos de arquivos possibilitam o uso de esteganografia para ocultar dados, o que exige que o perito esteja atento e apto a identificar e recuperar esses dados 47 Forense Computacional – Exame dos dados A correta aplicação das diversas ferramentas e técnicas disponíveis pode reduzir muito a quantidade de dados que necessitam de um exame minucioso y Utilização de filtros de palavras-chave (com ou sem expressões regulares) y Utilização de filtros de arquivos, por: Tipo Extensão Nome Permissão de acesso Caminho Etc. 48 Forense Computacional – Exame dos dados 49 Forense Computacional – Exame dos dados 50 Forense Computacional – Exame dos dados 51 Forense Computacional – Exame dos dados Outra prática vantajosa é utilizar ferramentas e fontes de dados que possam determinar padrões para cada tipo de arquivo y Úteis para identificar e filtrar arquivos que tenham sido manipulados por ferramentas de esteganografia, arquivos de sistema, imagens de pedofilia, etc. y Projeto National Software Reference Library (NSRL): contêm uma coleção de assinaturas digitais referentes a milhares de arquivos 52 Forense Computacional – Análise das informações Após a extração dos dados considerados relevantes, o perito deve concentrar suas habilidades e conhecimentos na etapa de análise e interpretação das informações. Finalidade: identificar pessoas, locais e eventos; determinar como esses elementos estão inter-relacionados Normalmente é necessário correlacionar informações de várias fontes de dados y Ex. de correlação: um indivíduo tenta realizar um acesso não autorizado a um determinado servidor É possível identificar por meio da análise dos eventos registrados nos arquivos de log o endereço IP de onde foi originada a requisição de acesso Registros gerados por firewalls, sistemas de detecção de intrusão e demais mecanismos de proteção 53 Forense Computacional – Análise das informações Além de consumir muito tempo, a análise de informações está muito suscetível a equívocos, pois depende muito da experiência e do conhecimento dos peritos. Poucas ferramentas realizam análise de informações com precisão. 54 Forense Computacional – Resultados A interpretação dos resultados obtidos é a etapa conclusiva da investigação. O perito elabora um laudo pericial que deve ser escrito de forma clara e concisa, elencando todas as evidências localizadas e analisadas. O laudo pericial deve apresentar uma conclusão imparcial e final a respeito da investigação. 55 Forense Computacional – Resultados Para que o laudo pericial torne-se um documento de fácil interpretação é indicado que o mesmo seja organizado em seções: y y y y y y y Finalidade da investigação Autor do laudo Resumo do incidente Relação de evidências analisadas e seus detalhes Conclusão Anexos Glossário (ou rodapés) 56 Forense Computacional – Resultados Também devem constar no laudo pericial: y Metodologia y Técnicas y Softwares e equipamentos empregados Com um laudo bem escrito torna-se mais fácil a reprodução das fases da investigação, caso necessário. 57 Forense Computacional – Live forensics Qual o melhor procedimento, desligar os equipamentos ou mantêlos operando a fim de executar os procedimentos de uma investigação? y Ex.: IDS gera alerta que o servidor Web da empresa está sendo atacado, o que fazer no servidor? Desligá-lo (o que pode representar a perda de dinheiro para a instituição, mas garante o tempo e as condições necessárias para que os peritos realizem as suas atividades)? Mantê-lo ligado (coletar dados voláteis, correndo o risco de contaminação das evidências)? 58 Forense Computacional – Live forensics Pode ser considerada uma fotografia da cena do crime. Tem como objetivo obter o máximo de informações relacionadas ao contexto: y estado das conexões y conteúdo da memória y dados referentes aos processos em execução Quando realizada de forma correta, complementa e contribui para que o resultado da investigação seja conclusivo e preciso. 59 Forense Computacional – Live forensics Em cenários em que os dispositivos não foram desligados é importante que as ferramentas utilizadas para executar os procedimentos forenses não tenham sido comprometidas para evitar: y Geração de dados falsos: caso um rootkit esteja instalado; y Omissão de informações, ex.: ocultar processos em execução no sistema operacional ou não mostrar determinadas entradas do arquivo de log do servidor. Rootkits podem: y Modificar as ferramentas (comandos) do sistema operacional e assim permanecerem com acesso ao host e não serem identificados; y Inserir filtros em determinadas partes do S.O. que impedem a visualização de algumas informações; 60 Forense Computacional – Live forensics 61 Forense Computacional – Live forensics A fim de evitar os riscos mencionados, sugere-se que o perito utilize um live CD com um conjunto de ferramentas apropriadas e que sejam confiáveis, pois isso servirá como contramedida para rootkits que atuam no nível da aplicação e de bibliotecas Atualmente, existem algumas distribuições Linux voltadas a Forense Computacional y FDTK (Forense Digital ToolKit): baseado na análise de 10 distribuições voltadas a Forense Computacional, conta com quase 100 ferramentas, organizadas de acordo com as fases de um processo de investigação. http://fdtk-ubuntubr.110mb.com/ 62 Forense Computacional – Live forensics Contornar os problemas com rootkits que atuam no nível do kernel é mais complicado porque não há como acessar a memória ou o hardware sem passar pelo kernel y Principal recomendação é utilizar os detectores de rootkits, mas esse tipo de ferramenta pode interferir no sistema de alguma forma 63 Forense Computacional – Live forensics É importante relembrar que o perito deve: y manter uma lista contendo hash de todas as evidências coletadas, para garantir a integridade; y ter em mente que alguns dados são mais efêmeros do que outros e, portanto, a ordem de volatilidade deve ser considerada no momento da coleta dos dados. Em suma, além dos tipos de dados que podem ser coletados, a diferença mais significativa entre live e post-mortem analysis é o grau de confiança existente nos resultados obtidos. y Ferramentas e comandos instalados no sistema investigado podem ter sido modificados para produzir dados falsos e também porque qualquer erro do perito pode contaminar ou alterar os dados existentes. 64 Técnicas Forenses Relembrando...Boas práticas que antecedem a coleta dos dados: y Esterilizar todas as mídias que serão utilizadas ou usar mídias novas a cada investigação y Certificar-se de que todas as ferramentas (softwares) que serão utilizadas estão devidamente licenciadas e prontas para utilização y Verificar se todos os equipamentos e materiais necessários (por exemplo, a estação forense, as mídias para coleta dos dados, etc.) estão a disposição y Quando chegar ao local da investigação, o perito deve providenciar para que nada seja tocado sem o seu consentimento, com o objetivo de proteger e coletar todos os tipos de evidências y Os investigadores devem filmar ou fotografar o ambiente e registrar detalhes sobre os equipamentos como: marca, modelo, números de série, componentes internos, periféricos, etc. y Manter a cadeia de custódia. 65 Técnicas Forenses – Coleta de dados voláteis A primeira ação a ser tomada é manter o estado do equipamento (ligado – dados voláteis ou desligado – dados não-voláteis) Conexões de rede: os sistemas operacionais oferecem recursos que permitem visualizar informações sobre as conexões de rede atuais. (endereços IP de origem e destino, estado das conexões e o programa associado a cada uma das portas, etc.) 66 Técnicas Forenses – Coleta de dados voláteis Sessões de Login: dados como a lista dos usuários atualmente conectados, o horário em que a conexão foi realizada e o endereço de rede de onde partiu essas conexões podem ajudar na identificação: y dos usuários; y das ações realizadas; y do horário em que essas atividades foram executadas Æ auxiliam na correlação! Conteúdo da memória: o espaço de troca e a memória principal normalmente contêm os dados acessados recentemente: y senhas e os últimos comandos executados; y resíduos de dados nos espaços livres ou que não estão em utilização. 67 Técnicas Forenses – Coleta de dados voláteis Processos em execução: lista o estado de cada um dos processos do sistema. Arquivos abertos: comandos como o lsof (Linux) geram uma lista contendo o nome de todos os arquivos que estão abertos no momento. Configuração de rede: incluem informações como o nome da máquina, o endereço IP e o MAC Address de cada uma das interfaces de rede. Data e hora do sistema operacional: a data e hora atual do sistema e as configurações de fuso horário. 68 Técnicas Forenses – Coleta de dados não voláteis Cópia lógica (Backup): as cópias lógicas gravam o conteúdo dos diretórios e os arquivos de um volume lógico. Não capturam outros dados: y arquivos excluídos; y fragmentos de dados armazenados nos espaços não utilizados, mas alocados por arquivos. Imagem: imagem do disco ou imagem bit-a-bit inclui os espaços livres e os espaços não utilizados: y mais espaço de armazenamento, consomem muito mais tempo; y permitem a recuperação de arquivos excluídos e dados não alocados pelo sistema de arquivos. Exemplo: setor de 4KB, arquivo com 9KB (3 setores ocupados) Parte utilizada pelo arquivo Parte não utilizada pelo arquivo 69 Técnicas Forenses – Coleta de dados não voláteis 70 Técnicas Forenses – Coleta de dados não voláteis A principal fonte de dados não-voláteis é o sistema de arquivos que armazena diversos tipos de dados: y Arquivos temporários: durante a instalação e execução das aplicações são gerados arquivos temporários, que nem sempre são excluídos ao desligar os equipamentos y Arquivos de configuração: fornecem uma série de informações, como a lista dos serviços que devem ser ativados durante o processo de inicialização, a localização de arquivos de log, a relação de grupos e usuários do sistema, etc. y Arquivos de swap: fornecem dados sobre aplicações, nome e senha de usuários, entre outros tipos de dados 71 Técnicas Forenses – Coleta de dados não voláteis y Arquivos de Dados: são aqueles arquivos gerados por softwares como editores de texto, planilhas, agendas, etc. y Arquivos de Hibernação: arquivos de hibernação são criados para preservar o estado do sistema e contêm dados sobre a memória do dispositivo e os arquivos em uso. y Arquivos de Log: normalmente os sistemas operacionais registram diversos eventos relacionados ao sistema. 72 Técnicas Forenses – Coleta de dados não voláteis Durante a aquisição dos dados é muito importante manter a integridade dos atributos de tempo mtime (modification time), atime (access time) e ctime (creation time) – MAC Times. y Modificação: registro da data e hora em que ocorreu a última alteração no arquivo; y Acesso: registro da data e hora em que ocorreu o último acesso ao arquivo; y Criação: registro da data e hora em que o arquivo foi criado. 73 Técnicas Forenses – Coleta de dados não voláteis 74 Exame dos dados Após a restauração da cópia dos dados, o perito inicia o exame dos dados coletados e faz uma avaliação dos dados encontrados: y y y y arquivos que haviam sido removidos e foram recuperados; arquivos ocultos; fragmentos de arquivos encontrados nas áreas não alocadas; fragmentos de arquivos encontrados em setores alocados, porém não utilizados pelo arquivo. Finalidade: localizar, filtrar e extrair somente as informações que possam de alguma maneira contribuir para a reconstrução dos eventos que deram origem à investigação. 75 Exame dos dados – Extração dos dados A extração manual dos dados é um processo difícil e demorado: y exige do perito conhecimento aprofundado, principalmente, sobre o sistema de arquivos; y existem algumas ferramentas disponíveis que podem automatizar o processo de extração dos dados, bem como na recuperação dos arquivos excluídos. 76 Exame dos dados – Localização de arquivos O perito não deve se basear apenas na extensão de arquivos (Windows) y Arquivos podem armazenar outros dados (esteganografia em áudio, vídeo e imagem) y Usuários “espertos” podem modificar a extensão Æ utilizar ferramentas de análise de cabeçalhos (“assinatura de arquivo”), site: http://filext.com/ y Não funciona para Linux Æ comando file 77 Exame dos dados – Localização de arquivos 78 Exame dos dados – Localização de arquivos A criptografia está freqüentemente presente entre os desafios enfrentados pelos peritos y Criptografia de arquivos, pastas, volumes ou partições y Em alguns casos não é possível decriptografar esses arquivos, pois mesmo com a ajuda de ferramentas como John the Ripper, esta tarefa pode exigir um tempo excessivo para a descoberta da senha Para identificar o uso de esteganografia, normalmente se utiliza histogramas, mas a presença de programas de esteganografia é uma evidência de que arquivos podem ter sido esteganografados. y Uma vez determinada a presença de arquivos que tenham sido submetidos à esteganografia, é importante empregar técnicas de esteganoanálise. 79 Exame dos dados – Localização de arquivos Imagem original (1) Imagem a ser escondida (2) Imagem (1) + (2) Fonte: http://www.ene.unb.br/~juliana/cursos/pimagens/projetos/alunos/alaorandre 80 Exame dos dados – Análise dos dados A escolha das ferramentas a serem utilizadas nesta fase depende de cada caso, exemplo: ataque ou tentativa de invasão 1. Ferramentas que auxiliem na identificação da origem do ataque (endereço IP) 2. Identificação do responsável 3. No caso do responsável pelo endereço do atacante ser um ISP (Internet Service Provider), será necessária a solicitação de um mandado judicial, pedindo informações a respeito do seu cliente que utilizava o endereço IP identificado, na data/hora do incidente Todas as etapas e conclusões sobre as análises realizadas devem ser devidamente registradas e ao final anexadas ao laudo pericial. 81 Exame dos dados – Interpretação dos dados Alguns procedimentos que podem ser benéficos à organização da documentação necessária para a confecção do laudo pericial: y Reunir todas as documentações e anotações geradas nas etapas de coleta, exame e análise dos dados, incluindo as conclusões prévias já alcançadas; y Identificar os fatos que fornecerão suporte às conclusões descritas no laudo pericial; y Criar uma lista de todas as evidências analisadas, para que as mesmas sejam enumeradas no laudo pericial; y Listar as conclusões que devem ser relatadas no laudo pericial; y Organizar e classificar as informações recolhidas para garantir a redação de um laudo conciso. 82 Exame dos dados – Redação do laudo Algumas das seções e informações que podem auxiliar na redação do laudo pericial: y Finalidade do relatório: explicar claramente os objetivos do laudo; y Autor do relatório: listar todos os autores e co-autores do relatório, incluindo suas especialidades, responsabilidades e informações para contato; y Resumo do incidente: síntese do incidente investigado e suas conseqüências; y Evidências: descrição sobre o estado das evidências: como, quando e por quem elas foram adquiridas no decorrer das investigações (cadeia de custódia). 83 Exame dos dados – Redação do laudo y Detalhes: descrição detalhada de quais evidências foram analisadas, quais os métodos utilizados e quais as conclusões alcançadas y Conclusões: os resultados da investigação devem ser somente descritos, citando as evidências que comprovem as conclusões. A conclusão deve ser clara e não oferecer dupla interpretação y Anexos: documentação referente à investigação (diagramas da rede, formulários descritivos dos procedimentos utilizados, formulário de cadeia de custódia, informações gerais sobre as tecnologias envolvidas na investigação, conteúdo dos dados encontrados 84 Ferramentas Forenses Algumas ferramentas forenses serão mostradas nas etapas: y Coleta dos dados y Exame dos dados y Análise dos dados 85 Ferramentas Forenses – Coleta dos dados dd (Disk Definition) dcfldd (Department of Defense Computer Forensics Lab Disk Definition): versão aprimorada do dd, com mais funcionalidades: y geração do hash dos dados durante a cópia dos mesmos y visualização do processo de geração da imagem y divisão de uma imagem em partes Automated Image & Restore (AIR): interface gráfica para os comandos dd/dcfldd y gera e compara automaticamente hashes MD5 ou SHA y produz um relatório contendo todos os comandos utilizados durante a sua execução y elimina o risco da utilização de parâmetros errados por usuários menos capacitados 86 Ferramentas Forenses – Coleta dos dados 87 Ferramentas Forenses – Exame dos dados Utilizando assinaturas de arquivos (ex.: projeto National Software Reference Library (NSRL)), a quantidade de arquivos a ser analisada pode ser reduzida significativamente y http://www.nsrl.nist.gov/Downloads.htm#isos y Total de 43.103.492 arquivos, distribuídos em 4 “discos” 88 Ferramentas Forenses – Exame dos dados Diversas ferramentas já permitem a utilização dos bancos de dados citados, por exemplo: y Encase y Autopsy y pyFLAG 89 Ferramentas Forenses – Análise dos dados Utilitários para construção da linha de tempo dos eventos y Mactime: permite que a partir das informações contidas nos metadados dos arquivos e diretórios, uma visão cronológica dos acontecimentos seja mostrada Muitos arquivos importantes que fazem parte dos sistemas operacionais da família Windows não possuem uma clara explicação de suas estruturas y Pasco: analisa os índices dos arquivos do Internet Explorer (index.dat), exportando os resultados em um formato de texto padrão, inteligível por humanos e que utiliza como delimitador de campos o caractere “|” y Galleta: analisa os cookies existentes em uma máquina e separa as informações úteis em campos para que possam ser manipuladas por outros programas 90 Ferramentas Forenses – Anti-forense Objetivo: destruir, ocultar ou modificar as evidências existentes em um sistema a fim de dificultar o trabalho realizado pelos investigadores y Também podem ser utilizadas antes de venda ou doação de mídias a outras pessoas (evita recuperação de dados) Destruição dos Dados: para impedir ou pelo menos dificultar a recuperação dos dados, são utilizadas ferramentas conhecidas como wiping tools para a remoção dos dados y y y y Wipe secure-delete pgp wipe The Defiler's Toolkit. 91 Ferramentas Forenses – Anti-forense Ferramentas de destruição de dados empregam uma variedade de técnicas para sobrescrever o conteúdo dos arquivos y y y y Sobrescrita de bits “1” Sobrescrita de bits “0” Sobrescrita de bits aleatórios Combinação das anteriores n vezes Além da destruição lógica, o atacante pode danificar fisicamente as mídias utilizadas 92 Ferramentas Forenses – Anti-forense Ocultação dos Dados: os dados de um arquivo podem ser escondidos pelo menos de duas formas: y fragmentando um arquivo e armazenando esses fragmentos em espaços não alocados ou naqueles marcados como bad blocks y utilizando recursos como Alternate Data Stream (ADS), existente em sistemas de arquivos NTFS, que possibilitam esconder arquivos que não serão visualizados por comandos de listagem de conteúdo Criptografia e esteganografia podem ser aplicados em arquivos, tornando-se uma barreira difícil de ser superada y Utilizar ferramentas de esteganoanálise em uma mídia de 80GB requer muito tempo e na prática nem sempre é algo viável de se realizar y O mesmo ocorre quando se trata de arquivos criptografados 93 Ferramentas Forenses – Anti-forense Os rootkits (conforme mostrado anteriormente) implementam métodos eficientes para ocultar informações como arquivos e dados Modificação dos Dados: os métodos mais comuns para realizar a modificação dos dados são: y alterar a extensão dos arquivos y alterar o conteúdo do cabeçalho dos arquivos Outros métodos de modificação incluem a alteração dos atributos de tempo, através de ferramentas como touch e timestamp, e ataques de colisão em hash do tipo MD5 Algumas ferramentas: y Metasploit Anti-Forensic Investigation Arsenal (MAFIA) y Windows Memory Forensic Toolkit 94 Estudos de caso Com base em investigações reais, quatro estudos de caso serão apresentados Acesso remoto de uma empresa à outra, considerado pela denunciante como indevido (sem permissão) Investigação de um possível roubo de informações, mais especificamente, de dados bancários Investigações para a descoberta da origem de e-mails y Máquina suspeita (origem do e-mail) y Máquina da vítima 95 Estudo de caso 1 – Acesso indevido vítima invasora X Uma empresa “vítima” acusa uma outra empresa (“invasora”) de ter acessado um sistema “X” através da rede da vítima O sistema X possui informações fundamentais para determinado ramo empresarial y O acesso ao mesmo é controlado e existe a cobrança de uma mensalidade y Para evitar que mais de uma empresa utilize o sistema com o pagamento de apenas uma mensalidade, a autenticação é baseada no endereço IP 96 Estudo de caso 1 – Acesso indevido Os responsáveis pela auditoria do sistema X verificaram que havia mais de uma empresa acessando o sistema através da rede da vítima O acesso foi bloqueado, ocasionando grande prejuízo à empresa vítima, visto que ela possuía clientes que dependiam de informações acessadas no sistema X A empresa vítima verificou em seus logs o acesso remoto da empresa invasora, os imprimiu e levou às autoridades para investigação As autoridades decidiram apreender os computadores da empresa invasora, o que pode ser considerado por muitos uma decisão arriscada: y A empresa dependia do uso dos mesmos para trabalhar y Logs podem ser facilmente construídos ou manipulados (texto!) 97 Estudo de caso 1 – Acesso indevido Metodologia aplicada: post mortem forensic, visto que os computadores foram enviados aos peritos Todos computadores foram fotografados (internas e externas), identificados e seus componentes foram descritos Todas as mídias encontradas foram associadas ao computador em que se encontravam conectadas (“CPU01”, “HD01-CPU01”, “HD02CPU01”,...) Foi realizada a coleta do conteúdo de cada mídia. Para isto foi utilizado um disco de boot da ferramenta Encase (cópia bit-a-bit com geração de hash) 98 Estudo de caso 1 – Acesso indevido Exame dos dados: como o objetivo da perícia estava bem definido, identificar possíveis acessos conforme os logs impressos, a seqüência dos procedimentos foi definida: Procurar em diretórios onde geralmente existem logs (Linux). No entanto, a maioria dos computadores possuía sistema operacional Windows Os computadores com sistema Windows possuíam diversos e-mails comerciais, documentos, entre outros Durante a análise dos e-mails foi encontrado um contrato onde constava um acordo comercial de acesso ao sistema X pelas duas empresas, compartilhando o acesso Com a análise mais aprofundada dos e-mails e documentos encontrados foi possível elaborar uma lista de palavras-chave, contendo nomes de funcionários, endereços de e-mail, nomes de empresas, entre outros Estas chaves foram colocadas no Encase e uma busca foi realizada Foram encontrados arquivos excluídos, trechos de texto encontrados em parte do disco não alocada pelo sistema de arquivos e trechos de texto encontrados em setores alocados por outros arquivos 99 Estudo de caso 1 – Acesso indevido Além das constatações já relacionadas, ainda foi possível verificar em alguns casos evidências de formatação de discos e redimensionamento de algumas partições Quanto mais se encontrava evidências de comunicação entre as empresas, mais se encontrava palavras-chave. Assim, mais buscas eram realizadas Nenhum indício de acesso entre as empresas havia sido encontrado até então. Tudo indicava que as máquinas com sistema Windows eram apenas utilizadas por pessoas da área administrativa/comercial Porém, estas informações foram úteis para mostrar que se houve acesso entre elas, tudo indicava que era um acesso lícito, pois havia inclusive um contrato entre elas Continuando as buscas, acabou sendo encontrado um desentendimento (e-mails e documentos de texto) e a parceria teria sido rompida 100 Estudo de caso 1 – Acesso indevido Na perícia em máquinas com sistema Linux foi verificado que essas não possuíam e-mails ou dados comerciais, indicando que se tratavam de servidores (serviços típicos de um provedor de acesso Internet) Foram realizadas buscas por comandos e endereços IP que poderiam gerar os logs apresentados em formato impresso Finalmente foi encontrado um comando de acesso ao endereço IP da empresa vítima! No entanto, em nenhum momento foi encontrado algum indício de invasão propriamente dita, e sim, um acesso remoto com um usuário e senha legítimos 101 Estudo de caso 1 – Acesso indevido Após reunidas as informações e analisada a cronologia dos eventos, concluiu-se que: y havia um contrato de parceria entre as empresas envolvidas y foi constatado certo desentendimento entre as empresas e a parceria teria sido interrompida y foram verificadas seqüências de comandos compatíveis com a geração dos logs impressos pela empresa vítima, sendo as datas posteriores ao possível desentendimento relatado y não foi constatado nenhum tipo de ataque, foram constatados acessos legítimos utilizando credenciais autênticas e válidas 102 Estudo de caso 1 – Acesso indevido Elaboração do laudo pericial: Metodologia, como foi feita a coleta de dados Descrição do incidente, objetivo da perícia Peritos designados (relator e revisor) Descrição do que foi encontrado de relevante Todos os arquivos e dados considerados relevantes para a elaboração do laudo foram gravados em CD (anexo) y Garantia da integridade do CD: hash para cada arquivo, esses códigos foram gravados em um novo arquivo. Um novo hash foi gerado no arquivo de hashes. Este último foi adicionado ao laudo juntamente com a explicação de como comprovar a integridade dos arquivos. y No CD foi gravado um software livre que gera códigos hash utilizando o algoritmo MD5 e instruções de como utilizá-lo. y Conclusão do laudo (já descrita) y y y y y 103 Estudo de caso 1 – Acesso indevido Importante: Se tivesse sido solicitada a presença do perito no local da apreensão, o ambiente poderia ser fotografado e detalhado y Ajudaria na identificação dos computadores de acordo com a localização (recepção, contabilidade, servidor, etc.) 104 Estudo de caso 2 – Malware Um funcionário de confiança possuía os dados da conta bancária e senha da empresa onde trabalhava Após a conferência de um extrato bancário, foi constatada a transferência de uma grande quantia de dinheiro para outra conta Apenas este funcionário e o dono da empresa sabiam a senha da conta bancária e ambos garantiam que a transferência não tinha sido feita por eles Foi instaurado inquérito policial Investigações concluíram que dono da conta para a qual foi feita a transferência era uma pessoa com poucos recursos, semianalfabeto, e que a conta havia sido aberta há poucos dias Este foi interrogado e falou que um desconhecido lhe ofereceu uma pequena quantia em dinheiro para que ele abrisse uma conta bancária e que entregasse o cartão eletrônico ao tal desconhecido 105 Estudo de caso 2 – Malware Neste caso, a empresa vítima solicitou ao banco o ressarcimento do valor transferido, alegando que alguma fraude eletrônica deveria ter ocorrido O banco concordou, entretanto, a fraude deveria ser provada Por se tratar de suspeita de crime e não haver nenhum suspeito, a solução adotada foi apreender (ou neste caso, solicitar) o computador utilizado pela vítima na empresa Coleta dos dados (cópia bit-a-bit e garantia de integridade) Objetivo bem definido: procurar evidências de roubo de informações Começou-se a análise das caixas de e-mail (meio mais utilizado para contato com vítimas) Foi encontrada uma mensagem de phishing scam solicitando ao usuário para clicar em um determinado link 106 Estudo de caso 2 – Malware Para verificar se o link ainda estava ativo, foi clicado no mesmo. O link já não estava mais ativo No entanto, era possível verificar o nome do arquivo que seria baixado (exemplo: fotos.exe). Procurou-se então pelo arquivo fotos.exe na imagem e o mesmo foi encontrado Alguns softwares antivírus foram executados e constatou-se que o arquivo continha o keylogger o BPK Uma pesquisa foi realizada e foi constatado que o BPK foi desenvolvido para monitorar, entre outros, filhos e esposo(a), segundo o site do fabricante 107 Estudo de caso 2 – Malware O keylogger este foi extraído da imagem para análise. Nas configurações foram encontrados: y armazenamento de logs (teclas digitadas) e telas (arquivos .gif com “pedaços” de tela capturada) a partir do acesso a seis sites de bancos pré-definidos y envio dos arquivos gerados para um servidor FTP, com usuário e senha pré-definidos Partiu-se para uma nova busca: evidências de que os dados bancários teriam sido enviados para o servidor FTP mencionado Foi realizada então uma busca por palavras-chave sem a utilização de expressões regulares, pois se procuravam palavras específicas, incluindo usuário e endereço IP do servidor 108 Estudo de caso 2 – Malware Foram encontrados indícios na memória virtual com conexões realizadas ao servidor FTP mencionado e com o usuário configurado Por se tratar de memória virtual, não foi possível extrair grande quantidade de informação útil, sem haver “sujeira” entre um comando e outro Contudo, os fragmentos encontrados puderam indicar a conexão com o servidor e algumas datas e horários puderam ser coletadas em texto claro O servidor FTP encontrava-se em outro país e possuía a modalidade de contas gratuitas y Um teste foi realizado no site da empresa provedora do serviço e uma conta foi criada sem informação de dados pessoais validados 109 Estudo de caso 2 – Malware Todas as informações mostradas foram relatadas no laudo pericial, incluindo o endereço IP do servidor FTP, caso a investigação tivesse algum acesso a logs do servidor Não foi possível concluir que os dados da conta foram enviados a algum destinatário, porque os arquivos de log gerados pelo BPK eram excluídos de tempos em tempos Mesmo com uma busca por arquivos excluídos, não foram encontrados dados relativos à conta. Mas foi possível relatar que: y que o computador estava infectado y foi infectado logo após o recebimento da mensagem com phishing scam y Há indícios de conexões com um servidor FTP previamente configurado no keylogger 110 Estudo de caso 3 – Ameaça por e-mail (sem cabeçalho) Um diretor de uma empresa recebeu uma ameaça por e-mail, com cópia a diversos membros da diretoria O diretor imprimiu o e-mail e o entregou à polícia O cabeçalho do e-mail não foi impresso e o computador contendo o e-mail recebido não foi entregue para a perícia O conteúdo do e-mail mencionava fatos ocorridos na empresa y y y y y Foi utilizado um Webmail Suspeitou-se que seria um dos funcionários Os funcionários tinham acesso a uma máquina com Internet no serviço Cada funcionário entrava com seu usuário no sistema Esta máquina foi apreendida e enviada à perícia 111 Estudo de caso 3 – Ameaça por e-mail (sem cabeçalho) Objetivo da perícia: verificar se aquele e-mail impresso foi originado na máquina enviada para perícia Coleta dos dados: cópia bit-a-bit do disco rígido questionado No exame dos dados foram realizadas duas atividades em paralelo: y Seleção de palavras-chave com erros de grafia ou palavras muito específicas encontradas no e-mail y Verificação de arquivos encontrados na pasta de arquivos temporários da Internet Diversos acessos a sites de Webmail foram encontrados, com um total de seis usuários diferentes Na pasta de arquivos temporários não foi encontrado o e-mail com as ameaças nem mesmo os dados da conta de e-mail que foi utilizada 112 Estudo de caso 3 – Ameaça por e-mail (sem cabeçalho) Antes de continuar a análise “manual”, o processamento da busca foi concluído, mostrando algumas ocorrências para as palavras-chave selecionadas Analisando as ocorrências, foi encontrado a maior parte do e-mail dentro do arquivo de memória virtual (Windows) Antes do início da mensagem havia o seguinte metadado: <?xml:namespace prefix = o ns = "urn:schemas-microsoftcom:office:office" Este metadado indica a utilização de um dos aplicativos do Microsoft Office Não houve uma conclusão de que a mensagem foi originada na máquina analisada. Porém indícios foram encontrados, podendo ajudar na investigação 113 Estudo de caso 4 – Injúria por e-mail (com cabeçalho) Uma mensagem de e-mail contendo injúria (racismo) foi enviado para a amiga da vítima A amiga mostrou para a vítima e esta decidiu registrar ocorrência, levando consigo o e-mail impresso O delegado decidiu então solicitar o computador da amiga para enviar à perícia Neste caso, foi possível analisar o cabeçalho do e-mail 114 Estudo de caso 4 – Injúria por e-mail (com cabeçalho) 115 Estudo de caso 4 – Injúria por e-mail (com cabeçalho) Foi possível consultar na base de dados de domínios brasileiros e os dados da empresa, como endereço, telefone do responsável, entre outros, puderam ser coletados Estes dados foram colocados no laudo, indicando a origem do e-mail sendo a empresa descrita como detentora do domínio “empresa.com.br” y A empresa estava localizada na mesma cidade onde morava a vítima e o acusado y Segundo informações que a investigação passou para os peritos posteriormente, esta seria a empresa onde o acusado trabalhava 116 Desafios atuais em forense computacional Coleta dos dados Para facilitar e agilizar a aquisição das evidências em hosts que estejam conectados a rede, foram desenvolvidas ferramentas remotas que a partir de uma console central coletam simultaneamente dados de diversos hosts ÆEntretanto, este tipo de aplicação não é capaz de realizar a cópia completa da memória ou inspecionar as áreas de memória alocadas por um determinado processo ÆCom este tipo de ferramenta não é possível adquirir evidências localizadas em arquivos abertos ou referentes a processos em execução 117 Desafios atuais em forense computacional Coleta dos dados O desenvolvimento de padrões abertos bem documentados, que contemplem acesso aos metadados, que garantam a integridade dos dados e cujas evidências possam ser examinadas e analisadas por múltiplas ferramentas é um desafio em aberto. Outras características desejáveis são: y a definição da estrutura e implementação de trilhas de auditoria que gerem a cadeia de custódia y a implementação das seguintes características de segurança: mecanismos de autenticação verificação de integridade controle de acesso as evidências não-repúdio 118 Desafios atuais em forense computacional Exame dos dados Atualmente não existem ferramentas para inspecionar e interpretar de maneira ágil as estruturas de dados da memória virtual Desenvolvimento de métodos que possibilitem identificar a presença de arquivos, cujos fragmentados foram gravados em espaços não alocados do disco – técnica utilizada por algumas ferramentas antiforense 119 Desafios atuais em forense computacional Análise dos dados Sistemas especialistas que possuam em suas bases de dados informações sobre como agregar as diversas entradas dos arquivos de log distribuídos pelos ativos da organização em um único evento e correlacionar eventos de forma automatizada, ex.: ferramenta proprietária Analysts Notebook 120 Desafios atuais em forense computacional Análise dos dados 121 Considerações finais Forense computacional é um tema bastante atual e que tem recebido significativa atenção tanto da comunidade científica quanto da indústria. Muitas fraudes eletrônicas se baseiam na ingenuidade de usuários e conseqüentemente na execução de malwares. Muitas vezes a investigação não pode prosseguir sem a verificação de computadores de suspeitos Æ necessidade de pessoal qualificado! Sobre a análise post mortem existe mais material disponível para pesquisa, porém a demanda pela análise live deve aumentar (casos de flagrante). É extremamente importante seguir as boas práticas de forense para evitar o descarte de um laudo em um processo judicial. 122 Considerações finais Há ainda muito a ser pesquisado, como mostrado em “desafios atuais”, muitas tarefas ainda dependem exclusivamente do perito. Novas ferramentas/bases de “assinaturas de arquivos” ajudariam os peritos no exame dos dados, especialmente na análise live. O surgimento de legislação e padrões a serem aplicados (Brasil) referentes à forense computacional tornariam menor a chance de laudos serem inutilizados por falta de experiência dos peritos. 123 Dúvidas? Muito obrigado! 124