Análise Forense
• O que é, formalmente?
– “Uma abordagem metodológica para a
apreensão e preservação de informação e
obtenção de provas informáticas para
incriminação legal”
– “Ciência de encontrar, recolher, analisar e
preservar registos informáticos que sejam
admissíveis em tribunal ou outros ambientes
legais”
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• Quem é o analista forense informático, então?
– Um investigador que, no âmbito informático,
desempenha as mesmas funções de um detective
clássico
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• A quem interessam os serviços de um
analista forense?
–
–
–
–
Investigadores Criminais
Companhias de Seguros
Empresas em geral
Indivíduos em geral
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• “Quando se procura algo específico, as hipóteses
de o encontrar são reduzidas. De todas as coisas
do mundo, estar-se-á à procura de apenas uma
delas. Quando não se procurar rigorosamente
nada, a probabilidade de encontrar algo será
muito mais elevada. De todas as coisas do
mundo, encontrar-se-á certamente algumas.”
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• Anti-análise forense
– Desenvolve métodos de resistência à análise
forense...
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• Anti-análise forense? Aqui?!!
– A melhor forma de se apanhar um criminoso é
conseguindo pensar da mesma forma que ele.
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• Honey Pots (um pequeno parêntesis…)
– Muito úteis para perceber formas típicas de
actuação do “lado inimigo”
• honeyd
• VMware
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• Honey Pots – honeyd
• create windows
• set windows personality "Windows NT 4.0 Server SP5SP6"
• set windows default tcp action reset
• set windows default udp action reset
• add windows tcp port 80 "perl scripts/iis-0.95/iisemul8.pl"
• add windows tcp port 139 open
• add windows tcp port 137 open
• add windows udp port 137 open add windows udp port
135 open
• set windows uptime 3284460
•Análise
bind
192.168.1.101 windows
Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• Honey Pots – honeyd
•
•
•
•
•
•
•
•
•
create linux
set linux personality "Linux 2.4.16 - 2.4.18"
set linux default tcp action reset
set linux default udp action reset
add linux tcp port 110 "sh scripts/pop3.sh"
add linux tcp port 25 "sh scripts/smtp.sh"
add linux tcp port 21 "sh scripts/ftp.sh"
set linux uptime 3284460
bind 192.168.1.102 linux
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• Honey Pots – honeyd
• create router
• set router personality "Cisco IOS 11.3 12.0(11)"
• set router default tcp action reset
• set router default udp action reset
• add router tcp port 23 "/usr/bin/perl
scripts/router-telnet.pl"
• set router uid 32767 gid 32767
• set router uptime 1327650
• bind
Análise
Forense192.168.1.104 router
António José Marques/Luis Miguel Silva
2003
Análise Forense
• Tipos clássicos de “criminosos”
– Script Kiddies
– Crackers
– Hackers
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• A integridade do seu sistema foi
comprometida!!
• Foi chamado o Analista
Forense…e… a sua primeira
preocupação é…
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• Capturar uma imagem do
sistema, na sua globalidade, tão
livre quanto o possível de
distorções e lacunas
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• Mas:
–As ferramentas do sistema serão
de confiança?
–Será preferível manter ligado, ou
desligar o sistema da rede?
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• O que acontece quando se executa um comando?
– Shell (inc. variáveis de ambiente)
– Comando, propriamente dito
– Bibliotecas dinâmicas
– Drivers de dispositivos
– Kernel
– Controladores
– Hardware
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• Solução:
– Tipicamente, é preferível utilizar um “kit pessoal”
– Composição do kit:
• Colecção de ferramentas compiladas
estaticamente (dd, cp,cat, ls, …)
• Formas alternativas de obter ferramentas
adicionais
• Ferramentas específicas
– TCT – “The Coroners Toolkit”
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• E depois? Dever-se-á fazer a análise sobre o original,
ou sobre uma cópia?
– Nem tudo pode ser feito sobre cópias
– Não trabalhando sobre o sistema real, podem ser
perdidos alguns aspectos
– Ao trabalhar sobre o original, podem ser destruídos
aspectos igualmente importantes
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• Genericamente, poder-se-á considerar:
– Desligar o sistema da rede (caso se aplique)
– NÃO DESLIGAR A ALIMENTAÇÃO!!
– Tentar a cópia integral do sistema, respeitando a
ordem de volatilidade
– Não ceder à tentação de tentar analisar
imediatamente
– Registar todas as operações efectuadas
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• Cópia de conteúdos em RAM:
– #dd</dev/kmem>kmem.save
• Cópia simples de ficheiros via rede:
– #cat file|nc –w 3 to 1234
– #nc –p 1234 –l>file.save
• Genericamente, o dd é nosso amigo!!
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• Guardar estado de canais de comunicação
–
–
–
–
–
netstat
route
Arp
ifconfig
Informação de kernel
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• Processos
–
–
–
–
ps
/proc
Lsof
netstat
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• Outros
–
–
–
–
rpm
Patches
Portscans
Configuração de kernel
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• E então…
– Congelar o sistema, se for caso disso…
• Power Management!
• Ou…
– Passemos à acção!
• Utilização de toolkits para procura de rastos mal
apagados
• Se existir no sistema um IDS (Intrusion Detection
System), podem verificar-se assinaturas na procura de
ficheiros alterados, criados ou eliminados
Análise Forense
António José Marques/Luis Miguel Silva
2003
Anti-análise Forense
• Anti-análise forense (novamente…)
– Analisando as formas de actuação dos analistas
forenses, observam-se falhas e tenta-se conseguir
formas de as contornar!
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• Os analistas forenses tentam encontrar
informação
– Os atacantes têm necessidade de esconder
informação
• Rootkits
• Logs de um sniffer
• Outra informação diversa
Análise Forense
António José Marques/Luis Miguel Silva
2003
Anti-análise Forense
• Como esconder essa informação?
– Em pequenos espaços que existam livres, dentro
ou fora do sistema de ficheiros
• Espaço fora de partições
• Sectores marcados como livres
• Slack Space
Análise Forense
António José Marques/Luis Miguel Silva
2003
Anti-análise Forense
• Como esconder essa informação?
– Em pequenos espaços que existam livres, dentro
ou fora do sistema de ficheiros
• Espaço fora de partições
• Sectores marcados como livres
• Slack Space
Análise Forense
António José Marques/Luis Miguel Silva
2003
Anti-análise Forense
• Como esconder essa informação?
– SlackSpace
• Ext2
– blocos de 4KB
• FAT32
–
–
–
–
<= 260 MB 4 KB
<= 8 GB 8 KB
<= 60 GB 16 KB
<= 2 TB 32 KB
• NTFS
– Entre 512 bytes (<=512MB) e 64 Kbytes (>32GB)
Análise Forense
António José Marques/Luis Miguel Silva
2003
Anti-análise Forense
• Como esconder essa informação (2)?
– Utilizando recursos pouco conhecidos
• ADS (em NTFS)
Análise Forense
António José Marques/Luis Miguel Silva
2003
Anti-análise Forense
• Como esconder essa informação (3)?
– Se não for mais necessária, eliminando-a
convenientemente
• “TDT – The Defilers Toolkit”
– necrofile
– klismafile
Análise Forense
António José Marques/Luis Miguel Silva
2003
Anti-análise Forense
• Como esconder essa informação (3)?
– Se não for mais necessária, eliminando-a
convenientemente
Análise Forense
António José Marques/Luis Miguel Silva
2003
Anti-análise Forense
• Como esconder essa informação (3)?
– necrofile (antes)
– [[email protected] root]$ ./ils /dev/hda6
–
class|host|device|start_time
–
ils|XXX|/dev/hda6|1026771982
–
st_ino|st_alloc|st_uid|st_gid|st_mtime|st_atime|st_ctime|st_dtime|st_mode|st_nlink|st_size|st_block0|st_block1
–
12|f|0|0|1026771841|1026771796|1026771958|1026771958|100644|0|86|545|0
–
13|f|0|0|1026771842|1026771796|1026771958|1026771958|100644|0|86|546|0
–
14|f|0|0|1026771842|1026771796|1026771958|1026771958|100644|0|86|547|0
–
15|f|0|0|1026771842|1026771796|1026771958|1026771958|100644|0|86|548|0
–
16|f|0|0|1026771842|1026771796|1026771958|1026771958|100644|0|86|549|0
–
17|f|0|0|1026771842|1026771796|1026771958|1026771958|100644|0|86|550|0
–
...
–
36|f|0|0|1026771842|1026771796|1026771958|1026771958|100644|0|86|569|0
–
37|f|0|0|1026771842|1026771796|1026771958|1026771958|100644|0|86|570|0
– [[email protected] root]$
Análise Forense
António José Marques/Luis Miguel Silva
2003
Anti-análise Forense
• Como esconder essa informação (3)?
– necrofile (durante)
– [[email protected] root]$ ./necrofile -v -v -v -v /dev/hda6
–
Scrubbing device: /dev/hda6
–
12 = m: 0x3d334d4d a: 0x3d334d4d c: 0x3d334d4f d: 0x3d334d4f
–
13 = m: 0x3d334d4d a: 0x3d334d4d c: 0x3d334d4f d: 0x3d334d4f
–
14 = m: 0x3d334d4d a: 0x3d334d4d c: 0x3d334d4f d: 0x3d334d4f
–
15 = m: 0x3d334d4d a: 0x3d334d4d c: 0x3d334d4f d: 0x3d334d4f
–
36 = m: 0x3d334d4d a: 0x3d334d4d c: 0x3d334d4f d: 0x3d334d4f
–
…
–
37 = m: 0x3d334d4d a: 0x3d334d4d c: 0x3d334d4f d: 0x3d334d4f
–
[[email protected] root]$
Análise Forense
António José Marques/Luis Miguel Silva
2003
Anti-análise Forense
• Como esconder essa informação (3)?
– necrofile (depois)
–
[[email protected] root]$ ./ils /dev/hda6
–
class|host|device|start_time
–
ils|XXX|/dev/hda6|1026772140
–
st_ino|st_alloc|st_uid|st_gid|st_mtime|st_atime|st_ctime|st_dtime|st_mode|st_nlink|st_size|st_block0|st_block1
–
[[email protected] root]$
Análise Forense
António José Marques/Luis Miguel Silva
2003
Anti-análise Forense
• Como esconder essa informação (3)?
– klismafile (antes)
– [[email protected] root]$ ./fls -d /dev/hda6 2
– ? * 0: a
– ? * 0: b
– ? * 0: c
– ? * 0: d
– ...
– ? * 0: x
– ? * 0: y
– ? * 0: z
– [[email protected] root]$
Análise Forense
António José Marques/Luis Miguel Silva
2003
Anti-análise Forense
• Como esconder essa informação (3)?
– klismafile (durante)
– [[email protected] root]$ ./klismafile -v /mnt
– Scrubbing device: /dev/hda6
– cleansing /
– -> a
– -> b
– -> c
– ...
– -> y
– -> z
– Total files found:
29
– Directories checked:
1
– Dirents removed :
26
– [[email protected] root]$
Análise Forense
António José Marques/Luis Miguel Silva
2003
Anti-análise Forense
• Como esconder essa informação (3)?
– klismafile (depois)
– [[email protected] root]$ ./fls -d /dev/hda6 2
– [[email protected] root]$
Análise Forense
António José Marques/Luis Miguel Silva
2003
Anti-análise Forense
• Como esconder essa informação (4)?
– Escondendo-a onde menos se pensaria encontrá-la
• Esteganografia
Análise Forense
António José Marques/Luis Miguel Silva
2003
Anti-análise Forense
• Esteganografia
– Deramatus e a comunicação da iminência de uma
invasão (480 AC)
• Tábuas enceradas
Análise Forense
António José Marques/Luis Miguel Silva
2003
Anti-análise Forense
• Esteganografia
– Johannes Trithemius (1462-1516)
• "Steganographia:hoe est ars per occultam scripturam
animi sui voluntatem absentibus aperiendi certa"
• "The bearer of this letter is a rogue and a thief. Guard
yourself against him. He wants to do something to you."
Análise Forense
António José Marques/Luis Miguel Silva
2003
Anti-análise Forense
• Esteganografia
– Mensagem alemã, publicada durante a segunda
guerra mundial:
• “Apparently neutral’s protest is thoroughly
discounted and ignored. Isman hard hit.
Blockade issue affects pretext for embargo on
by-products, ejecting suets and vegetable oils.”
• Pershing sails from NY June I
Análise Forense
António José Marques/Luis Miguel Silva
2003
Anti-análise Forense
• Esteganografia
– Actualmente, aparece frequentemente com a
denominação “watermarking”
– Muito utilizada para copyrights
– Aparece sob os mais diversos disfarces
• Ficheiros multimedia
• Imagem
• Texto
• Outros
Análise Forense
António José Marques/Luis Miguel Silva
2003
Anti-análise Forense
• Esteganografia
• Sob ficheiros de imagem
Análise Forense
António José Marques/Luis Miguel Silva
2003
Anti-análise Forense
• Esteganografia
• Sob ficheiros de imagem
Análise Forense
António José Marques/Luis Miguel Silva
2003
Anti-análise Forense
• Esteganografia
• Sob ficheiros de som
– Modelo Psicoacústico e auditory masking
Análise Forense
António José Marques/Luis Miguel Silva
2003
Anti-análise Forense
• Esteganografia
• Outros
– Codificação em bits de cabeçalhos IP
– Submodulação em canais audio de brodcasts
de televisão e rádio
– Utilizando LSb de uma comunicação
telefónica através de RDIS (DigiStilz)
– Métodos semelhantes em VoIP
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• Novamente??!!!!
– Contra os métodos de eliminação eficaz
de informação, os métodos de
recuperação ainda mais eficazes
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• Contra os métodos de eliminação eficaz de
informação, os métodos de recuperação ainda mais
eficazes
– MFM –Magnetic Force Microscopy
– SPM – Scanning Tunneling Microscopy
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• Bits na superfície de um disco rígido??!!!
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• Bits na superfície de um DVD-RW??!!!
Análise Forense
António José Marques/Luis Miguel Silva
2003
Análise Forense
• Contra os métodos de eliminação eficaz de
informação, os métodos de recuperação ainda mais
eficazes
Análise Forense
António José Marques/Luis Miguel Silva
2003
Download

Seminário na UBI sobre anti-análise forense