Mostrando postagens classificadas por relevância para a consulta locard. Ordenar por data Mostrar todas as postagens
Mostrando postagens classificadas por relevância para a consulta locard. Ordenar por data Mostrar todas as postagens

domingo, 18 de novembro de 2007

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 !

domingo, 20 de janeiro de 2008

Manutenção no Helix

O Helix é um dos melhores "live CDs" disponíveis para a comunidade de Forense Computacional. Ele reúne um ambiente com dezenas de utilitários importantíssimos não apenas para o trabalho de aquisição da imagem forense, mas também para o trabalho posterior de análise. Como se isso não bastasse, ele tem uma parte de Incident Response para Windows.


Um Live CD é algo muito útil. É prático, seguro e contém, no caso do Helix, a palavra mágica "free". Isso significa que você realmente não precisa de um mega investimento para começar sua vida de Investigador Forense Computacional. Entretanto, tudo na vida tem um preço, mesmo quando se trata de coisas "free". Na maioria das vezes, no caso de softwares, o preço é não contar com atualizações constantes ou um suporte adequado.


O Helix tem um fórum bem interessante que pode ajudar, e em geral nossos questionamentos vão estar mais ligados nas ferramentas que o Helix disponibiliza do que propriamente em algo dele. Ainda assim, o fórum é razoável. Já tive perguntas respondidas em alguns poucos dias e já tive perguntas que nunca receberam resposta. O pior, com relação ao preço a se pagar, não é isso. Como o Helix não tem uma equipe trabalhando em tempo integral, as atualizações demoram um bocado. Em geral, são anuais. A versão atual, 1.9a, é de julho de 2007 e a anterior era de outubro de 2006. Em resumo, as novas versões dos utilitários e ferramentas são disponibilizadas com mais frequência, e ficamos um tempão sem elas. Daí, vem a pergunta: Está cansado de esperar pela nova versão do seu Live CD preferido ????


Seus problemas acabaram !!!


Vamos discutir neste artigo algumas técnicas para atualizar suas ferramentas sem depender da turma do live cd.


Atualizando o Helix - Parte Windows


Como comentei anteriormente, o Helix disponibiliza uma parte do CD para ser usada em uma operação de Resposta a Incidentes (ou até mesmo em uma Live Response). Nesse caso, para atualizar seu grupo de ferramentas, temos duas situações e duas opções de abordagem.


Situação 1 - Vamos incluir um produto que não está disponível no Helix;

Situação 2 - Vamos atualizar (fazer um upgrade) a versão da ferramenta disponível.


As duas opções de abordagem são:


Opção a) Tudo que for atualizado ficará em um pen drive;

Opção b) Tudo que for atualizado será implementado direto no CD.


IMPORTANTE: Sempre verifique os detalhes de licenciamento da ferramenta que você está atualizando. Algumas só podem ser livremente usadas em determinadas condições. Outras dependem de um registro prévio que libera funcionalidades.

A opção a) é mais fácil. Ela consiste em manter um pen drive com os programas devidamente instalados, e prontos para serem usados em um caso de Incident Response, junto com as demais ferramentas do Helix. Entretanto, como ponto negativo, ela insere alterações no sistema sendo analisado. Quando o investigador inserir o seu pen drive, o registry criará uma chave contendo alguns dados relativos a esse pen drive. Se você optar por essa técnica, recomendo verificar esses dados criados na chave LocalMachine/System/CurrentControlSet/Enum/USBSTOR do registry e indicar todas essas informações nos seus procedimentos. Dessa forma, com a alteração devidamente documentada, não há problemas. Fazer isso seria semelhante a tomar as impressões digitais de uma pessoa que entrou em uma cena de crime para socorrer uma vítima. De acordo com o Princípio da Troca de Locard, essa pessoa introduziu modificações na cena e elas precisam estar previstas de forma a serem isoladas.

Um dos problemas da opção a) é que, sendo o pen drive uma mídia com possibilidade de escrita, você o expõe a softwares maliciosos instalados na máquina sendo tratada. Nesse caso, não tem muito jeito, o melhor seria adaptar um USB Write Blocker e ficar tranquilo. Só lembrando, esse pen drive não conseguiria ser usado para coletar nada, já que o Write Blocker não deixará nada ser gravado nele.

A opção b) é um pouco mais complicada, e envolve o uso de um software comercial (eu procurei bastante uma opção free, mas não achei). Apesar disso, você estará usando diretamente a partir do CD, o que o deixará despreocupado em relação aos problemas da opção a).


Não importando qual das opções você escolher, tenha sempre em mente:


1) Mantenha uma cópia do arquivo .iso original do Helix;

2) Crie seu próprio label de versionamento, de forma que você identifique corretamente o cd que está trabalhando;
Por exemplo, a versão atual do Helix é a 1.9a. Criei algo como 1.9aTR1, significando que é a minha primeira alteração do Helix 1.9a. Logicamente, esse ponto é válido para a nossa opção b), apenas.

3) Monte um ChangeLog bastante rígido;
Um ChangeLog é um arquivo onde você indica todas as modificações feitas naquela versão. Isso é muito importante porque você vai precisar de algo para comparar quando a próxima versão do seu Live CD for lançada.

4) Atualize seu inventário de ferramentas e o hashset delas.
É importantíssimo para um Perito manter um inventário de todas as ferramentas que ele usa, suas respectivas versões/releases e seus hashes. Isso sempre deve ser incluído como um dos anexos do relatório/parecer do Perito. É dessa forma que você poderá evitar questionamentos como:

- A ferramenta usada possui publicada uma falha exatamente no item sendo analisado. Como os resultados obtidos através dela podem ser dignos de crédito ?

- Como pode ser garantido que o programa usado não foi adulterado para exibir um resultado que mais convém ?

Identificando correntamente as versões de todas as ferramentas usadas e adicionando os seus respectivos hashes à documentação mantém os questionamentos acima respondidos de acordo. Esse tipo de inventário e seus hashes são fornecidos pelo Helix. Você deverá atualizá-los sempre que gerar uma nova versão particular do Live CD.


Agora vamos a prática.


Uma ferramenta bastante interessante para investigações diretamente no Windows é o WFA, e ele não está presente na parte Windows do Helix.


O WFA reúne visualizações de alguns itens importantes do Windows, incluindo arquivos thumbs.db e os arquivos do Recycle bin. Não vou entrar em muitos detalhes de como fazer em relação a opção a), já que basta copiar o utilitário para um diretório e ele estará pronto para ser usado. Vamos falar um pouco mais da opção b).

Adicionando uma nova ferramenta ao CD do Helix


1) Faça uma cópia do arquivo .iso da última versão disponível do Helix. Nomeie o novo arquivo .iso adicionando o seu código de versionamento. No exemplo que dei acima, ficaria Helix_V1.9-07-13a-2007-TR1.iso


2) Compre um ISO Editor (é, isso mesmo, compre ... Não consegui achar nenhum software free que fizesse edição de arquivos .iso. Se você souber de algum, indique nos comentários, por favor). Dos que eu verifiquei, o Iso Commander é um dos melhores e mais simples de serem usados. Faça o download e a instalação do mesmo.


3) Crie um diretório chamado MiTec logo abaixo do diretório IR, que está na raiz do CD. MiTec é o fabricante do WFA.

4) Copie para lá o WFA.exe.

5) Salve o trabalho. Seu .iso está pronto para ser gravado em um CD.

Note que estamos falando da situação 1 descrita lá em cima, que é adicionar um novo programa ao CD. Entretanto, para a situação 2, basta fazer os mesmos passos, jogando o novo utilitário no mesmo diretório onde está a versão a ser substituída.

Viu como é simples ? O mais trabalhoso acaba sendo manter a documentação toda atualizada.

No artigo seguinte, iremos explorar atualizações no lado Linux do Helix.

Até o próximo post !

quarta-feira, 9 de junho de 2010

Um pouco de filosofia

Estava lendo a notícia da prisão do cracker que tentou extorquir dinheiro de um banco. Há algumas lições aprendidas nesse assunto e algumas delas batem com o que conversei com uma animada turma durante o almoço no YSTS. Estávamos exatamente falando de crime perfeito e a falsa idéia de que é possível dominar técnicas avançadas de anti-forense de tal forma que se consiga eliminar todos os rastros. Algumas coisas que penso sobre isso:

- O Princípio de Locard é uma grande verdade. Você pode apagar todos os vestígios, mas haverá vestígios dessa sua ação de anti-forense, e isso por si só já pode ser usado;

- O atacante não está, em geral, com domínio total do ambiente atacado. Ele pode estar há anos trabalhando no local e desconhecer algum detalhe que vai deixar rastros na sua tentativa de explorar uma falha ou invadir algo. Em geral, o atacante domina um servidor ou grupos, mas pode não conseguir determinar o grau de monitoramento que há no ambiente, e isso acabar colhendo vestígios que levarão até ele;

- No fim das contas, não há crime perfeito (felizmente) porque as pessoas que o cometem ou o planejam são imperfeitas. Sempre pode acontecer um imprevisto que deixe o vestígio (ou grupo deles) e os rastros do que foi feito;

- Há, além disso, o questão do elo mais fraco. Sempre se falou no elo mais fraco da segurança ser pessoas, inclusive isso é a frase de entrada em muitos artigos e apresentações sobre Engenharia Social. Muito bem, felizmente o elo mais fraco também está presente no atacante. Esse acontecimento mostra como um tecnicamente muito bom e preparado cracker caiu depois de uma atitude bem estúpida, impensável para muitos. Além disso, crime é crime. Se começou no âmbito virtual, não quer dizer que só vamos dispor de técnicas de Forense Computacional para pegar o suspeito. Como nesse caso, em algum momento o atacante vai deixar um rastro que o ligue à ação.


Além dessas reflexões interessantes, vou ampliar o nosso "momento filosofia" do blog para comentar alguns outros pontos.

Será que já não era hora de colocarmos nos currículos escolares assuntos sobre ética na informática ? Esse rapaz acusado de extorsão tem apenas 24 anos e é a segunda passagem pela polícia. Pelo que consta, aos 21 ele já esteve em outro incidente parecido, onde fez um acordo com um banco e respondeu o processo em liberdade.

A sede de conhecimento da adolescencia, aliada ao acesso à tecnologia que temos hoje, pode criar um ambiente sem controle que produza jovens altamente qualificados tecnicamente, mas que não transferiram os bons conselhos dos pais e avós para os meios digitais. Jovens que seriam incapazes de morder uma fruta em um supermercado, mas que entram em bancos e desviam fundos como se fosse brincadeira sem nenhuma consequencia.

Outro ponto importante é sobre a formação e produção nacional na área de Perícia Forense. Continuo insistindo nisso porque dizem que o Brasil possui os melhores hackers (entenda-se crackers) do mundo. Se isso é assim mesmo, precisamos urgentemente de também formar os melhores peritos do mundo. Caso contrário, não haverá equilíbrio nessa balança, e todo mundo vai sair perdendo.

Perguntas para se refletir: Como Forense Computacional está sendo ensinado nas nossas academias de formação de policiais ? E de Peritos ? E de oficiais das Forças Armadas ? E da área de Inteligencia ? Isso me lembra que perito não se forma rápido. Não dá para sair da faculdade e ser perito, pois na maioria das vezes, o conhecimento adquirido nas áreas de TI é fundamental. Vale o mesmo para os especialistas em Segurança de Informações, os white hackers.

Precisamos formar agora aqueles que vão defender digitalmente a nossa nação nas próximas décadas.

Comentários ?

Até o próximo post !