segunda-feira, 15 de dezembro de 2008

Táticas para esconder informações

Terminei de ler há alguns dias um artigo muito interessante sobre várias técnicas para obfuscar informações, tanto para Windows quanto para Unix. A maior parte delas envolve o conceito de slack space, ou seja, a sobra de espaço em uma unidade de alocação. No nível de arquivo, o slack space seria a porção de disco não ocupada por um arquivo em um cluster do sistema de arquivo.

Por exemplo, imagine um sistema de arquivos com blocos de 512 bytes. Se você alocar nele um arquivo de 2100 bytes, você vai "encher" 4 blocos de 512 (2048 bytes), e os 52 bytes restantes ocuparão o quinto bloco. Neste bloco, logo após os 52 bytes, o espaço não pode ser alocado, mas está la. Algumas ferramentas mapeiam e usam esse local para guardar informações longe dos olhos dos curiosos.

Um conceito semelhante se aplica quando você particiona um disco, escreve vários dados nos últimos setores e depois deleta a partição, recriando uma nova com menor espaço. Os dados da partição anterior ainda vão estar lá, acessíveis apenas por ferramentas específicas.

Há, na verdade, dezenas de artigos sobre esse assunto, principalmente sobre anti-forensics. O que me chamou atenção neste foi a concentração e boa exposição sobre várias técnicas além de um estudo baseado na capacidade do FTK descobrir os artefatos.

O resultado do estudo foi interessante: O artefato só é identificado quando o investigador sabe o que está procurando. O caso é que todos os artefatos estão presentes na imagem forense da mídia, mas o FTK não reportou como anômalo, por exemplo, o fato de alguns dados estarem escritos em áreas onde só zeros seriam encontrados. Como o artigo é de 2006, talvez hoje já exista algo que identifique isso.

Alguém saberia dizer o comportamento de outras ferramentas neste contexto ? EnCase ? ProDiscover ?

Até que seria interessante um projeto, talvez em Perl, procurando artefatos nesses cantos ... Alguém se habilita ?

Até o próximo post !

5 comentários:

Marcus Vinicius disse...

telvez n tenha mt a ver com o post mas eh o seguinte: numa maquina de um amigo, identifique entradas adulteradas no arquivo C:\WINDOWS\system32\drivers\etc\hosts, basicamente entradas de sites bancarios. o interessante foi qndo tentei abrir a pag do windows update e fui redirecionado para a pag do msn. ferramentas de remoçao de malwares, mbsa etc. nd podia de baixado. como n os tinhas no pendriver naquele momento, n adiantou mt. poderia fazer inumeras coisas como bootar um live-cd com o clamav etc. porem confesso que fiquei intrigado foi com os redirecionamentos de dns e onde estava armazenado estas entradas. eh provavel que esteja no registro, mas onde? obs: a maquina esta isolada de uma rede empresarial. o dns que existe é o do ISP(DSL) e do arquivos hosts. ate onde eu saiba pelo menos. n estou pedindo suporte, porem confesso que fiquei intrigado com isso. leio um livro de forence computacional, mas este n eh especifico do windows e por isso eu n tenha todos os detalhes. talvez um post sobre o assunto ou ate um email eu ficaria grato. =) abrços

Tony Rodrigues disse...

Marcus,

Não sei se entendi direito ... Vc percebeu que o hosts da máquina estava alterado, certo ? Vc checou se alguma alteração dessa tb incluia IPs de Windows Update ? Vc verificou o default gateway ?
Chegou a snifar algum momento do tráfego para ver o que está acontecendo fora da máquina ?
Algumas outras linhas para se verificar: ARP Cache Poisioning e DNS Poisoning.

Manda mais detalhes !

Abração

Marcus Vinicius disse...

entao tony.. o arquivo hosts do windows continha alteraçoes,(entradas alteradas de bancos etc). o problema foi esse..havia alteraçoes no arquivo mas nada referente ao site windows update e ao abrir o site do mesmo eu era redirecionado para outra pagina. o default gw era do provedor(velox) assim como o dns. em relação à ARP Cache Poisioning e DNS Poisoning, pode ate ser, mas nesse caso as alteraçoes estao em algum lugar no registro talvez. A maquina está isolada de uma rede. é uma conexao velox comum, assim os "Poisoning" teriam que ter sido na telemar..nao acredito..acho que as entradas estavam no registro. e infelizmente nao sniffei o trafego na hora.. =( vi que existia um redirecionamento para loopback, impedindo o acesso ao site. a duvida é onde poderia existir entradas de dns no windows, alem do conhecido ..etc\hosts.

thanks =)

Tony Rodrigues disse...

Marcus, snifar a conexão teria sido definitivo para a questão. Vou pesquisar com relação a outros pontos, mas como vc mesmo disse, se a conexão era direta com a web, as chances de poisoning diminuem bastante.
Se eu souber de algo mais, eu posto aqui, ok ?

Abração

Marcus Vinicius disse...

Maravilha. t+