domingo, 25 de novembro de 2007

Investigador de Forense Computacional

O papo estava bom hoje em torno do assunto de como se tornar um perito em Forense Computacional, na lista PericiaForense.

Achei interessante reproduzir aqui a resposta que postei lá. Segue:

O curso da Axur é muito bom.

O conteúdo é amplo o suficiente e aborda itens que não vi nenhuma outra ementa abordar, até pq não estão presos a uma ferramenta específica. Só não alimente a esperança de sair de lá (ou de qq outro treinamento) um perito. Isso requer tempo, MUITO estudo e dedicação. É uma tecla que o amigo Jossérgio bate o tempo todo, às vezes um pouco mais contundente, mas com toda a razão.

Na primeira semana de dezembro fará um ano que fiz o curso e obtive a certificação. De lá prá cá já devo ter lido para mais de 20 livros de Forense Computacional. Artigos lidos, incluindo blogs e apresentações em conferências internacionais, eu perdi a conta. Devo ter lido, sem exagero, muito mais que cem deles, em geral usando 3 a 4 horas de estudo diário. Parte desses artigos, volta e meia, eu comento no meu próprio blog. No final das contas, a cada novo artigo continuo com a sensação que tem uma ameba ao olhar para o topo de um edifício de 30 andares hehehe. Como ainda temos coisas a aprender ...

Imagino que tenhamos que sacar bem o seguinte:

- A idéia geral de Forense Computacional
- Detalhes muito técnicos de vários sistemas operacionais
- Detalhes muito técnicos de vários file systems de vários SOs
- Detalhes muito técnicos de vários softwares de vários SOs
- Escrever um bom relatório (tem muita gente dando mole aqui)
- Algum embasamento jurídico, principalmente no modelo brasileiro de coleta e apresentação das evidências
- Coletar evidências em situações diversas (dead acquisition/live acquisition, usando HD externo, pen drive, via rede, de PDAs, telefones celulares, etc). Tem até Xbox passando por Forense ...
- Técnicas anti-forenses
- É necessário uma lógica investigativa apurada. Quem já foi desenvolvedor já usou muito isso "catando" bugs em programas. Alguns analistas de infraestrutura idem, buscando onde estão indo parar os pacotes da rede. O curso da Axur aborda uma metodologia legal para ajudar nessa etapa.
- Algumas vezes vai ter que lidar com prazos curtos. É o caso dos peritos policiais, por exemplo.


E, no fim das contas, há novos SOs saindo com novas estratégias, logs, formas de uso, chaves de registry, etc ...

E a lista, com certeza, não está completa ... :)

Gostaria que a turma comentasse a lista. Tenho certeza de que muitos lembrarão de outras competências necessárias.

Até o próximo post !

domingo, 18 de novembro de 2007

Obrigado

Recebi várias mensagens, pela lista CISSPBR, parabenizando-me pelo blog.

Fiquei muito contente com o fato, primeiro porque percebo estar atingindo o objetivo, ainda que bem devagar, que é o de disseminar o conhecimento sobre Forense Computacional no Brasil. Em segundo, porque a lista CISSPBR concentra os melhores profissionais do Brasil envolvidos com Segurança de Informações. Receber elogios de caras como BSDaemon e Fábio Ramos me fizeram sorrir de orelha a orelha. Espero continuar merecedor das palavras bacanas desse pessoal.

Grande abraço a todos !

E até o próximo post !

Um pouco sobre Leis

Não é o que você está pensando. Não vamos conversar aqui sobre nosso sistema jurídico e como ele se relaciona com a Forense Computacional.

Este tópico miúdo (é, sei que estou devendo algo mais de peso) está na minha pauta a algum tempo, e como minha consciência anda me cobrando um (PELO MENOS UM !!!) artigo neste mês, vamos falar de leis. Outras leis ...

A idéia é comentar sobre algumas leis que tem sido ligadas a Forense Computacional. São elas a Primeira Lei de Forense Computacional, o Corolário de Harlan, o Princípio de Locard e o Princípio da Incerteza. Vamos lá:

A Primeira Lei da Forense Computacional foi proposta por Jesse Kornblum, um dos papas da Forense Computacional mundial e pesquisador renomado na área de Carving. Ele tem em seu curriculum nada menos que o utilitário md5deep, usado por 11 entre 10 investigadores forenses :)

A lei diz o seguinte:

Toda ação gera uma evidência

Essa lei é uma aplicação direta do Princípio de Locard. Ela afirma que qualquer ação tomada na área computacional deixará artefatos a serem analisados e poderão constituir evidências. Os mais céticos com relação a isso se apressam em dizer, nesse ponto, que há vários itens não logados no sistema operacional. Quando argumentaram isso com Kornblum, ele habilmente contra-argumentou que devemos levar em conta não apenas o sistema ou a máquina onde a ação foi feita, mas tudo que pode ser relevante a ponto de ser analisado e, em conjunto, revelar os fatos. A correlação de eventos, muito em moda nos monitoramentos de ambientes, é a chave para se entender isso. Vamos a um exemplo ?

Não há, pelo menos sem ajuda de produtos à parte, um log no SO que indique que os arquivos X, Y e Z foram copiados para um pen drive ou de um pendrive. Porém, se tivermos o pen drive, podemos deduzir pelos MAC times em ambos (no HD da máquina e no pen drive) a direção da cópia. Se o pen drive for do padrão U3, há um meio de saber exatamente a hora em que foi plugado/desplugado, corroborando as evidências do MAC times. Também é possível corroborar essas datas com o MAC times das entradas de registro a cerca do pen drive.

Um ponto importante é que a Lei não garante que vamos encontrar essa evidência. Se determinada ação gerou artefatos, mas os mesmos foram habilmente removidos por técnicas anti-forenses, pode ser que realmente estejamos encrencados. Isso não contraria essa Lei. Em algum momento, a ação gerou uma evidência.

Corolário de Harlan

Harlan Carvey, um dos melhores autores de Forense Computacional para Windows, apóia-se no que Jesse disse e preparou o seguinte:

Uma vez compreendido quais condições criam ou alteram um artefato, então a completa ausência de artefatos é por si mesma um artefato.

É semelhante a você chegar na cena de um crime e não achar nenhuma digital. Isso é evidência de que o criminoso limpou a cena. (Ok, talvez seja uma conclusão simplista, mas é por aí mesmo).

Trazendo para nossa realidade, se você está analisando uma imagem com pouquíssimos arquivos recuperados na área não alocada, e todos eles completamente zerados, acrescente a investigação, como artefato, que o usuário conhecia técnicas de descarte seguro de informações e/ou técnicas anti-forenses. Para esse usuário, vale a pena aumentar o cerco ...

Princípio de Locard

Já bastante difundido em nosso meio, o também conhecido como Princípio de Troca de Locard afirma que:

Sempre há troca de material quando dois itens interagem

Nesse lógica, sempre haverá evidências deixadas na cena de um crime, e os investigadores também introduzirão mudanças, ao realizarem seu trabalho. Nesse caso, é imperativo que seus procedimentos sejam bem documentados e seus resultados previstos, para que toda troca causada por eles seja reduzida ao mínimo necessário, e sempre com resultados previsíveis. Esse é, por exemplo, o ponto onde muitos defensores (eu também !) da captura da memória para fins de análise. Quem é contra afirma que a própria captura introduz mudanças. Quem defende aceita que as mudanças ocorrerão, mas defendem que, se reduzidas e bem documentadas, são aceitáveis e que a relação custo x benefício para a investigação é muito boa.

Princípio da Incerteza de Heisenberg

Usado originalmente na Física Quântica, define que:

Não é possível determinar ao mesmo tempo a posição correta e o momentum de uma partícula

O conceito original acabou sendo tomado emprestado para definir a mesma dificuldade de algumas situações em Forense Computacional, como o Live Acquisition. Quando optamos por essa técnica, é fato que não será possível obter o dado ao mesmo tempo confirmando a sua integridade, pois como a mídia está em uso, no momento seguinte a leitura do dado o estado da mídia já foi alterado, impossibilitando as técnicas de hash usadas com essa finalidade.

Imagino que existam outras leis sendo adaptadas para aplicação na Forense Computacional. Você conhece alguma outra ? Poderia compartilhar conosco ?

Outro ponto para discussões: Já perceberam o quanto ainda falta para que a Forense Computacional possa mesmo chegar ao status de Ciência, como é hoje a Medicina Legal ?

Até o próximo post !