quinta-feira, 31 de julho de 2008

Palestra no Rio de Janeiro

Pessoal,

Estarei ministrando uma palestra sobre Forense Computacional no Rio de Janeiro. Ela vai ser um warm-up para o curso que estamos criando, e está marcada para o dia 4 de agosto, 18h30.

A palestra não tem custos, mas tem número limitado de vagas. Quem estiver interessado: http://www.infnet.com.br/, clique no link do ciclo de palestras gratuitas.

Encontro vocês por lá.

Até o próximo post !

sábado, 19 de julho de 2008

Cena do crime

Estávamos conversando há poucos dias na lista apcf, onde os membros são certificados forenses pela Axur, sobre imagem forense, cadeia de custódia e abordagem da cena do crime. Esse último tópico gera alguma polêmica, tanto pela falta de procedimento formal quanto pela aplicação dos conceitos que já existem, mas em uma situação onde não há crime, há apenas uma investigação. Segue o post do Fábio Ramos e o meu logo depois:

Fábio Ramos
Qualquer software que faça copia bit-a-bit gera uma imagem que tem validade legal. Os princípios que voce deve observar são:

1-) Voce não pode escrever nada no HD source (objeto que está sendo copiado)
2-) O HD que sera usado para análise (a cópia) tem que ter o HASH da sua imagem batendo com o HASH da imagem do source HD

O DD do linux, por exemplo, faz copia bit-a-bit. No mais deixo para o Tony explicar, porque ele é expert nesse assunto.

Geralmente o procedimento consiste no seguinte:

1-) Voce chega na "cena do crime" e com testemunhas, faz a aproximação para que seja gerada uma imagem das memórias que serão investigadas;
2-) Voce retira o HD e coloca em um case, ou em um aparelho que vai fazer a cópia;
3-) Neste momento pode ser importante usar um bloqueador de escrita para garantir que durante o processo de cópia, a memória que esta sendo investigada não recebera nenhum tipo de acesso que possa alterar um bit sequer;
4-) Voce lacra o HD original (que foi copiado). Esse HD deve ficar em custódia de alguém que possa garantir sua preservação. Pode ser um cartório, por exemplo. Isso vai depender também do seu papel no processo, se voce for perito contratado por uma empresa, vai ter mais liberdade, se for perito nomeado, vai ter que seguir todo o ritual, se for perito assistente, vai ter que olhar (e muitas vezes corrigir o perito nomeado :-))

5-) A partir de agora voce só analisa o HD copiado. Recomendo fazer cópias do HD copiado para garantir que caso você comprometa a cópia, nao vai precisar abrir o envelope lacrado do HD original para tirar outra cópia.


Tony Rodrigues:
Uma coisa interessante para se dizer com relação ao porquê de haver essa coisa toda, da liturgia.

A Computação Forense, ou Forense Computacional, é bastante nova, principalmente comparando-se com outras disciplinas Forenses, como a Balística e a Medicina Legal.


Os procedimentos que o Fábio narrou fazem parte da liturgia forense americana, e é aceita em praticamente todo o resto do mundo, como melhores práticas nessa área.

Faz muito sentido ... Você, como policial, mete o pé na porta, grita "Mãos para o alto - POSITIVO OPERANTE (como o casseta&planeta diz :D )" prá todo mundo (lá nos States eles mandam aquele "freeeeze !"), e apreende tudo que encontra pela frente, montando a cadeia de custódia.

No lab, a primeira coisa que o Perito Criminal faz é abrir o lacre, fazer a cópia, relacrar e juntar esse registro na cadeia de custódia. E por aí vai. No processo todo, além dos próprios policiais que irão testemunhar em como a polícia apreendeu e lacrou os computadores, temos vários logs que dão conta de responder a famosa pergunta - "COMO POSSO SABER SE NÃO ESCREVERAM ISSO QUE ME INCRIMINA DEPOIS DE TUDO TER SIDO LEVADO PELA POLÍCIA ??"

Faz sentido, né ? Ou seja, no fim das contas, a liturgia (processo) protege a ação de todos e coopera para a manutenção da integridade das provas eletrônicas.

O grande problema é que no Brasil não há um procedimento formalizado para o que está escrito acima. Além disso, os casos que não são crimes são um capítulo tenebroso, porque é sempre possível levantar suspeitas de que as evidências foram "plantadas". O mais próximo que tenho visto de resolverem isso é:

Empresa X tem uma suspeita qualquer, digamos, um vazamento de informações -> contrata o Investigador Digital John Doe-> Furtivamente, John Doe acessa a máquina e captura os dados que precisa, para analisar. Pode ser no disco ou na rede, através de logs, sniffers, etc -> Na análise, ele localiza evidências que comprovam as suspeitas -> John Doe emite relatório da investigação -> Empresa X demite o suspeito por justa causa -> No mesmo momento em que ele está sendo demitido, a máquina é desligada na presença do tabelião ou seu representante, que vai fazer a Ata Notarial -> O processo segue como descrito acima pelo Fábio, com a aquisição da imagem forense e início da cadeia de custódia.

O mais provável: O ex-funcionário demitido entra na justiça pedindo reversão da justa causa -> O relatório do Investigador passa por uma revisão e vira um Parecer Técnico, que é juntado aos autos do processo trabalhista. O Investigador Digital John Doe passa a atuar como Assistente Técnico.

Durante o julgamento, se houver contraditório (o ex-funcionário reclamar das provas apresentadas), o Juiz vai nomear um Perito para o caso -> Perito vai analisar o lacre, a Ata Notarial, e também vai fazer uma imagem forense -> Tempos depois, o Perito nomeado pelo Juiz emite o Laudo. O Juiz lê o Laudo e decide.

Com o processo acima fica difícil obter base para alegar que mexeram no HD e plantaram as evidências e artefatos. O processo sempre vai apontar testemunhas que garantirão a integridade das evidências. Além disso, dificilmente o Perito e o Investigador Digital acharam apenas um único artefato que comprova o ilícito. Tudo que foi localizado é avaliado e deve corroborar em conjunto para indicar a culpa do ex-funcionário.

O ruim disso é que, como o procedimento é praticamente feito duas vezes, tudo fica mais caro, e nem todo mundo quer fazer assim. Muitas empresas X, Y e Z tentam fazer mais rápido e vão para o risco, caso alguém alegue que a prova não é verdadeira ou não é íntegra.

Comentários ? Compartilhe suas experiências de como conduziu uma situação parecida.

Até o próximo post !

sexta-feira, 18 de julho de 2008

Nova versão do PTK disponível

Está disponibilizado desde ontem a mais nova versão do PTK.

Entre as melhorias, está a capacidade de busca por strings (palavras-chave) de maneira indexada ou "live", incluindo buscas em áreas não alocadas do disco e no slack space. A instalação foi melhorada e agora está ainda mais fácil de fazê-la.

Para baixar, clique aqui

Até o próximo post !

sábado, 5 de julho de 2008

Resposta a Incidentes II

No nosso último post sobre esse assunto, comentamos aspectos gerais de Resposta a Incidentes e do trabalho dos First Responders, os verdadeiros brigadistas digitais.

Vamos falar agora um pouco mais sobre as ferramentas disponíveis no Helix e realizar uma comparação entre as ferramentas.


WFT
O WFT automatiza a execução de um grupo de comandos e utilitários para capturar o maior número possível de informações voláteis de um computador envolvido em um incidente de segurança de informações. Ele carrega a lista de execução a partir de um arquivo de configurações, e armazena o resultado de cada um localmente ou remotamente, em um drive compartilhado.


FSP




O FSP (Forensic Server Project) tem arquitetura cliente-servidor. Um executável-servidor (fspc) roda em no computador que receberá todos os resultados das informações capturadas. O executável-cliente, fruc, roda na estação comprometida e executa comandos e utilitários configurados em um arquivo .ini. É possível, embora não recomendável, executar o fspc e o fruc na mesma máquina.


IRCR2

A principal diferença do IRCR2 é que ele é um script DOS, ao invés de um arquivo compilado. Para alterar qualquer utilitário a ser executado, é preciso localizar a linha e alterar diretamente no código. É possível enviar o resultado da coleta (os dados) para uma máquina remota, via NetCat.

Comparando ...
Quais são as ferramentas e utilitários que cada um tem pré-configurado ?

UtilitárioWFTFSPIRCR2
Lista tarefas agendadas at e schtasksat
Lista últimos comandos no DOSdoskeydoskey
Lista configurações de TCP/IPipconfigipconfigipconfig
Informa a memória livre/ocupadamemmem
Lista diversas informações de redenetnet
Lista informações de conexões TCP/IPnetstatnetstatnetstat
Lista a tabela de rotasrouteroute
Lista informações do SOuname e hostnameunamesysteminfo
Lista informações do ARParparp
Lista o Audit Policyauditpolauditpolauditpol
Lista valores de chaves do registroregreg
Lista portas abertas e suas respectivas aplicaçõesfport e openportsfport e openportsfport
Informações sobre Null sessionshunthunt
Informações sobre o Netbiosnbtstatnbtstat
Exibe informações de login/logoutntlastntlast
Lista o conteúdo do Clipboardpclippclippclip
Lista todos os processos e as DLLs que estão associadasprocinterrogateprocinterrogate
Lista os processos correntesps, tlist, tasklisttlistps
Exibe os arquivos abertos remotamentepsfilepsfile
Lista informações sobre o sistemapsinfopsinfopsinfo
Lista informações detalhadas dos processospslistpslistpslist
Lista usuários logado na quinapsloggedon e netuserspsloggedonpsloggedon
Lista informações sobre os serviçospsservicepsservice
Lista processos em execuçãopulistpulist
Lista informações sobre os serviços que estão sendo executadosservicelistservicelist
Faz um dump do event logdumpel e psloglistpsloglistdumpel
Detecta se a placa de rede está em modo promiscuopromiscdetectpromiscdetect
Lista conteúdo do diretóriodirls
Lista URLs recentemente visitadasiehviehv
Lista USB devices conectados usbdview
Exporta History.dat do Mozilladork
Informa há quanto tempo a máquina está ligadauptimeuptime
Lista os processos com inicialização automáticaautorunscautorunsc
Lista strings nos arquivosstringsfind
Lista MAC timesmac
Lista o usuário correntewhoami
Lista todas as DLLs carregadaslistdlls
Lista as threads executando e o statuspstat
Lista os processos e seus arquivos abertoshandle
Lista informações dos serviços sendo executadossc
Lista informações dos drivers instaladosdrivers
Lista as interfaces IPiplist
Lista a tabela de rotas IPX ipxroute
Detecta se WinPCap está presentendis
Lista informações sobre o sistema NTFSntfsinfo
Localiza arquivos hiddenhfind
Localiza e lista Alternate Data Streamsstreams e sfind
Lista informações do EFSefsinfo
Lista o espaço disponível em um drivefreespace
Informações de Group Policiesgplist
Lista efeitos da Group Policy e usuários que logaram na máquinagpresult
Faz dump do Registryregdmp
Lista o conteúdo do Protect storagepstoreview
Verifica a existência de um driver de modemmdm
Busca por rootkitsrootkitrevealer




Comentários e experiências ? Conte-nos qual a sua preferência, e porquê.

Até o próximo post !