FATEC – FACULDADE DE TECNOLOGIA DE SÃO JOSE DOS CAMPOS JULIANO DIAS MANCILHA ANÁLISE FORENSE EM AMBIENTE LINUX E WINDOWS: UMA ATUALIZAÇÃO TEÓRICA SÃO JOSÉ DOS CAMPOS 2011 I JULIANO DIAS MANCILHA ANÁLISE FORENSE EM AMBIENTE LINUX E WINDOWS: UMA ATUALIZAÇÃO TEÓRICA Trabalho de graduação apresentado à FATECFaculdade de Tecnologia de São José dos Campos, como parte dos requisitos necessários para a obtenção do título de Tecnólogo em Informática com Ênfase em Redes. Orientador: Me Murilo Dantas SÃO JOSÉ DOS CAMPOS 2011 II JULIANO DIAS MANCILHA ANÁLISE FORENSE EM AMBIENTES LINUX E WINDOWS: UMA ATUALIZAÇÃO TEÓRICA Trabalho de graduação apresentado à FATECFaculdade de Tecnologia de São José dos Campos, como parte dos requisitos necessários para a obtenção do título de Tecnólogo em Informática com Ênfase em Redes. Orientador: Me Murilo Dantas ________________________________ José Carlos Lombardi ________________________________ Antônio Egydio São Thiago Graça ________________________________ Murilo Dantas ____/____/____ Data de Aprovação III AGRADESCIMENTOS Agradeço a todos que ajudaram no desenvolvimento do trabalho, aos professores que dedicaram seu tempo precioso a desenvolver o conhecimento. À minha mãe Angelica ao meu pai João Bosco, por sempre acreditarem em mim, aos meus irmãos Thiago e Luciano que estiveram comigo no desenvolvimento desse trabalho, as minhas avós Helena e Nadir. À minha família, meu maior suporte, que me apoiou nas horas difíceis à minha companheira de todas as horas Ana Helena. Aos colegas que me acompanharam por todo o curso, principalmente Giovana, Charles, Leonardo, Luiz. Também não poderia esquecer do professor Sakaue e da Leia que me ajudaram com referências. Ao meu orientador Murilo Dantas e os professores José Carlos Lombardi, Antônio Egydio Graça que sempre estiveram comigo nas horas mais difíceis. Ao professor Massanori pelo tempo que me dedicou. As professoras Amita, Tatiana e Eliane sempre tão solicitas e finalmente a Elisângela que sempre ajudou com os problemas administrativos. Aos meus amigos que souberam me escutar nos momentos de dificuldades. IV RESUMO Devido ao grande número de pessoas que acessam à internet e, ao crescimento desta área da Tecnologia da Informação nos últimos anos, a preocupação com a segurança da informação deve seguir na mesma proporção. Desenvolver técnicas de segurança é fundamental para manter a privacidade das pessoas e seus dados. No entanto, nem sempre isso é suficiente, pois usuários mal intencionados, sempre buscam novas formas de obter vantagens de sistemas mal configurados ou usuários imprudentes. Quando à segurança não é suficiente para proteger usuários, é necessário fazer uso de outra área da computação. A área a qual se faz referência é a computação forense, que tem a finalidade de solucionar problemas de invasão e destruição de sistemas. A Computação Forense possui relação tanto com a Tecnologia da Informação quanto com o direito. O Brasil não possui legislação específica que qualifique especificamente essa área. Por fim, tanto a análise de informações, que não possui um padrão, quanto uma legislação específica são estritamente necessárias para que a intimidade das pessoas seja preservada. V ABSTRACT Due to the large number of people accessing the internet and the growth of this area in recent years, concern over information security should follow in proportion. Develop technical security is critical to maintaining the privacy of individuals and their data. However, this is not always enough because malicious users are always looking for ways to take advantage of misconfigured systems or reckless users. When security is not sufficient to protect the user, it is necessary to use another area of computing. The area to which it refers is the computer forensics, which aims to solve problems of invasion and destruction of systems. The computer forensics is related to both information technology and with the law, even so, Brazil still has no specific legislation that specifically qualify this area. Finally, standardization of patterns, such as specific legislation is strictly necessary for people’s privacy is preserved. VI LISTA DE FIGURAS Figura 1 - Percentual de computadores nos lares brasileiros fonte IBGE (2004) ...................... 1 Figura 2 - Estatísticas dos Incidentes Reportados ao CERT.br. Fonte: CERT, 2010................. 2 Figura 3 – Pente de Memória RAM ........................................................................................... 4 Figura 4 - Rede de Computadores sevidor/cliente(TANENBAUM, 2004) ............................... 7 Figura 5 - Redes peer to peer(TANEMBAUM, 2004) ............................................................... 8 Figura 6 - Anatomia de um ataque SCAMBRAY et. al. (2001)................................................. 9 Figura 7 - Forma como os dados são vistos pelo usuário ......................................................... 15 Figura 8 - Forma como os dados são vistos pelo Sistema operacional .................................... 15 Figura 9 - Forma como os dados são vistos pelo hardware ...................................................... 15 Figura 10 - Etapas do Processo de investigação(FARMER, 2009 ) ......................................... 16 Figura 11 – Transmissão de dados (Morimoto, 2008).............................................................. 16 Figura 12 - Criptografia de chave única(Cert.br,2006) ............................................................ 17 Figura 13 - Tela do Fdisk(Microsoft, 2007) ............................................................................. 24 Figura 14 - Gerenciador de processos do Windows(Microsoft, 2007)..................................... 25 Figura 15 - Dispositivos de disco(Microsoft, 2007) ................................................................. 26 Figura 16 - Propriedades de arquivos(Microsoft, 2007)........................................................... 27 Figura 17 - Permissões de documentos(Microsoft, 2007) ........................................................ 28 Figura 18 - Sistema de arquivos e pastas(Microsoft, 2007) ..................................................... 29 Figura 19 - Tela do comando df Linux(Ubuntu, 2010) ........................................................... 32 Figura 20 - Tipos de particionamento do sistema Linux(Ubuntu, 2010) ................................. 33 Figura 21 - permissões de arquivos e pastas(Ubuntu, 2010) .................................................... 38 Figura 22 - logs do Firewall do Windows(Microsoft, 2007) .................................................... 53 Figura 23 - Log de Sistema(Microsoft, 2007) .......................................................................... 54 Figura 24 - FTK toolkit(AccessData, 2010) ............................................................................. 56 VII Figura 25 - Execução do comando tune2fs.(FDTK, 2007) ...................................................... 57 Figura 26 -Histórico de comandos do usuário Chuck(FDTK, 2007) ....................................... 60 Figura 27 - Histórico de comandos Administrador do sistema(FDTK, 2007) ......................... 60 Figura 28 - Pastas com arquivos recuperados pelo foremost.(FDTK, 2007 ) .......................... 61 Figura 29 - Análise dos arquivos de log(Ubuntu, 2010) .......................................................... 63 Figura 30 - Inserção de novo usuário ao sistema(Ubuntu, 2010) ............................................. 64 Figura 31 - Arquivo bash_history contendo informações da invasão(Ubuntu, 2010).............. 64 VIII LISTA DE TABELAS Tabela 1 - Principais parâmetros utilizados pelo nmap ............................................................ 10 Tabela 2 - Tabela de Ferramentas Windows ............................................................................ 31 Tabela 3 - Descrição de Diretórios Linux................................................................................. 35 Tabela 4 - Permissões de usuário.............................................................................................. 36 Tabela 5 - Permissões de arquivos e pastas .............................................................................. 37 Tabela 6 - Sistema de Partições Linux ..................................................................................... 38 Tabela 7 - Tabela de ferramentas Linux ................................................................................... 40 Tabela 8 - Descrição e conceitos de equipamentos e serviços (Projeto de lei 89, 2003). ........ 48 Tabela 9 - Avaliação Boot MSDos ........................................................................................... 54 Tabela 10 - Avaliação ForensicToolkit20 ................................................................................ 56 Tabela 11 - Avaliação FDTK ................................................................................................... 61 Tabela 12 Avaliação com Distribuição Linux .......................................................................... 65 IX LISTA DE ABREVIATURAS E SIGLAS Art. – Artigo X SUMÁRIO 1 INTRODUÇÃO ................................................................................................................... 1 1.1 Motivação..................................................................................................................... 1 1.2 Objetivo Geral.............................................................................................................. 5 1.2.1 2 1.3 Metodologia ................................................................................................................. 6 1.4 Organização do Trabalho ............................................................................................. 6 FORENSE COMPUTACIONAL........................................................................................ 7 2.1 Conceitos de Intrusão................................................................................................... 7 2.2 Introdução à Ciência Forense..................................................................................... 12 2.3 Metodologia ............................................................................................................... 13 2.4 Aquisição e Manipulação de Evidências ................................................................... 20 2.5 Ferramentas Livres..................................................................................................... 22 2.6 Forense em Sistemas Windows ................................................................................. 23 2.6.1 Princípios ............................................................................................................ 25 2.6.2 Técnicas e Ferramentas....................................................................................... 29 2.7 3 Objetivos Específicos ........................................................................................... 5 Forense em Sistemas Linux ....................................................................................... 31 2.7.1 Princípios ............................................................................................................ 34 2.7.2 Técnicas e Ferramentas....................................................................................... 39 FUNDAMENTOS JURÍDICOS PARA ANALISE FORENSE ....................................... 41 3.1 Introdução .................................................................................................................. 41 3.2 Dos Crimes contra a pessoa ....................................................................................... 42 3.3 Dos crimes contra o patrimônio ................................................................................. 43 3.4 Dos Crimes contra a fé pública .................................................................................. 43 3.5 Dos Crimes contra a incolumidade pública ............................................................... 44 XI 3.6 4 3.6.1 Dos Crimes cometidos na área de informática ................................................... 45 3.6.2 Ausência de Dispositivos.................................................................................... 49 ANÁLISE DE FERRAMENTAS ..................................................................................... 51 4.1 6 Procedimento em Ambiente Windows ...................................................................... 51 4.1.1 Estudo de caso com disco Boot Windows 98 ..................................................... 51 4.1.2 Estudo de caso com ForensicToolkit1.8 ............................................................. 55 4.2 5 Projeto de lei 89/03 .................................................................................................... 45 Procedimento em Ambiente Linux ............................................................................ 56 4.2.1 Estudo de caso com FDTK-V2.01 ...................................................................... 58 4.2.2 Estudo de caso com Distribuição Linux ............................................................. 61 CONSIDERAÇÕES FINAIS ............................................................................................ 66 5.1 Contribuições ............................................................................................................. 66 5.2 Trabalhos Futuros ...................................................................................................... 66 REFERÊNCIAS BIBLIOGRÁFICAS .............................................................................. 68 1 1 INTRODUÇÃO 1.1 Motivação Devido à ampliação no poder aquisitivo dos brasileiros, o número de computadores presentes nos lares aumentou significativamente na última década e, com isso, a possibilidade de invasão de sistemas torna-se um problema crescente. Conforme pesquisa realizada pelo IBGE (Instituto Brasileiro de Geografia e Estatística), cujo resultado é mostrado na figura 1, no que diz respeito à propriedade de microcomputadores, ―o percentual do total de famílias que possuíam este bem subiu de 6,9%, em 1995-1996, para 21,9% em 2002-2003, um crescimento de quinze pontos percentuais.‖ (IBGE, 2004). Figura 1 - Percentual de computadores nos lares brasileiros fonte IBGE (2004) No mesmo sentido, o jornal O Globo, em sua versão digital, publicou pesquisa realizada pelo Instituto Ipsos, a qual faz parte do estudo "Nation Wide Study 2010" e referente à quantidade de lares brasileiros que possuem computadores: ―O índice de lares brasileiros equipados com pelo menos um computador atingiu 58% até outubro deste ano.‖(OGloboonline, 2010). Da mesma forma, a pesquisa TIC Domicílios 2007, feita pelo Cetic.br a pedido do Comitê Gestor da Internet no Brasil, mostra que, ―apenas 24% dos domicílios brasileiros 2 possuem computadores e só 17% dos habitantes têm acesso à internet em suas casas.‖(TIC, 2007). Os números apresentados só reforçam na assertiva, de que a segurança das redes é tema de extrema importância. O aumento no acesso será maior com o desenvolvimento das diversas tecnologias em redes de computadores ligadas à internet. Nem só os computadores estão ligados à internet. Já é possível comprar geladeiras, fornos micro-ondas, telefones celulares, relógios e outros equipamentos em constante acesso à internet. A possibilidade de obter imagens de câmeras ligadas à rede já é uma realidade presente no dia a dia das pessoas. Também é possível observar creches que possuem câmeras para que pais possam acompanhar os filhos e fazer um monitoramento domiciliar. Assim, é possível perceber que as redes de comunicação crescem a cada dia, e todos os serviços necessitam de segurança, porque, se alguém acessa um sistema de câmeras de segurança de seu prédio, ou o equipamento de rede da geladeira, pode obter informações sobre o perfil de qualquer pessoa. Figura 2 - Estatísticas dos Incidentes Reportados ao CERT.br. Fonte: CERT, 2010. De acordo com pesquisa apresentada pela CERT.br em 2010, mostrada na figura 2, não é necessário apenas ter os equipamentos, mas também os cuidados que eles necessitam, a segurança de qualquer rede é fundamental para que equipamentos não sejam usados de forma errônea. Cuidados necessários não apenas pós-incidente, mas previamente 3 como forma de preservar a segurança tanto do ambiente de trabalho, como do ambiente em que se vive. As redes de computadores são uma realidade. Essas são forma de acesso à informação, tanto em computadores pessoais como máquinas remotas. Na definição de TANENBAUM (2004), uma rede de computadores é: ―um conjunto de computadores autônomos interconectados por uma única tecnologia‖. Facilidades são introduzidas no contexto das pessoas dia a dia. No setor bancário, por exemplo, para efetuar um pagamento era necessário deslocar-se até uma agência bancária, com a informatização tudo pode ser feito pela internet ou caixas eletrônicos. Benefícios são inegociáveis devido à facilidade que geram. Setores da economia foram e são muito beneficiados com a informatização dos sistemas. Hoje é possível fazer compras, pagar contas, estudar e tudo sem sair de casa. Entretanto isto gera inconvenientes, pois os sistemas possuem falhas, e nem sempre é possível prever quais falhas poderão ocorrer em sistemas bancários ou sites de compras online. Desta forma, para que o acesso a qualquer sistema online não gere problemas, máquinas devem estar bem configuradas para não permitir invasões e apropriação indesejada dos dados de computadores. Uma máquina bem configurada deve ter um sistema seguro. Um sistema é considerado seguro quando, possui instalado um antivírus, um firewall e todas as atualizações disponibilizadas pelo desenvolvedor, pré-instaladas. Cuidados adicionais com usuários, portas de redes, senhas também são de extrema importância. Preocupações são extremamente necessárias para todo e qualquer tipo de entrada de dados pessoais, como: inserção de cartão de crédito em compras online, digitação do número de CPF em sites, envio de dados para empresas e vários outros. A criptografia nos sistemas de compras online, bancários e outros, é ferramenta essencial. Uma conexão criptografada torna qualquer operação mais segura e evita acessos à informação entre os meios de transmissão. Mesmo com todos esses cuidados, acidentes acontecem. A captura de dados por programas maliciosos é uma vertente dos sistemas operacionais. Softwares são desenvolvidos para capturar dados pela rede, nas telas de computadores e até dados digitados pelo teclado. Invasões ocorrem de diversas formas, falhas nos Sistemas Operacionais, em programas como: e-mail, software de mensagens instantâneas, de navegação na internet ou 4 qualquer tipo de software que requisite acesso à rede. Nas empresas, funcionários descontentes podem abrir brechas para invasões. A engenharia social também é utilizada para persuadir funcionários ou pessoas a passar informações, as quais serão cumuladas com informações obtidas sobre a empresa objetivando o acesso a computadores. Outras formas de obter informações são utilizando sniffer, malware1 , spam e atualmente o phishing, que também não pode ser esquecido. Finalmente, se todos os pré e pós-incidentes falharem, a alternativa para descobrir o que aconteceu no sistema é a Análise Forense, cuja finalidade é pesquisar todos os dados do sistema invadido procurando rastros que possam ligar a invasão aos invasores. Analisar dados não é uma tarefa fácil, visto que, podem se apresentar de diversas formas e em períodos de acessos distintos. Importante lembrar que dados podem ser apagados ou alterados pelo invasor. Fontes de informação podem ser encontradas em diversos locais, os principais por ordem de volatilidade são: a memória RAM (do inglês, Random Acess Memory), mostrada na figura 3, a memória Swap (memória de troca de dados entre memoria RAM e disco rígido) e o disco rígido ou HD2 . Figura 3 – Pente de Memória RAM A garimpagem das informações não acontece de forma simplificada, porque, um sistema operacional pode apresentar vários locais para encontrar provas. O mais importante na busca não é como a invasão aconteceu, mas quando aconteceu. Os dados 1 Worms (Malicious Software)- é um termo genérico que abrange todos os tipos genérico de programa especificamente desenvolvido para executar ações maliciosas em um computador. (CERT.br, parte 1, p.9) 2 HD – quer dizer Hard Disk, que é a mídia de armazenamento de um sistema. 5 podem apresentar informações de tempo, propriedade e permissões de acesso, que são condições para demonstrar como tudo aconteceu, como a montagem de um quebra-cabeças. O modo de manipular os dados é um fato de igual importância para preservar o ―modus operandi”3 , com base nas informações coletadas, demostrar como tudo aconteceu. Caso haja alteração nos dados, eles podem não convencer os órgão envolvidos no processo, tornando inaceitáveis as provas obtidas. Por fim, as consequências jurídicas envolvidas em processos, que contenham crimes realizados pela internet, necessitam de lei para fundamentá-lo, no entanto, projetos de lei já tramitam no Congresso Nacional desde 1998, só que até o termino deste estudo não obtiveram aprovação nas casas legislativas. 1.2 Objetivo Geral Apresentar um estudo atualizado da Análise Forense em ambientes Windows e Linux, levando em consideração ferramentas de análise e especificações metodológicas e jurídicas. 1.2.1 Objetivos Específicos Os objetivos específicos são: Detectar vulnerabilidades e analisar as deficiências dos sistemas operacionais Linux e Windows; Demonstrar como invasores obtêm acesso a sistemas e quais males podem causar; Perceber volatilidade de dados, apagados ou alterados e seu comportamento em sistemas Linux e Windows; Recuperar e identificar dados e, quais os passos de um invasor ao tomar posse do sistema; 3 Modus operandi – modo de fazer, maneira típica como um delinquente atua. 6 Pesquisa de ferramentas utilizadas na perícia forense. 1.3 Metodologia Foi utilizado conceitos de hardware, gerenciamento e controle de dados em computadores. Também foram pesquisados locais de informações em sistemas de computadores como alternativa para a busca de informações. 1.4 Organização do Trabalho Este trabalho possui a seguinte organização: o capítulo 2 apresenta o referencial teórico como fundamento para entender a estudo; o capítulo 3 descreve os fundamentos jurídicos em questão nas invasões de computadores, enquanto que, o capítulo 4 refere-se à análise de ferramentas e métodos utilizados para testar os sistemas e, no capítulo 5 as conclusões do trabalho, os resultados obtidos e as sugestões para trabalhos futuros são apresentados. Finalmente o capítulo 6 apresenta o referencial teórico, bem como, as referências utilizadas. 7 2 FORENSE COMPUTACIONAL 2.1 Conceitos de Intrusão Uma rede possui diversas finalidades entre as quais: compartilhamento de recursos, transferência de dados, controle e consulta de informações, conexão entre pessoas entre outras. Dois modelos se destacam entre as principais redes de computadores: um hierárquico chamado de cliente/servidor e outro não hierárquico chamado de peer-to-peer. O modelo cliente/servidor, ilustrado na figura 4, é definido por TANENBAUM (2004) da seguinte forma: “Nesse modelo os dados são armazenados em poderosos computadores chamados servidores. Com frequência, essas máquinas são instaladas e mantidas em um local central por um administrador de sistemas. Em contraste, os funcionários tem em suas escrivaninhas máquinas mais simples, chamadas de clientes, com as quais eles acessam dados remotos(...)” Figura 4 - Rede de Computadores sevidor/cliente(TANENBAUM, 2004) Enquanto que, o modelo peer-to-peer, mostrado na figura 5, é definido como: “Nessa forma de comunicação, indivíduos que constituem um grupo livre podem se comunicar com outros participantes do grupo(...). Em princípio, toda pessoa pode se comunicar com uma ou mais pessoas; não existe nenhuma divisão fixa entre clientes e servidores.”(Tanenbaum, 2004) 8 Figura 5 - Redes peer to peer(TANEMBAUM, 2004) No entendimento de TANENBAUM (2004) a internet ―não é apenas uma única rede, mas uma rede de redes‖. A rede mundial de computadores é um dos principais meios de comunicação entre computadores, em vista disso, a segurança é fundamental para a proteção de informações que circulam nas redes. De acordo com MORIMOTO (2008) a segurança ―tem se tornado cada vez mais importante à medida que a Internet torna-se um ambiente cada vez mais hostil (...)‖. Em relação a isso, um computador pode ser considerado seguro se, ―um computador é dito seguro se este atende a três requisitos básicos relacionados aos recursos que o compõem: confidencialidade, integridade e disponibilidade‖. (CERT,2006) A confidencialidade ―refere-se ao acesso não autorizado ao computador e consequentemente a leitura as informações‖, a integridade ―também faz referência ao acesso e leitura não autorizados, contudo as informações são alteradas‖, finalmente a disponibilidade ocorre quanto ―o provedor sofre uma grande sobrecarga de dados e fica indisponível.‖ (CERT,2006). Ataque no conceito de SCAMBRAY et. al. (2001) possui a seguinte descrição, ―um ataque dirigido por dados (data driven attack) é executado enviando a um serviço ativo, dados que causam resultados diferentes dos pretendidos ou indesejáveis‖. Para SCAMBRAY et. al. (2001) a anatomia de um ataque possui a seguintes passos: Footprint, Varredura, Enumeração, Ganho do acesso, Escalação de privilégios, Varreduras furtivas, Encobrimento de rastros, Criação de portas do fundos, Recusa de serviço, conforme mostrado na figura 6 9 Figura 6 - Anatomia de um ataque SCAMBRAY et. al. (2001) Footprint (SCAMBRAY et. al., 2001), ―permite que invasores criem um perfil completo da postura de segurança dessa organização.‖, a técnica utiliza ―uma combinação de ferramentas e técnicas, (...), e convertê-lo em um conjunto específico de nomes de domínio, blocos de rede e endereços IP individuais de sistemas conectados diretamente à internet‖. Ferramentas de varredura são utilizadas para o bem quando tem a finalidade de avaliar o sistema operacional do usuário e, utilizadas para o mal quando varrem sistemas de outros usuários para descobrir vulnerabilidades, cujo fim será a invasão do sistema. O nmap, juntamente com o zenmap (nmap com interface gráfica) são softwares utilizados para varredura de portas, e possuem vários parâmetros de verificação, alguns destes 10 são apresentados na tabela 1. Tabela 1 - Principais parâmetros utilizados pelo nmap nmap ip escaneia diretamente uma máquina da rede. nmap ip-faixa(254) escaneia uma faixa determinadas de ip da rede. nmap -O ip a opção -O tem a finalidade de mostrar qual o sistema operacional determinada máquina na rede esta usando. nmap -sU ip – escaneia escaneia as portas UDP do ip ou faixa de ips determinadas. nmap -T4 ip T4 refere-se ao tempo utilizado na busca, a sequência é de 1 a 5, quanto menor o número maior o tempo de espera. nmap -F ip escaneia menos portas do que o scan padrão nmap 192.168.2.2/24 escaneia portas com mascara 255.255.255.0 nmap 192.168.2.2/16 escaneia portas com mascara 255.255.0.0 nmap 192.168.2.2/8 escaneia portas com mascara 255.0.0.0 nmap 192.168.2.2/0 escaneia portas com mascara 0.0.0.0 nmap -p 1-11 este teste vai varrer apenas as portas de 1 a 11. nmap -p 1-65535 -T4 escaneando todas as portas de forma rápida. 192.168.2.103 Enumeração SCAMBRAY et. al. (2001) ―são as várias maneiras de extrair dos Sistemas Operacionais contas válidas ou nomes de recursos que são exportados de sistemas.‖ Essa técnica utiliza os dados obtidos na varredura. Ao obter acesso à outra máquina o atacante possui uma escala de privilégios. O ato pode ocorrer como um usuário comum ou como um administrador de sistema. Como forma de encobrir os rastros o atacante deve apagar todas as pistas deixadas na máquina invadida. Informações como logs, arquivos alterados, contas criadas, implantação de serviços, instalações, devem ser excluídas do sistema. Finalizado o ataque, o invasor deve deixar um caminho de forma a ter acesso ao sistema sem a necessidade de invadi- lo novamente. Os ataques podem ocorrer de várias formas, os métodos mais utilizados são: a engenharia social, invasão por força bruta, por vírus, malware, sniffer, phishing, DoS (Denial of Service), ataque no qual vários computadores acessam uma máquina tirando-a do ar. A engenharia social, no qual o invasor obtém dados da empresa através de qualquer pessoa que trabalhe no local, ou através de usuários do sistema que trabalhem ou 11 tem acesso aos dados do local. Um sniffer é ―um dispositivo ou programa de computador utilizado para capturar e armazenar dados trafegados em uma rede de computadores‖. (CERT,2006). Tão importante quanto são os malwares (Malicious software) ―é um termo genérico que abrange todos os tipos de programas especificamente desenvolvidos para executar ações maliciosas em um computador‖. (CERT,2006) Atualmente, os ataques de phishing são descritos por MORIMOTO (2008) da seguinte forma ―ataque phishing utilizam engenharia social para tentar levar o usuário a revelar informações confidenciais, tais como senhas de banco, números de cartão de crédito, ou mesmo transferir fundos diretamente‖. Vírus ―é um programa de computador, normalmente malicioso, que se propaga infectando, isto é, inserindo cópias de si mesmo e se tornando parte de outros programas e arquivos de um computador.‖ (CERT, 2006). Ataques de força bruta ocorrem quando ―não se tem alternativa senão tentar uma por uma todas as combinações de login e senha.‖ (ULBRICH, 2004) Um spam é ―termo usado para se referir aos e-mails não solicitados, que geralmente são enviados para um grande número de pessoas‖ (CERT, 2006). Em vários casos as mensagens spam possuem conteúdo comercial. E-mails também podem conter arquivos maliciosos anexados a imagens, vídeos e etc., a abertura desses arquivos infecta o computador da vítima para obter vulnerabilidades e senhas. Para que invasões não sejam repetidas, invasores mantêm uma porta aberta para que possa voltar ao local e obter mais informações, ao qual é dado o nome de backdoor. Outras formas de facilitação em invasão são: deixar portas abertas não utilizadas, permitir que o sistema permaneça com as configurações padrão quando instalados e, não permitir as atualizações recomendadas pelo desenvolvedor. Quando se faz menção a empresas o usuário ainda é o elo mais fraco da corrente, enquanto que, um administrador de redes deve ter uma função bem definida. Conforme cartilha de segurança CERT(2006) os principais pontos em práticas de segurança em administração de redes são, Políticas, Instalação e Configuração segura de sistemas, Administração e Operação segura de Redes e Sistemas Uma política ―é um instrumento importante para proteger a organização contra ameaças à segurança da informação que a ela pertence ou que está sob sua responsabilidade‖. As políticas podem ser de segurança e de uso aceitável, enquanto as políticas de segurança 12 definem responsabilidades, a de uso aceitável determina os recursos que podem ser utilizados. A instalação e configuração é a escolha do sistema, a definição da estratégia de senhas utilizadas, o serviços de rede do sistema, a atualização do software, quais os serviços poderão ser utilizados pelos usuários e o controle de atividades irregulares na rede. Por fim, a administração tem a função de definir os usuários que vão administrar o sistema, com funções bem definidas como a configuração de serviços, definição de senhas, os protocolos de rede, preservação de dados, preocupações com invasões, monitoramento de logs e a segurança da rede. Um incidente de segurança pode ser definido como ―qualquer evento adverso, confirmado ou sob suspeita, relacionados à segurança de sistemas de computação ou de redes de computadores‖. (CERT, 2006). As principais formas de detecção de intrusão são informações sobre: arquivos de logs, tamanho que arquivos em disco e processos em execução no sistema. Os logs do sistema guardam todos os acessos indevidos à rede, instalação de programas, arquivos que executam ações não permitidas, enquanto que, processos em execução no sistema acumulam informações tornando-se cada vez maiores. Por fim, é necessário entender que, o elo mais fraco da corrente é o usuário, o qual nem sempre possui informações necessárias para manter um sistema bem configurado e seguro de invasões. Um computador mal configurado pode ser facilmente invadido. Após uma invasão, o modo de entendê-la é utilizar a Ciência Forense. 2.2 Introdução à Ciência Forense A ciência forense pode ser comparada com a arqueologia e com a geologia. A arqueologia tem a finalidade de buscar resto de fósseis, os restos têm de ser manuseados com extrema cautela para que os fósseis não sejam destruídos, preservando o que foi conservado através dos anos. A ciência forense ―é aplicação da ciência do Direito definida pela utilização nos tribunais‖ (CASEY, 2004). A forense possui técnicas e métodos utilizados para realizar uma pesquisa em busca de provas que comprova a culpabilidade de um crime. 13 Várias são as áreas em que se divide a forense, entre elas estão: I. Medicina – estudada nas faculdades de Direito com o nome de medicina legal, a qual se divide: a. Antropologia – Estudo da identificação sob o ponto de vista médico-legal (SOIBELMAN, 1998). b. Traumatologia – Estudo das lesões corporais no seu aspecto jurídico (SOIBELMAN, 1998). c. Sexologia – Estudo dos problemas médico-legais relacionados com o sexo (SOIBELMAN, 1998). d. Toxicologia – Parte da medicina legal que estuda os casos de morte por envenenamento (SOIBELMAN, 1998). II. III. Química - estudo de substâncias químicas. Computação – estudo de dados de computadores Na arqueologia digital, todos os dados devem ser vasculhados com o maior cuidado para que nada seja perdido, preservando todas as informações que são de extrema importância para o desfecho de uma pesquisa. A geologia forense tem a finalidade de buscar todos os dados necessários para resolver determinado caso, assim, vários ramos da ciência forense buscam com seu trabalho desvendar casos. 2.3 Metodologia A análise forense possui a seguinte definição, ―A análise forense de um sistema envolve um ciclo de coleta de dados e processamento das informações coletadas‖ (FARMER, 2009). A coleta de informações em computadores depende da forma com que são obtidas. Se, após uma intrusão os dados forem coletados de qualquer forma, as informações poderão ser alteradas ou até mesmo perdidas. Para que os dados colhidos no inquérito judicial se tornem um processo é necessário que a colheita de provas seja consistente para convencer o juiz a instaurar o processo. Os dados de um computador podem permanecer armazenados por muito 14 tempo. A volatilidade dos dados é diferente nos diversos tipos de mídias, os principais tipos são: a memória principal, a memória swap, a memória flash e o disco rígido. Os dados utilizados pela memória principal de um computador são perdidos assim que o computador é desligado, exceção feita à memória ROM (Read-Only Memory – acesso feito apenas para leitura), memória não volátil, que guarda as informações de inicialização. ―A memória consiste em uma grande sequência de word ou bytes, cada uma com seu próprio endereço‖. (SILBERSCHATZ, 2004). A finalidade da memória é armazenar fluxos de endereços e instruções ou dados de programas mantidos no disco como um programa executável. Para que qualquer programa seja executado é necessário que esteja na memória principal ou RAM (Random Acess Memory) que significa memória de acesso aleatório. Contudo, a memória swap é utilizada quando ―um processo precisa ser trocado temporariamente entre a memoria principal e um armazenamento de apoio, para depois ser trazido de volta para a memória, continuando assim a execução‖. (SILBERSCHATZ, 2004) Exemplificando a situação acima, ―um programa de 16M pode executar em uma máquina de 4M, escolhendo cuidadosamente quais 4M manter na memoria a cada instante, com pedaços do programa sendo trocados entre o disco e a memoria principal, conforme necessário‖. (TANENBAUM, 2000) Com relação à memória swap, os dados são perdidos assim que forem utilizados pelo sistema operacional, ou subscrito por outro processo. Com o fim do processo os dados deixam de existir na memoria swap. Os dados no disco rígido podem durar por muito tempo, no entanto os sistemas operacionais se comportam de maneira diferente ao sistema de armazenamento dos dados. O sistema operacional Windows possui quatro tipos de sistema de arquivos, o primeiro deles é o Fat12, o segundo o Fat16, foi utilizado nos sistemas Windows 95 e não possui sistema de segurança, o mesmo acontece com o Fat32. O sistema de arquivo utilizado neste estudo será o NTFS que tem a finalidade de gravar logs do sistema operacional. Também possui segurança na utilização de arquivos e pastas. Com relação ao sistema de arquivo Linux, os mais utilizados são o ext2 que é nativo do Linux, mas também não apresenta a possibilidade de gerar uma restauração dos dados do sistema e o sistema ext3 que apresenta esta possibilidade desde que a partição seja criada com o sistema de arquivos jornaling. 15 Figura 7 - Forma como os dados são vistos pelo usuário O usuário enxerga os dados que são inseridos no sistema da mesma forma como são digitados, conforme mostra a figura 7. Enquanto que, o Sistema Operacional recebe os dados na forma de tabelas de dados chamada de inode, mostrada na figura 8. Figura 8 - Forma como os dados são vistos pelo Sistema operacional E finalmente, depois de inseridos pelos usuários e recebidos pelo sistema operacional, os dados são recebidos pelo hardware do computados como 1 (um) ou 0 (zero), conforme a figura 9. Figura 9 - Forma como os dados são vistos pelo hardware Agora que os sistemas de armazenamento foram explicados, é necessário entender sua finalidade. Os sistemas de dados citados são importantes, pois são onde a perícia buscará provas. 16 Figura 10 - Etapas do Processo de investigação(FARMER, 2009 ) Na figura 10, a análise forense é um ciclo de pesquisa de informações deixadas em um computador invadido. Tudo se inicia com a invasão de uma máquina conectada a rede de computadores. A coleta de informações refere-se à captura de informações em computadores invadidos, o exame do que foi coletado é a busca de locais onde possam existir provas, enquanto que a análise é a reconstrução da linha do tempo dos fatos, por fim, o resultado é o laudo do perito com todas as provas e exames do que foi encontrado. Estação: SYN (solicita a abertura da conexão) Servidor: SYN (confirma o recebimento e avisa que a porta está disponível) Servidor: ACK (inicia a conexão) Estação: ACK (confirma) Estação: DATA (é enviado o pacote com a mensagem de texto) Servidor: OK (a confirmação, depois de verificar a integridade do pacote) Estação: FYN (solicita o fechamento da conexão) Servidor: FYNFigura (confirma) 11 – Transmissão de dados (Morimoto, 2008) Estação: FYN (confirma que recebeu a confirmação) Estabelecida a conexão, computadores podem trocar mensagens, dados e comunicar-se diretamente através da rede, conforme ilustrado na figura 11. Assim, 17 mecanismos de proteção são utilizados para manter a integridade dos dados. O principal mecanismo de proteção à comunicação entre computadores é a criptografia. Criptografia – ―é a ciência e arte de descrever mensagens em forma cifrada ou em código‖. (CERT, 2006) A criptografia pode ser: de chave única e de chave pública e privada – a primeira utiliza a mesma chave tanto para codificar quanto para decodificar mensagens, conforme ilustrado na figura 12 (CERT, 2006), enquanto que, a segunda utiliza duas chaves distintas, uma para codificar e outra para decodificar mensagens (criar uma figura para ilustrar a criptografia de chave publica e privada). (CERT, 2006) Figura 12 - Criptografia de chave única(Cert.br,2006) Para exemplificar o método de chave pública e privada, um exemplo pode ser apresentado a seguir. a. A pessoa X codifica a mensagem utilizando a chave pública de Y. b. Após criptografada X envia a mensagem para Y. c. Y recebe a mensagem e a decodifica utilizando a chave privada que é de seu conhecimento. Outras duas formas de segurança são a assinatura digital e o certificado digital, entendimento destes dois processos é de fundamental importância, visto que determinadas 18 atividades bancárias utilizam estes padrões de proteção de dados. A primeira consiste na criação de um código, através da utilização de chave privada, de modo que a pessoa ou entidade que receber a mensagem contendo este código possa verificar se o remetente é mesmo quem diz ser e identificar qualquer mensagem que possa ter sido modificada. (CERT, 2006) A segunda ―é um arquivo eletrônico que contém dados de uma pessoa ou instituição, utilizados para comprovar sua identidade, o arquivo pode ser armazenado em um computador ou mídia como um token ou smart card.‖ (CERT, 2006). Mencionadas as formas de comunicação e segurança na comunicação dos dados é necessário saber como as comunicações e os dados podem ser capturados e como as invasões podem acontecer. As invasões podem acontecer de diversas formas, entre as quais a invasão de sistemas que apresentam vulnerabilidades, a captura de dados através da rede, o acesso através de malware, e finalmente, diretamente, quando o invasor consegue acesso direto ao computador da vítima. Uma porta dos fundos ou backdoor é um mecanismo que funcionam da seguinte forma ―uma vez que um intruso tenha estabelecido residência, pode ser difícil livrar um sistema de sua presença. Mesmo que a brecha original possa ser identificada e sanada, um atacante esperto consegue criar mecanismos para recuperar acesso ao sistema quando quiser.‖ (SCAMBRAY et. al., 2001). Backdoor conhecidos como netbus ou BackOrifice, tem a finalidade de permitir o acesso remoto à máquinas em que foram instalados. O acesso remoto permite que invasores tenham controle dos serviços presentes nas máquinas à distância. Uma das formas de acesso a computadores através de informações obtidas por engenharia social, a qual obtém informações de funcionários através de ligações telefônicas, ou por meio do lixo da empresa ou pessoa a ser invadida. Finalmente, o ponto mais importante que é a analise forense. Após obter controle da máquina o invasor ao entrar no sistema pode deixar várias pistas. Quando se apaga um arquivo, este só deixa de existir quando sobrescrito por outro arquivo. Invasores com mais experiência e conhecimento, procuram apagar os rastros deixados por seus passos. Ao invadir um sistema, arquivos de log do sistema gravam a entrada ou acesso ao sistema. Arquivos de log têm a finalidade de apresentar erros do sistema, informações 19 errôneas de senhas, tentativas de instalações falhas, acesso ao sistema, como senhas não permitidas, tentativas de tomar controle da máquina e qualquer tipo de erro que seja importante ao sistema. A memória também pode carregar dados de programas instalados ou acessados pelo invasor, comprometendo tanto a memoria principal quando a memória de troca de informação, a qual é chamada de swap. No caso de informações serem deixadas em computadores invadidos, a função do perito é descobrir em primeiro lugar, quando estes fatos ocorreram, após o entendimento do quando, a forma como, o local em que dados foram alterados e finalmente o porquê da invasão. No entanto, como mencionado anteriormente arquivos podem ser alterados ou apagados em um sistema, principalmente se este estiver em execução. É de suma importância que dados não sejam alterados para que a avaliação do sistema seja consistente e não gere nenhuma dúvida. Assim, uma máquina invadida, deve ser tão logo se descubra a invasão, desconectada da rede e mantida fora de uso, para que as provas sejam preservadas. O mesmo ocorre com qualquer crime. Exemplificando a citação, quando um crime ocorre, toda a área é isolada e nada pode ser tocado ou alterado até a chegada dos peritos, isto ocorre, porque, todo o trabalho pericial será utilizado na investigação e consequentemente em um processo judicial. Para que as informações sejam capturadas com extrema competência, analisadas e preservadas sem nenhuma alteração, é necessário que a captura seja feita em modo somente leitura, para que não comprometa a alteração de outros dados contidos no disco. Outro fato de extrema importância, que seria uma política de segurança para os sistemas invadidos é a de isolar a máquina ao primeiro sinal de invasão do sistema, para que com isto as informações não sejam alteradas até que a pericia possa fazer a cópia dos dados. O programa mais utilizado para a captura dos dados é o dd do Linux, este cria uma imagem de todos os arquivos e pastas do sistema operacional invadido. A captura ocorrerá, ou através da rede usando o comando nc 4 ou a através de um disco externo. Alguns aparelhos foram desenvolvidos para que a cópia dos dados ocorra em modo somente leitura 4 Nc ou netcat “é o utilitário de rede que lê e escreve dados através de uma conexão de r ede.”( GIACOBBI, 2006). 20 como forma de preservar a integridade dos dados contidos nos discos da máquina invadida. Com a captura a analise dos dados tem a finalidade de saber primeiramente quando a invasão ocorreu e consequentemente quando e como os dados se sucederam e qual a finalidade do invasor do sistema. Após a análise dos dados e o relatório final da perícia que no caso da legislação brasileira é fundamentada pelos arts. 170 e 171 do Código de Processo Penal Decreto-Lei 3689, os dados são investigados e enviados para o ministério público para oferecer a denúncia ou retorna a autoridade policial para complementação de provas, investigações, ou outros dados requisitados pelo ministério público. Na análise dos dados, como forma de ampliar a segurança tanto na captura quanto na analise dos dados, que outro perito ou outros peritos acompanhem o andamento da analise, bem como a colheita de provas. Completadas todas as requisições, o Ministério Público oferecerá a denuncia ou arquivamento do processo. Com o oferecimento da denuncia o juiz poder poderá aceitar a denuncia ou solicitar o arquivamento do processo. No caso do Ministério Público não oferecer a denúncia, poderá o juiz requerer ao procurador geral que a promova. Se o procurador geral entender necessário o oferecimento da denuncia, nomeará outro promotor que promoverá a denuncia. Em contrassenso, requisitará o arquivamento do processo. Finalmente, acatando o juiz o pedido do Ministério Público, o processo será julgado e chegado ao final do processo, o juiz prolatará a sentença, pronunciando a culpabilidade ou não dos envolvidos e consequentemente a pena a eles imposta. 2.4 Aquisição e Manipulação de Evidências Destruir informações pode ser surpreendentemente difícil (GUTMANN, 1996, 2001), no entanto, ―até chips de memória RAM, que perdem as informações quando o computador é desligado podem ser lidos após uma queda de energia ou o computador ser desligado.‖ (FARMER, 2009). Não obstante, mesmo dados subscritos em sistemas de arquivos podem ser recuperados, até mesmo quando reescritos várias vezes. Singularmente, o mesmo ocorre com a memoria swap. Nas invasões, nem sempre arquivos são apagados, pode ocorrer apenas a 21 exclusão de determinada parte de um arquivo que possuí a informação de uma invasão específica, isso acontece quando o sistema é invadido por pessoas mais experientes. Com relação à volatilidade de arquivos excluídos Dan Farmer (2009) faz referência a ela da seguinte forma, ―Uma vez excluído, o conteúdo de um arquivo geralmente não muda até ser sobescrito por outro arquivo. Em sistemas de arquivos com boas propriedades de aglomeração de dados, arquivos excluídos podem permanecer intactos durante anos‖. Ainda com relação à exclusão de arquivos outra referencia é necessária. ―(...) Excluir um arquivo do sistema de arquivos é relativamente fácil, mas não é suficiente para destruir seu conteúdo ou atributos‖. (FARMER, 2009) A captura de informações depende muito da máquina a ser analisada. Exemplo desta assertiva pode ser notado no seguinte fato – ―se o kernel5 for corrompido, então as informações sobre processos, redes ou arquivos podem estar incompletas ou mesmo corrompidas‖. (FARMER, 2009) O procedimento de aquisição de evidências deve ocorrer de forma que outras informações não sejam alteradas, para que isso aconteça, a coleta dos dados é feita em modo somente leitura, para não alterar os arquivos capturados. A captura de informações acontece com a cópia de arquivos individuais, um disco inteiro, ou partes do disco. A captação pode ser feita para dispositivos de armazenamento ou para determinados locais de rede. A forma mais segura de fazer o envio dos dados é utilizando ssh6 que envia os dados de forma criptografada e a alternativa é usar o netcat 7 . Importante mencionar que, a montagem dos dados deve ocorrer como somente leitura para que não haja alteração nos dados. Ampliando a confiabilidade das informações é conveniente gerar um hash8 da imagem. Precaução no ato da cópia e verificação é estar acompanhado outro perito garantidor do ato. A análise forense não possui uma convenção pré-determinada. Não existe 5 “É a peça central de um sistema operacional, é ele quem controla os dispositivos e demais periféricos do sistema.” (MAZIOLI, 2007). 6 Serviço de rede para acesso a dados remotos de forma criptografada. 7 Serviço de rede para acesso remoto e verificação de redes. 8 Sequência de bits gerado por algoritmos de criptografia. 22 padronização à captura, nem a manipulação dos dados em computadores analisados. No entanto, ferramentas são utilizadas com predileção por peritos forenses, devido à qualidade no desenvolvimento da computação forense. Para que um inquérito policial se torne um processo judicial é preciso que o juiz aceite o pedido de denúncia ou queixa crime. Farmer (2009) utiliza a seguinte assertiva, ―A recomendação de um melhor entendimento em vez de níveis mais altos de certeza, o que potencialmente tornaria esta metodologia mais suspeita em um tribunal‖. A manipulação das evidências segue o rito do Código de Processo Penal. Os aspectos legais são definidos pelo art. 170 e 171. O art. 170 versa sobre as perícias em laboratório, enquanto que o art. 171 fala dos crimes, a descrição dos arquivos é a seguinte: “Art. 170. Nas perícias de laboratório, os peritos guardarão material suficiente para a eventualidade de nova perícia. Sempre que conveniente, os laudos serão ilustrados com provas fotográficas, ou microfotográficas, desenhos ou esquemas.” (DECRETO-LEI 3.689, 1941). ―Art. 171.- Nos crimes cometidos com destruição ou rompimento de obstáculo a subtração da coisa, ou por meio de escalada, os peritos, além de descrever os vestígios, indicarão com que instrumentos, por que meios e em que época presumem ter sido o fato praticado.‖(DECRETO-LEI 3.689, 1941) A aquisição e a manipulação de evidencias dependem de ferramentas para o desenvolvimento da perícia. Em decorrência disso as ferramentas livres serão alvo do próximo tópico. 2.5 Ferramentas Livres Quando um software é criado nem sempre atende completamente às necessidades dos usuários, com isto programadores procuram desenvolver soluções para resolver estes problemas, no entanto, quando o software é proprietário, modificações só podem ser feitas pelo proprietário ou com sua permissão. Iniciativas de desenvolvimento de código aberto surgiram através do tempo, alternativas como o projeto GNU e o movimento Open Source, incentivaram o crescimento do compartilhamento de códigos. 23 Richard Stalmman fundou o projeto GNU (GNU’s Not Unix) em 1984, como forma de criar um sistema operacional gratuito. Com o tempo o projeto foi se tornando cada vez mais popular com o desenvolvimento de bons programas. No desenvolvimento de um software GNU os usuário e programadores tem a liberdade de fazer o que quiserem desde que as alterações feitas no código possam ser utilizadas por qualquer outra pessoa. De acordo com a licença GNU, um software tem as seguintes liberdades: Ser executado – o usuário pode utilizá- lo para qualquer propósito; Ser adaptado – é a liberdade que se tem de estudar o programa e adaptá-lo aos seus interesses; Ser redistribuído – o desenvolvedor pode distribuir cópias do programa e deixar que outras pessoas a utilizem. Ser melhorado – o programador que alterou o programa original tem a liberdade de disponibilizar sua versão para que outros se aproveitem dela. Utilizando ferramentas livres é necessário observar qual o Sistema em que serão utilizadas. As ferramentas usadas no Windows são diferentes daquelas empregadas nos sistemas Operacionais livres, entre os quais esta o Linux. Todas as características serão mencionadas a seguir. 2.6 Forense em Sistemas Windows Para realizar uma perícia é necessário entender a estrutura do sistema operacional envolvido. Nos sistemas desenvolvidos pela Microsoft entender a estrutura é tão importante quanto saber como está disposto o sistema de arquivos, e consequentemente a forma de alocação da memória, do sistema de troca de arquivos e todos os dispositivos envolvidos na perícia. Entender o sistema de arquivos ajuda a perceber a forma como os arquivos estão distribuídos no disco. Desta forma, as etapas do processo de investigação tornam-se mais qualificadas. Os sistemas operacionais da Microsoft apresentam várias versões, contudo, uma diferença entre as distribuições os torna complemente diferentes, enquanto uma delas é 24 desenvolvida para servidores e a outra desenvolvida para sistemas desktop. Os sistemas de arquivos utilizados pelos sistemas Windows são o Fat, o HPFS e o NTFS, enquanto o sistema de arquivo HPFS é utilizado para as versões 3(três) do Windows NT, o sistema Fat é suportado apenas pelas versões desktop como o Windows 98, o ME e o Windows XP e o NTFS é usado pela versões Servidoras. O leitor de discos nesse sistema é o fdisk, mostrado na figura 13. Contudo, o programa é utilizado em modo MSDos e, no Windows XP, só pode ser utilizado com o disco de boot. Para que o leitor funcione, ―modificações nos arquivos command.com e IO.sys são necessárias para evitar acesso a componentes da unidade.‖(CASEY, 2004). Figura 13 - Tela do Fdisk(MICROSOFT, 2007) O acesso à memória, tanto à memória swap quanto à memória principal, são áreas acessadas pelo processador para executar os programas em disco. Fonte de informação imprescindível para pesquisa de informações são os arquivos de log que gravam todas as informações de problemas contidos ou ocorridos nos Sistemas Microsoft. Os desempenhos de processamento, rede e memória podem ser consultados clicando conjuntamente nas teclas ctrl+Alt+Del, também serão apresentados os processos ativos no sistema, bem como os usuários utilizando o sistema, os aplicativos em uso e outras informações adicionais do Windows. Um exemplo de tela do gerenciador de processos do Windows é mostrado na figura 14. 25 Figura 14 - Gerenciador de processos do Windows(MICROSOFT, 2007) Todas as informações mencionadas acima serão relacionadas detalhadamente nos próximos itens. 2.6.1 Princípios Nos sistemas Windows, ―Uma partição, por vezes também chamada volume, é uma área do disco rígido que pode ser formatada com um sistema de ficheiros e identificada com uma letra do alfabeto.‖ (MICROSOFT, 2010). As partições nos volumes básicos podem ser: primárias, expandidas e unidades lógicas, conforme mostrado na figura 15. Um disco básico pode ter no máximo quatro partições, com no máximo três partições primárias. ―Com relação às partições expandidas podem conter até 128 unidades lógicas.‖ (MICROSOFT, 2010). 26 Figura 15 - Dispositivos de disco(MICROSOFT, 2007) Os sistemas de armazenamento de arquivos possuem propriedades diferentes, os tipos de armazenamento são em disco são: básico e dinâmico. ―O sistema básico possui tabelas de partições suportadas pelo MSDOS, enquanto que, o sistema de arquivos dinâmico.‖ (SUPORTEMICROSOFT, 2010) Um volume dinâmico pode conter aproximadamente 2000 (duas mil) unidades. Após entender os sistemas de armazenamento é preciso saber como funcionam os diversos sistemas de arquivos. O FAT ―é uma tabela ou lista mantida por alguns sistemas operacionais para acompanhar o status de vários segmentos de espaço em disco, utilizado para o armazenamento de arquivos, tendo seus clusters maiores para alocar os arquivos.‖ (DE LIMA, 2004). O FAT32 ―é um derivado do sistema de arquivos FAT. Ele dá suporte a clusters de tamanhos menores que os do FAT, o que resulta em alocação de espaço mais eficaz nas unidades FAT32.‖ (DE LIMA, 2004). Finalmente o NTFS ―foi projetado para a família NT, com o objetivo de proteger o sistema com permissões em nível de arquivo e pasta. O FAT e o FAT32 não oferecem esse recurso, sendo que o controle de acesso para os sistemas FAT e FAT32 só poderá ser definido via compartilhamento de pasta‖ (DE LIMA, 2004). É necessário lembrar que ―o sistema de arquivos NTFS no Windows XP 27 Professional oferece suporte a encriptação, compressão e cota.‖ (DE LIMA, 2004). As permissões de arquivos são de: leitura, gravação, leitura e gravação, modificação e controle total. Para que as permissões de controle de pastas sejam ativadas é necessário desativar o compartilhamento simples de arquivos. A figura 16 mostra uma janela com as propriedade de arquivos no sistema operacional Windows. Figura 16 - Propriedades de arquivos(MICROSOFT, 2007) Com relação às pastas o controle permite: leitura, gravação, leitura e gravação, modificar, controle total e a principal diferença o controle mais rígido o de apenas listar o conteúdo da pasta de documentos. Referente aos nomes dos arquivos, estes podem utilizar qualquer nome, o sistema de nomes não é case sensitive9 . 9 Case sensitive diferencia letras maiúsculas e minúsculas nos arquivos.” (MAZIOLI, 2007). 28 Figura 17 - Permissões de documentos(MICROSOFT, 2007) Pastas e arquivos estão divididos em Arquivos de programas, pasta onde os programas instalados no sistema são armazenados, e esta diretamente alocada dentro do disco C:\, Documents and Settings da mesma forma ligada ao disco C:\, onde ficam os documentos dos usuários e finalmente a pasta Windows a qual contém os arquivos de sistema e também de configuração. As figuras 17 e 18 mostram detalhes sobre permissões de documentos e arquivos no sistema operacional Windows. 29 Figura 18 - Sistema de arquivos e pastas(MICROSOFT, 2007) 2.6.2 Técnicas e Ferramentas A análise forense envolve um ciclo de coleta de dados, para que informações não sejam comprometidas é necessário que aquisição dos dados seja feita em modo somente leitura. Qualquer acesso: a rede, ao disco, a memória, ou qualquer outro local que possa conter informações pode comprometer toda a perícia. Um disco de boot pode ser criado para que o sistema não inicialize e perca informações vitais para o desenvolvimento do trabalho. ―Os arquivos IO.sys e o arquivo command.com devem ser alterados (que alterações devem ser feitas?) para evitar acesso a dados do sistema operacional e consequente perda ou alteração de provas.‖(CASEY, 2004) Após a captura, que pode acontecer tanto enviando os dados pela internet, quanto gravados em um HD externo, a montagem do volume de arquivos também deve ocorrer em modo somente leitura. Se as informações forem enviadas pela rede, o serviço deve apresentar criptografia, porque a criptografia permite a proteção dos dados. 30 Alterações no MACtime, são provas para traçar uma linha do tempo para entender Como os fatos ocorreram. O MACtime é ―a maneira abreviada de se referir aos três atributos de tempo – mtime, atime, ctime – que são anexados a qualquer arquivo ou diretório no Unix, Windows e em outros sistemas de arquivos.‖(FARMER, 2009). Cada atributo de data e hora possui um significado, atime – ―refere-se à última data/hora em que o arquivo ou diretório foi acessado‖; mtime – ―muda quando o conteúdo do arquivo é modificado‖; ctime – muda― quando o conteúdo ou as meta-informações sobre o arquivo mudaram: o proprietário, o grupo, as permissões de arquivo e assim por diante.‖ (FARMER, 2009). A investigação dos logs de sistema pode apresentar alguma pista de quando aconteceu a primeira invasão. As datas dos arquivos de log do sistema também são fatos importantes, pois, arquivos de log gravam informações quase que diariamente. O QUANDO na perícia, em vários casos é mais importante do que o COMO, visto que é mais importante traçar uma linha do tempo como forma de entender o que foi feito. Pistas como tamanho de arquivos de sistema ou qualquer outro tipo de arquivo estranho ao ambiente de trabalho daquele local pode demonstrar que invasores possam estar captando informações para posterior análise. Arquivos de usuários estranhos ao sistema entre os de usuários ativos no sistema pode indicar a captura de informações. Fatos como a criação de novos usuários também são de grande utilidade, um novo membro no sistema não criado por qualquer pessoa que acessa o sistema apresenta evidencias de que o computador foi invadido. Serviços ativos não utilizados pelo usuário também podem ser fontes de pesquisa. Um serviço como telnet instalado num computador no qual usuários apenas acessam a internet para consultas torna-se um fato atípico ao que acontece na máquina. Todas as fontes apresentadas acima possuem um fundamento para que sejam analisadas pelo perito o que pode resolver o fato e concluir o inquérito com fontes de provas irrefutáveis. A tabela 2 lista as ferramentas mais utilizadas para análise forense computacional em sistemas Windows. 31 Tabela 2 - Tabela de Ferramentas Windows 2.7 Ferramentas Descrição Boot DOS Ferramenta boot do sistema Windows. Ubuntu live Ferramenta de boot do sistema Linux. Dd Cópia de arquivos do sistema Copy Comando dos do windows Forensic toolkit Verificação do sistema de arquivos e evidencias Project r3x Scanner de portas Nmap(zenmap) Scanner de portas Ssh ferramenta putty Envio de dados criptografados pela rede Forense em Sistemas Linux A estrutura de disco possui ao menos 4 tipos de partições. Para entender como os dados são alocados, é necessário entender como e quais são estas partições, tão importante quanto é entender onde e como as informações são armazenadas em disco, nas memórias físicas e swap, para entender como capturar e analisar os dados. 32 Figura 19 - Tela do comando df Linux(UBUNTU, 2010) O comando df do sistema Linux, mostrado na figura 19, possui as seguintes variáveis: df –a – inclui o modelo do sistema de arquivos, df –h – a saída ocorre em formatos legíveis para humanos, df –i – mostra a quantidade de inodes ao invés de blocos, df –l – listagem dos sistemas locais de arquivos, df –k – listagem do sistema de arquivos em kbytes, se –m a saída seria em megabytes, df –t vfat – apresenta a listagem do sistema por tipo, df –T – apresenta o tipo do sistema de arquivos. Os principais sistemas de particionamento do Linux são: ext2, ext3, ext4, reiserfs, reiser4 e Linux-swap. Não é necessário instalar qualquer versão do sistema para que o usuário veja o funcionamento do software pois os sistemas Linux podem ser executados sem instalação. 33 Figura 20 - Tipos de particionamento do sistema Linux(UBUNTU, 2010) Entender como funciona o sistema de arquivos e como estes são armazenados em disco é fundamental para as etapas do processo de investigação sejam consideradas como provas idôneas num possível processo. A figura 20 ilustra a criação de uma partição no sistema Linux, O sistema de diretórios e arquivos do Linux é dividido entre as pastas: bin, boot, dev, etc, home, lib, mnt, media, opt, proc, root, sbin, tmp, usr e var A quantidade de memória utilizada pelo sistema pode ser conferida usando o comando free. Se o comando for executado sem nenhuma variável será apresentado em bytes, enquanto que utilizando o especificado –m a quantidade de memória, cache, disponível, usada pelo sistema será apresentada em megabytes. Os processos inicializados pelo sistema ou programas utilizados podem ser consultados utilizando o comando ps –ax, bem como, o comando who tem a finalidade de apresentar os usuários conectados. Todas as informações mencionadas serão detalhadas nos próximos itens. 34 2.7.1 Princípios O Linux ―é um sistema Operacional de código aberto distribuído gratuitamente pela internet‖ (MAZIOLI, 2007). Possui várias distribuições, entre as principais estão, Debian, Red Hat, Suse, Conectiva, Slackware, Suse. O primeiro passo antes da gravação de um arquivo é a sua edição. Quando um usuário edita um arquivo, consome recursos do sistema. Estes, envolvem processos, uso da memória, em alguns casos o uso da memória swap e em todos os casos o uso do processador e do disco. Pronta a edição e, antes da gravação os arquivos necessitam de um nome e extensão. A extensão depende do tipo do arquivo, se for um texto pode ser um txt, doc, odt, rtf; contendo uma planilha eletrônica ods, xls; um programa em linguagem C um .c, em linguagem java, um .java, um script pode ter um .sh ou .py e assim por diante. Os nomes de arquivos são Case Sensitive, isto quer dizer que, um arquivo chamado texto.txt é diferente de outro chamado TEXTO.txt, mesmo que os conteúdos sejam os mesmos. Só após estes passos o arquivo do usuário ocupará um local no disco, entretanto, quando o mesmo for apagado ele desaparece só que a informação continua a existir e, em alguns casos só através de strings. Para executar a analise do sistema é necessário entender como ele está disposto. A contrassenso dos sistemas Windows, o Linux possui uma divisão de arquivos e pastas diferentes, conforme listado na tabela 3. 35 Tabela 3 - Descrição de Diretórios Linux Diretorio Descrição / Pasta raiz do sistema de arquivos /bin Arquivos binários do sistema /boot Arquivos de inicialização do sistema /dev Dispositivos de sistema /etc Arquivos de configuração do sistema /home Diretório de arquivo do usuário do sistema /lib Biblioteca de executáveis /mnt Diretório de montagem de discos /media Diretório de montagem de discos /opt Diretório instalação alguns programas /proc Aquivos de processamento /root Diretório dos arquivos do administrador do sistema /sbin Mantém a máquina do usuário root /tmp Diretório de arquivos temporários /usr Arquivos compartilhados do sistema /var Arquivos de sistema e logs do sistema O sistema Linux é orientado a arquivo, isto quer dizer que qualquer dado, como pasta, diretório, ou documento é considerado um arquivo. Se uma pasta é criada esta é considerada um arquivo, se um documento de texto é criado também é considerado um 36 arquivo. As permissões de acesso dos documentos em disco são tratadas de forma diferente conforme as permissões de acesso divididas por usuário, grupo e outros, com diferentes tipos de privilégios. As tabelas 4 e 5 listam estas permissões. A figura 21 mostra um exemplo de proteções utilizado no sistema Linux. Tabela 4 - Permissões de usuário Permissões Descrição UID Identificação do usuário ou dono do arquivo. GID Identificação do grupo. OUTROS Categoria dos usuários que não são donos dos arquivos ou pastas. 37 Tabela 5 - Permissões de arquivos e pastas Permissões Descrição r Permissão de leitura para arquivos ou pastas. w Permissão de gravação para arquivos ou pastas. x Permissão para executar arquivos. d Quer dizer que o arquivo e uma pasta. l Quer dizer que o arquivo e um link. ―—― Quer dizer que e um arquivo comum. -rwx| | Refere-se às permissões de acesso do dono do arquivo. - |rwx| Refere-se às permissões de acesso do grupo do arquivo. - | |rwx Refere-se ao acesso de outros usuários ao arquivo. 0 Não tem permissão para nenhuma tarefa (-rwx) 1 A permissão do tipo 1 refere-se a execução do arquivo (igual a +x) 2 Permissão de gravação (igual a +w). 3 Permissão de gravação e execução ( igual a +wx). 4 Permissão de leitura (igual a +r). 5 Permissão de leitura e execução (igual a +rx). 6 Permissão de leitura e gravação (igual a +rw). 7 Todas as permissões (igual a +rwx). u Usuário g Grupo o Outros a Todos 38 Figura 21 - permissões de arquivos e pastas(UBUNTU, 2010) Quanto ao sistema de arquivos, o Linux possui os seguintes tipos de partições, listados na tabela 6: Tabela 6 - Sistema de Partições Linux Linux- ―(...)o tamanho combinado do programa, dos dados e da pilha pode exceder a swap quantidade de memória física disponível para ele. O Sistema operacional mantém essas partes do programa atualmente em uso na memória principal e o restante em disco.‖(TANENBAUM, 2000). ext2 Utilizada em sistema nativos, com a finalidade de armazenamento de dados. ext3 Semelhante ao sistema ext2, só que melhorado na gravação sequencial dos dados.( MAZIOLI, 2007,) ext4 Nova partição Linux ou aprimoramento da partição ext 3 com suporte a uma maior quantidade de dados, melhora na pré-alocação dos dados, tempo de alocação estendido e checagem mais rápida na alocação do sistema de arquivos. (GUIADOHARDWARENET, 2010) reiserfs Sistema alternativo, com suporte de arquivos maiores do que 2 gigabytes e acesso mais rápido a árvore de diretórios. (MAZIOLI, 2007, p. 72) journaling Não é um tipo de partição especifica, mas complementa as partições reiserfs, est3, ext4 com a função de gravar os dados em um espaço específica para, caso aconteça alguma coisa o sistema possa retomar as informações que foram gravadas anteriormente. 39 Após entender a composição dos diversos sistemas de arquivos, bem como a estrutura do sistema, o desenvolvimento da análise forense torna-se mais fácil de ser desenvolvido. Uma das principais fontes de informação são os arquivos de log do sistema. Os logs podem ser encontrados na pasta principal var, dentro dela, a pasta log contém todos os arquivos de log do sistema. O Linux possui menor suscetibilidade a vírus devido aos privilégios de acesso ao sistema. Para instalar um programa para monitorar as digitações dos usuários é necessário que o invasor possua a senha do administrador do sistema. Assim, o Linux não é impossível de ser invadido, no entanto a possibilidade é menor devido às permissões de pastas, também a divisão da arvore de arquivos que aloca os dados em pastas diferentes, conforme imagem abaixo (cadê a imagem?): 2.7.2 Técnicas e Ferramentas A análise forense envolve um ciclo de coleta de dados, para que informações não sejam comprometidas é necessário que aquisição dos dados seja feita em modo somente leitura. Qualquer acesso: a rede, ao disco, a memória, ou qualquer outro local que possa conter informações pode comprometer toda a perícia. Sistema Linux possuem CDs ou Dvds de boot em modo livre, sem comprometer o sistema com instalação. A possibilidade de inicialização em modo somente leitura facilita a preservação de informações na cópia dos dados. Após a captura, que pode acontecer tanto enviando os dados pela internet, quanto gravados em um HD externo, a montagem do volume de arquivos capturados também deve ocorrer em modo somente leitura. O Linux possui ferramentas pré-instaladas que permitem a montagem de volumes em forma de modo somente leitura. Por à disposição ferramentas desta magnitude amplia a confiabilidade e o uso nesses softwares. A investigação dos logs de sistema pode apresentar alguma pista de quando aconteceu a primeira invasão. As datas dos arquivos de log do sistema também são fatos importantes, pois, arquivos de log gravam informações quase que diariamente. O QUANDO 40 na perícia, em vários casos é mais importante do que o COMO, visto que é mais importante traçar uma linha do tempo como forma de entender o que foi feito. Como explicado no subtítulo 2.6.2 os MACtime refere-se aos atributos de tempo atime, mtime e ctime. O atime refere-se à data de acesso, a contrassenso, mtime muda quando o conteúdo do arquivo é alterado e finalmente o ctime é altera do quando as propriedades do arquivo são alteradas. Todas as fontes apresentadas acima possuem um fundamento para que sejam analisadas pelo perito o que pode resolver o fato e concluir o inquérito com fontes de provas irrefutáveis. A tabela 7 mostra as principais ferramentas para análise computacional forense no sistema Linux. Tabela 7 - Tabela de ferramentas Linux Ferramentas Descrição Ubuntu Ferramenta de boot do sistema Linux. dd Cópia de arquivos do sistema Nmap(zenmap) Scanner de portas ssh ferramenta Envio de dados criptografados pela rede dc3dd Fermenta faz copia dos dados como dd só que em modo gráfico 41 3 FUNDAMENTOS JURÍDICOS PARA ANALISE FORENSE 3.1 Introdução Os crimes cometidos na rede são uma nova área de conhecimento para o sistema jurídico brasileiro, o país não possui legislação específica para estes tipos de crimes. Contudo, acontece que, as legislações em vigor apresentam fundamentos que podem ser adaptados aos crimes eletrônicos. As implicações da segurança na internet vêm causando preocupação nas pessoas. Um dos primeiros projetos de lei sobre Direito Eletrônico teve inicio em 1999. Outros projetos foram desenvolvidos como: 137/00, 76/00 e o projeto 89/03. Vários são os nomes dados a esta parte do direito, alguns deles seguem abaixo: Direito da Informática - refere-se a uma parte muito restrita da matéria, visto que a informática possui uma implicação restrita que não faz referência aos aparelhos que fazem a comunicação e consequentemente aos meios que fazem a comunicação. Direito Digital - faz uma implicação apenas à parte digital, em contrassenso, a rede mundial de computadores possui muitos aparelhos ligados analogicamente, assim o nome é muito restrito a uma área tão ampla. Direito Eletrônico - finalmente o terceiro refere-se à divisão feita em analógico e digital, tanto a parte analógica quanto a digital fazem parte da comunicação entre computadores e aparelhos envolvidos neste processo. O projeto 89/03 obteve parecer na câmara diretora do senado com modificações, no entanto sem consenso, nem votação. O projeto refere-se em seus artigos à segurança, à invasão, à falsidade ideológica, aos crimes de dano, falsidade documental e estelionato. O projeto possui novos artigos que qualificam os crimes cometidos pela internet. O Direito Penal possui elementos específicos dos tipos penais, alguns de extrema importância para este estudo, entre eles estão: sujeito ativo, sujeito passivo, o objeto e 42 a classificação doutrinária. Sujeito ativo ―é aquele que pode praticar a conduta descrita no tipo.‖ (GRECO, 2007). Sujeito passivo em citação utilizada por Rogério Greco (2007) de Bustos Ramírez e Hormzábal Malarée, que prelecionam: ―O sujeito passivo é o destinatário do comportamento típico (o titular do direito à vida, à saúde, à honra etc).‖ O tipo penal ―é uma norma que descreve condutas criminosas em abstrato.‖ (GONÇALVES, 2003), classificar doutrinariamente um tipo penal, ―significa o mesmo que apontar a sua natureza jurídica.‖ (GRECO, 2007). 3.2 Dos Crimes contra a pessoa O Código Penal Brasileiro não possui nenhum tipo penal específico referente à invasão de computadores. Uma invasão é ―um ataque bem sucedido que resulte no acesso, manipulação ou destruição de informações em um computador.‖ (CERT, 2006). Morimoto(2008) compara as redes com ruas e prédios da seguinte forma: Imagine que as duas partes do endereço IP (a parte referente à rede e a parte referente ao host) correspondem ao CEP da rua e ao número do prédio. Um carteiro só precisa destas duas informações para entregar uma carta. Mas, dentro do prédio moram várias pessoas. O CEP e número do prédio só vão fazer a carta chegar até a portaria. Daí em diante é preciso saber o número do apartamento. É aqui que entram as famosas portas TCP.( MORIMOTO,2008). Utilizando a analogia de Morimoto um crime de invasão pode ser considerado como invasão de domicílio. Os crimes contra a violação de domicílio apresentam a seguinte redação: ―Art. 150 - Entrar ou permanecer, clandestina ou astuciosamente, ou contra a vontade expressa ou tácita de quem de direito, em casa alheia ou em suas dependências‖ (DECRETO-LEI 2.848/40). Qualquer pessoa pode ser sujeito ativo, enquanto quem sofreu com a violação é o sujeito passivo. O crime de invasão de domicílio é considerado crime comum e a conduta do agente é a de entrar ou permanecer. A divulgação de segredos é crime cometido contra as pessoas. Mesmo sem artigos específicos para crimes cometidos na rede mundial de computadores a divulgação de documento particular encontra fulcro no artigo 153 do Código Penal. O sujeito ativo é a pessoa a quem se destina o documento e consequentemente 43 o detentor. O sujeito passivo é aquele que corre o risco do dano, resumidamente é a pessoa que tem suas informações publicadas. Rogério Greco (2007) classifica como ―crime próprio quanto ao sujeito ativo (pois que o tipo exige uma qualidade especial, vale dizer, a de destinatário ou detentor do documento particular ou de correspondência confidencial)‖ e como crime comum ―quando ao sujeito passivo (uma vez que qualquer pessoa pode vir a ser prejudicada com a divulgação indevida).‖. ―Documentos particulares são documentos privados, nos quais não intervém nenhum oficial público‖ (SOIBELMAN, 1998). A publicação de dados privados em blogs, em páginas na internet, Facebook, Myspace, Orkut, ou qualquer outro meio de divulgação de dados que esteja disponível na rede mundial de computadores. 3.3 Dos crimes contra o patrimônio ―O crime de dano é descrito da seguinte forma; ‖Art. 163. ―Destruir, inutilizar ou deteriorar coisa alheia‖ (DECRETO-LEI 2.848,1940). O tipo penal é a destruição do objeto, nesse caso uma máquina infectada. Um vírus de computador é ―um programa ou parte de um programa de computador, normalmente malicioso, que se propaga infectando, isto é, inserindo cópias de si mesmo e se tornando parte de outros programas e arquivos de um computador‖ (CERT, 2006). Este processo pode causar sérios problemas à máquina infecta. O sujeito ativo é o proprietário do computador, e o sujeito passivo é o atacante que enviou o código malicioso. 3.4 Dos Crimes contra a fé pública Alguns vírus de computador têm a finalidade de captar informações como número de cartões de crédito, números de contas de e-mail, senhas de contas em banco etc. Em alguns casos, para que códigos maliciosos executem em máquinas é necessário que usuários autorizem a execução ou o façam inadivertidamente. 44 Para tentar iludir os usuários atacantes anexam os vírus a outros tipos de arquivos fazendo com que o usuário execute indiretamente o arquivo obtendo a vantagem de ter acesso ao sistema ou arquivos que prejudiquem o atacado. O crime de estelionato encontra fulcro no artigo 171 do Código Penal que possui a seguinte descrição; ―Obter, para si ou para outrem, vantagem ilícita, em prejuízo alheio, induzindo ou mantendo alguém em erro, mediante artifício, ardil, ou qualquer outro meio fraudulento:‖ (DECRETO-LEI 2.848,1940). Em sua obra, GREGO (2007) descreve que ―qualquer pessoa pode ser sujeito ativo‖, enquanto que, o sujeito passivo ―deverá possuir capacidade de discernimento para que possa, de acordo com os elementos do tipo penal em estudo, ser induzido ou mantido em erro.‖. Com relação à classificação estelionato é um crime comum para ambas as partes. 3.5 Dos Crimes contra a incolumidade pública A falsificação de páginas na web, perfis em redes sociais como Orkut, Facebook, Myspace, Twitter, possui fundamento legal no artigo 307 do Código Penal. A descrição apresentada é: ―Atribuir-se ou atribuir a terceiro falsa identidade para obter vantagem, em proveito próprio ou alheio, ou para causar dano a outrem:‖ (DECRETO-LEI 2.848,1940). O Crime pode ser cometido por qualquer pessoa que possua conhecimento, enquanto que, o sujeito passivo é a pessoa que sofreu o dano. O próximo item apresentará as novas alterações que poderão ser feitas no Código Penal. 45 3.6 Projeto de lei 89/03 3.6.1 Dos Crimes cometidos na área de informática A inclusão dos artigos 285-A e 285-B ao Código Penal cria um novo tipo penal à invasão de computadores. No primeiro faz-se referência ao acesso com violação de segurança, no segundo a obtenção do acesso tem o fim pretendido da aquisição de informação. A pena imposta para o crime de invasão é de reclusão de 1 a 3 anos, mais multa. Reclusão ―é pena privativa de liberdade cumprida em regime fechado, semiaberto ou aberto‖ (Gonçalves, 2003), enquanto que, as detenções são ― uma pena privativa de liberdade cumprida em regime semiaberto ou aberto, salvo a hipótese de transferência excepcional para o regime fechado.‖ (GONÇALVES, 2003). Mesmo com a produção de efeitos nocivos, a pena quantitativa é a mesma imposta ao artigo 285-A que é de 1 a 3 anos mais a multa, qualificando dois crimes distintos da mesma forma. Os crimes dos artigos 285-A, 285-B, 154-A, 163, 163-A, 171, 265, 266, 297, 298, 259, 262, 262-A somente serão investigados e julgados mediante representação, exceção feita àqueles cometidos contra a administração direta e indireta. A representação é um tipo de ação penal. Ação Penal segundo CAPEZ (2005) ―é o direito de pedir ao Estado-Juiz a aplicação do direito penal objetivo a um caso concreto.‖. As ações penais são ―públicas ou privadas, conforme seja promovida pelo Ministério Público ou pela vítima e seu representante legal, respectivamente.‖ (CAPEZ, 2005). Conforme art. 100 do Código Penal, ―A ação penal é pública, salvo quando a lei expressamente a declara privativa do ofendido.‖ (DECRETO-LEI 2.848, 1940). Em suma, as ações penais serão sempre de competência do Ministério Público, exceto, quanto à lei disser o contrário. Por fim, a representação acontece quando ―o Ministério Público, titular desta ação, só pode a ela dar início se a vítima ou seu representante legal o autorizarem, por meio de uma manifestação de vontade.‖ (CAPEZ, 2005). A inclusão do artigo 154-A protege o direito de imagem em sistemas 46 informatizados. Se o invasor ou qualquer outra pessoa resolver colocar na internet, documentos, ou outra informação de algum sistema de informática, como banco de dados, servidor de arquivos ou outro qualquer, de qualquer outra pessoa sem autorização desta, será enquadrada neste artigo. Art. 154-A. Divulgar, utilizar, comercializar ou disponibilizar dados e informações pessoais contidas em sistema informatizado com finalidade distinta da que motivou seu registro, salvo nos casos previstos em lei ou mediante expressa anuência da pessoa a que se referem, ou de seu representante legal. O crime de dano é aquele em que o patrimônio de outrem sofre qualquer tipo, de destruição. O crime de dano já existia no Código Penal, apenas será acrescida a referência aos dispositivos informatizados. O artigo terá o seguinte texto ―Destruir, inutilizar ou deteriorar coisa alheia ou dado eletrônico alheio.‖ (PROJETO DE LEI 89, 2003). Também será incluído o artigo 163-A ―Inserir ou difundir código malicioso em dispositivo de comunicação, rede de computadores, ou sistema informatizado:‖ (Projeto de lei 89, 2003). A pena do novo artigo 163-A ficou definida como: reclusão de 1 a 3 anos, enquanto a pena do crime de dano é de 1 a 6 meses. Mesmo que a pena do art. 163-A seja quantitativamente parecida com a pena da invasão (artigo 285-A), o intruso que não provoca transtorno a usuários não deveria possuir pena semelhante à invasão que pode destruir dados importantes do sistema. Outro ponto mencionado é o estelionato eletrônico que insere inciso no art. 171 do Código Penal e a qualificadora para crimes cometidos pela difusão de código malicioso. O inciso versa da seguinte forma: VII – difunde, por qualquer meio, código malicios o com intuito de facilitar ou permitir acesso indevido à rede de computadores, dispositivo de comunicação ou sistema informatizado. (Projeto de lei 89, 2003). A pena para o novo inciso é a mesma do artigo 171 cabeça, que é a de reclusão de 1 a 5 anos mais a multa. Estelionato é ―erro, artifício, ardil, que se usa contra alguém para obter vantagem ilícita.‖ (SOIBELMAN, 1998). O artigo 265 mencionado no projeto continua com a mesma redação, no entanto, o artigo 266 sofreu a inserção de algumas palavras que fundamentam os crimes ocorridos pela internet. O projeto de lei apresenta a seguinte descrição: Art. 265. Atentar contra a segurança ou o funcionamento de serviço de água, luz, força, calor, informação ou telecomunicação, ou qualquer outro de utilidade pública: Art. 266. Interromper ou perturbar serviço telegráfico, radiotelegráfico, telefônico, telemático, informático, de dispositivo de comunicação de rede de computadores, de sistema informatizado ou de telecomunicação, assim como impedir ou dificultar-lhe o restabelecimento: (Projeto de lei 89, 2003). 47 A falsidade de documentos insere uma nova condição que é o dado eletrônico, diferentemente de registros convencionais em que documento público ―é aquele no qual intervém um funcionário público e, particular quando não ocorre esta situação.‖ (SOIBELMAN, 1998). Versa o artigo 297 ―Falsificar, no todo ou em parte, dado eletrônico ou documento público, ou alterar documento público verdadeiro:‖ (Projeto de lei 89, 2003). A punibilidade do artigo 297 é a mesma imposta pela reação anterior do artigo, que é de 2 a 6 anos mais a multa. Assim, com a alteração de qualquer dado eletrônico que trafegue na rede que comprometa uma transação eletrônica pode impor uma pena de até seis anos para o infrator. Um dado pode ser enviado pela rede sem que haja qualquer tipo de criptografia, a criptografia é a forma de proteger transações ou transferência de dados entre dois computadores através de chaves de segurança. Uma transação bancária, por exemplo, utiliza uma chave privada em uma conexão segura que utiliza um protocolo de criptografia como forma de proteger os dados a serem transmitidos, como exemplo, uma transmissão feita na web utiliza uma página segura usando o protocolo HTTPS (Hiper Text Transport Protocol Secure). Quando se faz menção a https , que dizer que utiliza-se uma conexão segura. Para CERT.br (2006) https refere-se ao modo ―quando utilizado como parte de uma URL, específica a utilização de HTTP com algum mecanismo de segurança, normalmente o SSL. A alteração do artigo 298 é semelhante a do artigo 297, porque apenas sofreu a inserção das palavras dado eletrônico, ―Art. 298. Falsificar, no todo ou em parte, dado eletrônico ou documento particular ou alterar documento particular verdadeiro:‖ (PROJETO DE LEI 89, 2003). A pena imposta para o artigo 297 é a de reclusão de 2 a 6 anos mais a multa, enquanto que a pena do 298 é de 1 a 5 anos mais a multa. A diferença entre os dois artigos é que as penas impostas ao setor público são superiores ao do setor privado. A descrição dos componentes, sistemas, dispositivos etc. foram inseridas no artigo 16 com respectivas descrições citadas na tabela 8: 48 Tabela 8 - Descrição e conceitos de equipamentos e serviços (Projeto de lei 89, 2003). Dispositivo de qualquer meio capaz de processar, armazenar, capturar ou transmitir dados comunicação utilizando-se de tecnologias magnéticas, óticas ou qualquer outra tecnologia. Sistema qualquer sistema capaz de processar, capturar, armazenar ou informatizado transmitir dados eletrônica ou digitalmente ou de forma equivalente; rede de o conjunto de computadores, dispositivos de comunicação e computadores sistemas informatizados, parâmetros, códigos, que obedecem a um conjunto de regras, formatos e outras informações agrupadas em protocolos, em nível topológico local, regional, nacional ou mundial através dos quais é possível trocar dados e informações; código o conjunto de instruções e tabelas de informações ou qualquer malicioso outro sistema desenvolvido para executar ações danosas ou obter dados ou informações de forma indevida; dados qualquer representação de fatos, de informações ou de conceitos sob forma informáticos suscetível de processamento numa rede de computadores ou dispositivo de comunicação ou sistema informatizado; dados de tráfego todos os dados informáticos relacionados com sua comunicação efetuada por meio de uma rede de computadores, sistema informatizado ou dispositivo de comunicação, gerados por eles como elemento de uma cadeia de comunicação, indicando origem da comunicação, o destino, o trajeto, a hora, a data, o tamanho, a duração ou o tipo do serviço subjacente. Finalmente, uma das principais alterações, a edição do art. 241 da lei 8069/90, que criou o Estatuto da Criança e do Adolescente. A redação do artigo inclui tipos penais. A pena para o crime continua a mesma que é de 4 a 8 anos mais a multa imposta. Também a referência à pornografia na rede mundial de computadores que envolva crianças e adolescentes. Aprovado o projeto o art. 241 passará a vigorar com a seguinte descrição: 49 ―Art. 241. Apresentar, produzir, vender, receptar, fornecer, divulgar, publicar ou armazenar consigo, por qualquer meio de comunicação, inclusive rede mundial de computadores ou Internet, fotografias, imagens com pornografia ou cenas de sexo explícito envolvendo criança ou adolescente:‖ (Projeto de lei 89, 2003). 3.6.2 Ausência de Dispositivos Problemas importantes deixaram de ser mencionados no projeto. Entre eles estão: I. A responsabilidade dos administradores de redes, dos donos de lanhouse ou cybercafés. II. O envio de e-mails corporativos é um problema que causa muita discussão, devido à possibilidade de administradores de redes interceptarem dados de funcionários, como forma de avaliar atividades funcionais de empregados. III. A troca de músicas, que utiliza programas P2P e a conexão direta entre vários computadores para realizar a troca e segundo as compras e transações bancárias realizadas pela internet. A troca de músicas, livros, viola os direitos do autor. A Constituição da República refere-se aos direitos do autor, enquanto que, a pena para quem publica, transmite, retransmite e distribui é fundamentada pela lei n° 9610/98. A descrição dos artigos segue abaixo: Art. 5º Todos são iguais perante a lei, sem distinção de qualquer natureza, garantindo-se aos brasileiros e aos estrangeiros residentes no País a inviolabilidade do direito à vida, à liberdade, à igualdade, à segurança e à propriedade, nos termos seguintes: XXVII - aos autores pertence o direito exclusivo de utilização, publicação ou reprodução de suas obras, transmissível aos herdeiros pelo tempo que a lei fixar; XXVIII - são assegurados, nos termos da lei: a) a proteção às participações individuais em obras coletivas e à reprodução da imagem e voz humanas, inclus ive nas atividades desportivas;(C.F., 1998). Art. 103. Quem editar obra literária, artística ou científica, sem autorização do titular, perderá para este os exemplares que se apreenderem e pagarlhe-á o preço dos que tiver vendido. ―Parágrafo único. Não se conhecendo o número de exemplares que 50 constituem a edição fraudulenta, pagará o transgressor o valor de três mil exemplares, além dos apreendidos. Tão importante quanto é a execução pública de obras sem a permissão do autor, isto sim em locais determinados como: teatro, shows e em apresentações públicas, cabe a representação aos responsáveis pela administração das obras, fica sujeita a pena de 20 vezes o valor a ser pago. Art. 109. A execução pública feita em desacordo com os arts. 68, 97, 98 e 99 desta Lei sujeitará os responsáveis a multa de vinte vezes o valor que deveria ser originariamente pago.‖(Lei 9610,98) IV. Por fim, com referências a fatores bancários e transações realizadas pela internet, a responsabilidade dos agentes possui uma linha muito tênue entre a responsabilidade de cada envolvido. Se a transação é realizada de forma segura, com a utilização de criptografia de chave pública e privada sem que haja nenhuma falha no envio ou recepção dos dados não poderia o usuário ficar responsabilizado pela transmissão dos dados e utilização das chaves. Entretanto, a responsabilidade jurídica das empresas que fazem transações pela internet é subjetiva, se o usuário possuir um keylogger, programa com a finalidade de capturar as teclas digitadas pelo usuário, ou a captura de telas utilizadas pelo usuário (screenlogger), em execução em seu computador. É importante que a responsabilidade nestes casos seja analisada para decidir a responsabilidade das partes envolvidas no processo de acesso, transação e finalização da compra ou operação bancária. 51 4 ANÁLISE DE FERRAMENTAS 4.1 Procedimento em Ambiente Windows Os dados foram copiados para outro disco, visto que a copia em formato ISO não seria montada com um disco de boot MSDOS e nem com o programa ForensicToolkit1.8 que necessita ser instalado o que necessita de um sistema em execução. Após a cópia dos dados para outro disco ocorreu em modo somente leitura e utilizou-se o programa dd do Linux como utilitário de cópia, visto que, a transcrição de arquivos e pastas é feita bit a bit e o modo somente leitura preserva a integridade dos dados. Ctime, atime e mtime refere-se respetivamente as data de criação, data de acesso e data de modificação de um arquivo. Um arquivo pode ter sua data de criação alterada quando o comando touch é executado, a data acesso pode ser alterada utilizando o comando cat, e finalmente a data de modificação pode mudar utilizando o comando chown. A avaliação da qualidade do projeto descrita por PRESMAN (2006), utiliza alguns atributos de qualidade desenvolvidos pela Hewlett Paackard. Os atributos de qualidade de projeto formam adaptados para a verificação de ferramentas de computação forense, também foi criada uma tabela de avaliação. Os valores são determinados de forma binária: 0negativo, 1-positivo. Funcionalidade – avaliará características e capacidades. Usabilidade – avaliará a estética. Confiabilidade – se apresenta falhas ou restrições. Desempenho - verifica a capacidade de processamento. Suportabilidade – capacidade de configuração 4.1.1 Estudo de caso com disco Boot Windows 98 CASO 1: O usuário compartilhou os dados através de pastas do sistema de arquivos. O invasor se aproveitou de senhas e compartilhamentos padronizados e obteve o controle do sistema. 52 Cada caso de invasão apresenta um comportamento diferente para a pesquisa de informações. Os sistemas da Microsoft possuem código fechado o que dificulta a captação de informações e atribui maior complexidade a análise. O sistema invadido foi o Windows XP. A inicialização do sistema de boot utilizando o MSDos apresentou muitas restrições para a pesquisa de dados. Ferramentas como recover, find, findstr, fc, calcsl e edit foram importantes para verificar as informações. As ferramentas citadas acima possuem as seguintes funcionalidades, recover recupera informações em discos, find e findstr tem por fim procurar textos em arquivos, fc compara dois arquivos, calcsl exibe listas de controle de acesso e finalmente edit faz leitura do conteúdo de arquivos. O mais importante foram os logs de sistema que bem configurados apresentaram o que aconteceu no sistema. Os logs do Windows XP podem ser encontrados nas seguintes pastas: I. Logs de consulta de aplicativos: C:\Windows\system32\config\AppEvent.evt II. III. Logs de segurança: C:\Windows\system32\config\SecEvent.evt Logs de Sistema: C:\Windows\system32\config\Sysevent.evt Os logs dos sistemas Windows XP podem ser configurados no painel de controle, ferramentas administrativas, gerenciamento do computador, também é possível visualizar ou ler eventos ao utilizar o comando compmgmt.msc. Logs de aplicativos armazenam eventos como a instalação de aplicativos, acesso de programas a arquivos, inicialização e outros. Os Logs de segurança mantem os avisos, erros e demais informações de segurança. Por fim, logs de sistema conservam dados sobre estados de programas executados no sistema. Importante lembrar que os logs do firewall também foram ativados através das conexões de rede, conexão local, propriedades das conexões locais, na aba Avançado, opções em Firewall do Windows, na aba avançado, configurações em Log de segurança, marcando Registrar em log os pacotes eliminados e também Registrar em log as conexões bem sucedidas. Os arquivos de log do firewall do Windows podem ser encontrados em C:\Windows\ pfirewall.log. Os arquivos de log foram lidos utilizando o comando edit - 53 ferramentas do MSDos, mostrado na figura 22. Figura 22 - logs do Firewall do Windows(MICROSOFT, 2007) Conforme a figura 22, foi aberta conexão entre a máquina invasora 192.168.0.121 e a máquina hospedeira 192.168.0.124. Nos eventos de log de sistema foi apresentada informações do usuário saturno. 54 Figura 23 - Log de Sistema(MICROSOFT, 2007) Conforma imagem apresentada na figura 23 é possível perceber que a invasão ocorreu, contudo as ferramentas não possuem consistência para entender o que foi feito no sistema de arquivos ou no sistema operacional. A tabela 9 mostra uma avaliação da ferramenta Boot MSDos. Tabela 9 - Avaliação Boot MSDos Objetivo Notas Funcionabilidade(capacidade) 0 Usabilidade(estética) 0 Confiabilidade(falha e restrição) 0 Desempenho(capacidade processar) 1 Suportabilidade(capacidade configurar) 1 Total 2 55 4.1.2 Estudo de caso com ForensicToolkit1.8 CASO 2: O segundo caso é semelhante ao primeiro. O usuário compartilhou pastas do sistema de arquivos e o invasor obteve o controle do sistema. Tanto o Sistema Operacional invadido quanto o hospedeiro da ferramenta ForensicToolkit1.8 utilizaram o Windows XP, conforme mostrado na figura 24. Na inicialização, a ferramenta requer um endereço de rede e uma porta, logo depois a ferramenta apresenta qual o tipo de procedimento deve ser seguido, se é um novo caso ou se deseja continuar em algum processo já iniciado. Se um novo caso for cadastrado, as informações deverão ser preenchidas para formalizar a aquisição com o formulário. O próximo passo inquiriu o perito sobre o tipo de local a qual a captação deve ser feita, em discos, arquivos ou pastas, etc. Após a escolha do tipo de mídia, o perito escolhe os tipos de arquivos que devem ser pesquisados, como imagens, executáveis, arquivos de sistemas, documentos, planilhas, banco de dados e vários outros. Encerrada a verificação de arquivos, o software os apresenta divididos em vários tópicos que podem ser escolhidos pelo usuário. Tópicos que contem arquivos duplicados, arquivos com extensões suspeitas e arquivos apagados entre outros. A partir deste ponto a função do perito é avaliar os dados do sistema para captar informações que comprovem a culpabilidade ou não dos envolvidos no caso. A tabela 10 apresenta a avaliação da ferramenta. 56 Figura 24 - FTK toolkit(ACCESSDATA, 2010) Tabela 10 - Avaliação ForensicToolkit20 4.2 Objetivo Notas Funcionabilidade(capacidade) 1 Usabilidade(estética) 1 Confiabilidade(falha e restrição) 1 Desempenho(capacidade processar) 0 Suportabilidade(capacidade configurar) 0 Total 3 Procedimento em Ambiente Linux O Linux foi inicializado sem instalação, de modo a não alterar o sistema de arquivos. Logo após, o comando tune2fs –l mostra as partições do sistema a qual será 57 montada, neste caso a partição é /dev/sda1. A figura 25 mostra a execução do comando tune2fs. Figura 25 - Execução do comando tune2fs.(FDTK, 2007) Para a montagem do sistema de arquivos foi criada a pasta forense dentro do diretório media, utilizou-se o comando mkdir forense. Agora a cópia dos dados será feita em modo somente leitura para a pasta forense dentro do diretório media. A montagem utilizou o comando: mount –r –t /dev/sda1 /media/sda1. Arquivos possuem características de tempo como ctime, atime e mtime dos arquivos capturados que respetivamente referem-se às datas de criação, de acesso e de modificação dos arquivos. Um arquivo pode ter sua data de criação modificada quando o comando touch é executado, a data de acesso pode ser alterada utilizando o comando cat, e finalmente a data de modificação pode mudar utilizando o comando chown. A consulta de arquivos pode ser feita com os comandos find e ls. A avaliação da qualidade do projeto descrita por PRESMAN (2006) utiliza alguns atributos de qualidade desenvolvidos pela Hewlett Paackard. Os atributos de qualidade de projeto formam adaptados para a verificação de ferramentas de computação forense, também foi criada uma tabela de 58 avaliação. Os valores são determinados de forma binária: 0-negativo 1-positivo. Funcionalidade – avaliará características e capacidades. Usabilidade – avaliará a estética. Confiabilidade – se apresenta falhas ou restrições. Desempenho - verifica a capacidade de processamento. Suportabilidade – capacidade de configuração 4.2.1 Estudo de caso com FDTK-V2.01 CASO 1: O sistema foi invadido utilizando o serviço Telnet, vários arquivos foram apagados, não houve a intenção de capturar arquivos do usuário, apenas a vontade de destruir dados. A pesquisa seguiu os seguintes passos até encontrar evidências sobre a invasão do sistema Linux 10.04. A investigação dos dados utilizou ferramentas de distribuição Linux, no entanto o trabalho é facilitado pelas ferramentas estarem dispostas de forma que o usuário não tenha que procurar ou instalar nenhuma delas. A cópia de dados em disco utilizou janelas, a distribuição também possui verificação de arquivos dat, alteração em datas de arquivos, leitores de hexadecimais, localização de dados, recuperação de dados em discos fat, ntfs e outros. Algumas ferramentas, devido à versão da distribuição, ficaram desatualizadas, mesmo assim a maioria delas ainda atende a sua função. Na avaliação realizada ferramentas a maioria das ferramentas utilizadas foram em modo texto, visto que o conjunto de ferramentas nem sempre são específicos para todas as perícias. Após a consulta dos discos, a cópia dos dados e a montagem do volume, teve início a busca por evidencias. Os logs do sistema Linux possuem várias informações entre as quais estão os logs de sessão, logs de instalação, logs de usuários autenticados, em vista disto, a investigação teve inicio pelos logs do sistema. Procurar entre arquivos observando a data de cada um deles seria muito trabalhoso. Arquivos de log podem conter a pistas que facilitem a investigação. Linhas dos arquivos de log podem ser apagadas prejudicando o trabalho forense. 59 Arquivos de consulta de senha como o /etc/passwd, logs de usuários inseridos foram excluídos e logs do sistema podem comprovaram a assertiva. Finalmente comparando todas as informações a perícia e encontrou dados nos logs do Linux e também no history dos arquivos bash, podem demonstrar todos os passos do usuário no sistema. Detalhadamente, a busca por informações ocorreu da forma descrita abaixo: Os dados foram copiados para outro disco. O sistema linux inicializou em modo livre e a copia dos dados utilizou o dd do linux para outro disco rígido. O comando discover -d informou que o sistema possui um disco rígido e um drive de cd-rom. Para consultar os tipos de dispositivos foi usado o comando ls -d /dev/s* e ls -d /dev/h*, que identificou os volumes sda, sda1, sda2, sda5 na pasta dev. O comando tune2fs -l /dev/sda1 consultou qual dos dispositivos conteriam o sistema de arquivos. Os dispositivos /dev/sda, /dev/sda2 e /dev/sda5 não retornaram informações sobre qualquer sistema de arquivos, enquanto que o /dev/sda1 retornou instruções do dispositivo de sistema. Foi criada a pasta de armazenamento FDTK, dentro da pasta de montagem media do sistema livre. O comando usado para criar a pasta foi mkdir FDTK. A pasta tem a finalidade de receber a montagem do sistema de arquivos copiados com o dd do linux. A investigação identificou que o invasor criou um usuário de sistema e com ele sua própria pasta de arquivos. Por descuido ou erro, a pasta do usuário criado permaneceu no sistema, e com isso foi possível identificar que o perfil escolhido pelo invasor recebeu o nome de chuck. O histórico de comandos do usuário, mostrada na figura 26, identificou que o usuário tentou apagar arquivos, contudo não conseguiu, por conseguinte, tentou usar privilégios de administrador ao acessar o usuário root. A data de criação da pasta de arquivos chuck ocorreu em 19 de maio de 2011, com isto é possível determinar que arquivos acessados, modificados ou criados por chuck ou alterados nessa data podem ter sido feitos pelo invasor do sistema. 60 Figura 26 -Histórico de comandos do usuário Chuck(FDTK, 2007) Em busca de informações nos arquivos de log, verificou-se que todos os arquivos de log foram apagados. O comando cat10 e tail11 auxiliaram na leitura dos arquivos não apagados. O arquivo de histórico de comandos do administrador do sistema, mostrada na figura 27, comprovou que a finalidade da invasão era apagar arquivos do usuário e informações e consequentemente dados que comprovassem a penetração no sistema. Figura 27 - Histórico de comandos Administrador do sistema(FDTK, 2007) Ao fazer uso da ferramenta recover que tem por fim recuperar arquivos, a 10 Comando Linux para leitura total de arquivo 11 Comando Linux para leitura de linhas de arquivos 61 ferramenta não obteve êxito na em sua tarefa, contudo a ferramenta foremost foi bem sucedida mesmo que parcialmente. O comando usado foi foremost -t all /media/FDTK/home/netuno/, no entanto quando o comando foi utilizado, foi considerado como sistema somente leitura a pasta criada com o nome de output dentro do diretório media. Os arquivos foram divididos por tipo e recuperados, conforme mostrado na figura 28. Figura 28 - Pastas com arquivos recuperados pelo foremost.(FDTK, 2007 ) Todas as ferramentas de recuperação estavam disponíveis no FDTK outras ferramentas utilizadas estão pré-instaladas no sistema, também está pré-instalado o programa Coroner's Toolkit de Dan Farmer. A tabela 11 mostra a avaliação da ferramenta FDTK. Tabela 11 - Avaliação FDTK 4.2.2 Objetivo Notas Funcionabilidade(capacidade) 1 Usabilidade(estética) 1 Confiabilidade(falha e restrição) 0 Desempenho(capacidade processar) 1 Suportabilidade(capacidade configurar) 1 Total 4 Estudo de caso com Distribuição Linux CASO 2: O sistema foi invadido para capturar arquivos pessoais do usuário, após analisar os arquivos, o invasor apenas se apoderou de fotos comprometedoras do usuário do sistema. 62 A pesquisa seguiu os seguintes passos até encontrar evidências sobre a invasão do sistema Linux 10.04. Após a consulta dos discos, a cópia dos dados e a montagem do volume, teve início a busca por evidencias. Os logs do sistema Linux possuem várias informações, devido a isto, a investigação teve inicio pelos logs do sistema. Procurar entre os arquivos observando a data de cada um deles seria muito trabalhoso. Os arquivos de log podem conter a pista para investigar. Algumas linhas foram apagadas como forma de proteção. O sistema foi invadido pelo serviço ssh que continha uma senha fraca. Assim o usuário utilizou da vulnerabilidade. Entrou no sistema e criou mais dois usuários, os quais não foram utilizados. Os usuários serviram para identificar quando teve inicio as atividades de invasão. Mesmo assim, os arquivos de senha /etc/passwd forma consultados, ficou comprovado que, os usuários inseridos foram excluídos, os logs do sistema evidenciaram a assertiva. Finalmente, ao comparar todas as informações, a perícia encontrou dados nos logs do Linux e também no history, demonstrando todos os passos do usuário no sistema. Detalhadamente, a busca por informações ocorreu da forma descrita abaixo: Os dados foram copiados para outro disco. O sistema linux inicializou em modo livre e a copia dos dados utilizou o dd do linux para outro disco rígido. O comando tune2fs -l /dev/sda1 consultou qual dos dispositivos conteriam o sistema de arquivos. O dispositivo /dev/sda não retornou nenhuma informação de qualquer sistema de arquivos, enquanto que o /dev/sda1 retornou instruções de um dispositivo de sistema. Para a montagem do sistema de análise foi necessário criar uma pasta para cópia dos arquivos. A pasta foi criada dentro da pasta media na raiz do sistema de arquivos Linux, o nome aplicado ao diretório de armazenamento foi forenselinux. Após o conhecimento do disco rígido a montagem do sistema ocorreu em modo somente leitura utilizando o seguinte comando: mount -r /dev/sda1 /media/forenselinux. O primeiro passo foi verificar os arquivos de log, a consulta de datas dos arquivos de log ocorreu ao empregar o comando ls -la --time=atime. O atime retorna o último acesso do arquivo e também apresenta o dono do arquivo e o grupo. Os comando cat e tail auxiliaram na leitura dos arquivos de log. A pasta apt 63 apresentou a instalação de programas com datas embaralhadas. O primeiro indício foi a instalação do telnet, serviço que poderia oferecer acesso facilitado ao sistema. Após empregar o comando cat dpkg.log | grep telnet ficou claro que o invasor instalou o servidor telnet no dia 20 de maio de 2011. O log de autenticação identificou um novo usuário, mostrado na figura 29. O usuário juliano foi criado pelo usuário root. No mesmo sentido, é possível concluir que o invasor possui a senha do administrador do sistema. Figura 29 - Análise dos arquivos de log(UBUNTU, 2010) Os arquivos lastlog e syslog não apresentaram informações de grande relevância. O próximo passo foi buscar os comandos utilizados pelo invasor no arquivo bash_history do usuário root. O acesso a pasta root só é permitido ao seu dono. O arquivo apresentou todos os passos do invasor no sistema. O usuário criou o usuário juliano, tentou copiar a pasta de fotos e, também deletou a pasta do usuário criado. As figura 29 e 30 ilustram os comandos utilizados. A tabela 12 mostra o resultado da avaliação do uso da distribuição Linux. 64 Figura 30 - Inserção de novo usuário ao sistema(UBUNTU, 2010) Figura 31 - Arquivo bash_history contendo informações da invasão(UBUNTU, 2010) 65 Tabela 12 Avaliação com Distribuição Linux Objetivo Notas Funcionabilidade(capacidade) 1 Usabilidade(estética) 0 Confiabilidade(falha e restrição) 0 Desempenho(capacidade processar) 1 Suportabilidade(capacidade configurar) 1 Total 3 66 5 CONSIDERAÇÕES FINAIS Este trabalho apresentou técnicas e ferramentas utilizadas em perícia forense computacional, bem como, alguns dos resultados de ferramentas utilizadas em determinados tipos de invasões. Este capítulo esta organizado da seguinte forma. A seção 5.1 apresenta as contribuições que o trabalho proporcionou e as conclusões obtidas. Na seção 5.2 são mostradas sugestões para trabalhos futuros. 5.1 Contribuições As contribuições deste trabalho foram: Detectar vulnerabilidades e analisar as deficiências dos sistemas operacionais Linux e Windows; Demonstrar como invasores obtêm acesso a sistemas e quais males podem causar; Perceber volatilidade de dados, apagados ou alterados e seu comportamento em sistemas Linux e Windows; Recuperar e identificar dados e, quais os passos de um invasor ao tomar posse do sistema; Pesquisar ferramentas utilizadas na perícia forense. 5.2 Trabalhos Futuros As contribuições atingidas neste trabalho não encerram o assunto e outros assuntos são importantes para trabalhos futuros, entre eles: Padronização de ferramentas. Nem todos os peritos utilizam as 67 mesmas ferramentas, em cada perícia é necessário um tipo de ferramenta, devido ao tipo de perícia a ser realizada. Desenvolvimentos de ferramentas de cópia de dados bit a bit para arquivos locais. O comando dd do Linux é ferramenta mais utilizada para copia dos dados, no entanto, em alguns casos é necessária a cópia de partes específicas do disco. Ferramentas de analise, desenvolvida para sistemas Windows. Os sistemas desenvolvidos para a plataforma Windows apresentam várias brechas que podem comprometer o sistema de arquivos avaliados. Discussão eletrônico. sobre o desenvolvimento de legislação em Direito 68 6 REFERÊNCIAS BIBLIOGRÁFICAS AccessData Group, LLC. Forensic Toolkit® (FTK™) version 1.81.6, 2010 Casey, Eoghan. Digital Evidence and Computer Crime: Forensic Science, Computers, and the Internet, Second Edition Academic Press, 2004. Capez, Fernando. Curso de Processo Penal, São Paulo: Editora Saraiva, 2005. Cert.Br. Disponível em <http://cartilha.cert.br/>, 2006. Código Processo Penal. Disponível em < http://www.planalto.gov.br/ccivil_03/Decreto- lei/Del3689Compilado.htm >, Acesso Janeiro de 2011. Código Penal. Disponível em < http://www.planalto.gov.br/ccivil_03/Decreto- lei/Del2848compilado.htm >, Acesso Janeiro de 2011. Constituição Federal. Disponível http://www.planalto.gov.br/ccivil_03/constituicao/constitui%C3%A7ao.htm>, em Acesso < Janeiro de 2011. Di Pietro, Maria Silvia Zanella, Direito Administrativo, São Paulo, Editora Atlas, 2008. Farmer, Dan. Perícia forense computacional. São Paulo: Pearson Prentice Hall, 2007. Gonçalves, Vitor Eduardo Rios, Direito Penal, São Paulo: Editora Saraiva, 2003. Greco, Rogério, Curso de Direito Penal, Rio de Janeiro: Editora Impetus, 2007. GuiadoHardwareNet Disponível em < http://www.guiadohardware.net/artigos/ext4/> Acesso 20 setembro de 2010. 69 IBGE. Disponível em <http://www.ibge.gov.br/home/presidencia/noticias/noticia_impressao.php?id_noticia=1059.> Acesso 20 setembro de 2010. Lei 9810. Disponível em http://www.senado.gov.br/atividade/materia/detalhes.asp?p_cod_mate=63967> < , Acesso em Janeiro de 2011. Lima, Luciano de. Guia de Certificação MCSE Para Windows XP Professional: Exame 70-270. Rio de Janeiro: Ciência Moderna Ltda, 2004. Microsoft. Disponível em <http://windows.microsoft.com/pt-PT/windows-vista/What-are- partitions-and- logical-drives> Acesso 20 novembro de 2010. Microsoft Disponível em <http://windows.microsoft.com/pt-PT/windows-vista/What-are- basic-and-dynamic-disks> Acesso 20 novembro de 2010. Moraes, Alexandre de, Direito Constitucional, São Paulo: Editora Atlas, 2005. Morimoto, Carlos Eduardo. Redes Guia Prático. Porto Alegre: Sul Editores, 2008. Morimoto, Carlos Eduardo. Servidores Linux Guia Prático. Porto Alegre: Sul Editores, 2009. Norton, Peter; Griffith, Arthur. Guia Completo do Linux. São Paulo, 2000. NETCAT. Disponível em <http://netcat.sourceforge.net/> Acesso em 16 de maio 2010 NIC BR Security Office. Práticas de Segurança para Administradores de Redes Internet,2003. Nic. Disponível em <http://www.nic.br/imprensa/clipping/2008/midia082.htm >. Acesso 20 novembro de 2010. 70 Neukamp, Alberto FDTK, 2007 OGloboonline. Disponível em <http://oglobo.globo.com/economia/mat/2010/11/19/computador-esta- presente-em-58-dos-lares-brasileiros-aponta-intel-923053699.asp> Acesso 20 novembro 2010. Projeto de lei 89. Disponível em http://www.senado.gov.br/atividade/materia/detalhes.asp?p_cod_mate=63967>, Acesso < em Janeiro de 2011. Pressman, Roger S.; Engenharia de Software, McGraw-Hill, 2006. Proença, Rafael Ubuntu, 2010 Silberschatz, Abraham. Sistemas Operacionais. Rio de Janeiro, Elsevier, 2004. Scambray, Joel; McClure, Stuart; Kurtz, George. Hackers Expostos. São Paulo. Makron Books, 2001. Anônimo. Segurança Máxima. Rio de Janeiro, 2000. Silva, Gleidson Mazioli da. Guia Foca GNU/Linux,2007. Sistemas Windows. Disponível em <http://technet.microsoft.com/pt- br/library/dd459005.aspx.> Acesso 20 novembro de 2010. Sistemas Windows. Disponível em <http://support.microsoft.com/kb/100108/pt-br>. Acesso 20 novembro de 2010. Suporte Disponível em <http://support.microsoft.com/kb/315263/pt-br> Acesso 20 novembro de 2010. 71 Suporte Disponível em < http://support.microsoft.com/kb/894565/pt-br> Acesso 20 novembro de 2010. Suporte Disponível em < http://support.microsoft.com/kb/310747/pt> Acesso 20 novembro de 2010. Suporte Disponível em <http://support.microsoft.com/kb/100108/PT-BR> Acesso 20 novembro de 2010. Suporte Disponível em < http://support.microsoft.com/kb/154997/pt-br> Acesso 20 novembro de 2010. Suporte Disponível em < http://support.microsoft.com/kb/894565/pt-br> Acesso 20 novembro de 2010. SuporteMicrosoft Disponível em <http://support.microsoft.com/kb/314343/pt,2007> Acesso 20 novembro de 2010. Tanenbaum, Andrew S.. Redes de Computadores. Rio de Janeiro. Elsevier, 2003. Tanenbaum, Andrew S.. Sistemas Operacionais. Porto Alegre, Editora Bookman, 2002. Technet Disponível em < http://technet.microsoft.com/pt-br/library/dd744291(WS.10).aspx> Acesso 20 novembro de 2010. Technet Disponível em < http://technet.microsoft.com/pt-br/library/ee344823(WS.10).aspx> Acesso 20 novembro de 2010. Technet Disponível em < http://technet.microsoft.com/pt-br/library/cc773223(WS.10).aspx> Acesso 20 novembro de 2010. Ulbrich, Henrique Cesar; James, Della Valle. Universidade Hacker. São Paulo, 2004. 72 Ulbrich, Henrique Cesar. Hackademia. Digerate Books, 2008.