an lisis forense n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Análisis Forense PowerPoint Presentation
Download Presentation
Análisis Forense

Loading in 2 Seconds...

play fullscreen
1 / 89

Análisis Forense - PowerPoint PPT Presentation


  • 219 Views
  • Uploaded on

Análisis Forense. Prof. Reinaldo Mayol . Conceptos Iniciales. Parte 1. ¿Qué es el Análisis Forense?. Es un proceso, metodológicamente guiado , que involucra los siguientes elementos, referidos a los datos de un sistema computacional: Preservación Identificación Extracción Documentación

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Análisis Forense' - julius


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
an lisis forense

Análisis Forense

Prof. Reinaldo Mayol

qu es el an lisis forense
¿Qué es el Análisis Forense?
  • Es un proceso, metodológicamente guiado, que involucra los siguientes elementos, referidos a los datos de un sistema computacional:
        • Preservación
        • Identificación
        • Extracción
        • Documentación
        • Interpretación
ciclo de vida del an lisis forense
Ciclo de Vida del Análisis Forense

HB171:2003 Handbook Guidelines for

the management of IT Evidence.]

manipulaci n de la evidencia
Manipulación de la Evidencia
  • Si no se toman las medidas adecuadas para la manipulación de la evidencia esta puede perderse o resultar inaceptable como prueba.
manipulaci n de la evidencia1
Manipulación de la Evidencia
  • Uno de los elementos que se utilizan son las Cadenas de Custodia
  • Una adecuada Cadena de Confianza debe responder, para cada evidencia, las siguientes interrogantes:
    • ¿Quién colectó la evidencia?
    • ¿Cómo y donde fue colectada?
    • ¿Quiénes tuvieron posesión y acceso a la evidencia?
    • ¿Cómo fue almacenada y protegida?
    • ¿Quién la ha manipulado?
autentificaci n de la evidencia
Autentificación de la Evidencia
  • El objetivo de este paso es proveer un mecanismo que garantice la evidencia colectada no pueda ser modificada o sustituida sin que el investigador pueda notarlo.
  • Por lo general, se recomienda utilizar algoritmos de HASH (SHA2!!!!!) capaces de crear un hash de la evidencia que garantice su integridad.
  • Se puede firmar digitalmente el hash de cada evidencia garantizando de esta forma que la misma no pueda ser sustituida.
caracter sticas de la evidencia forense digital
Características de la evidencia forense digital
  • Si alguien intenta destruir las evidencias, podemos tener copias igual de válidas lejos del alcance del criminal.
  • El proceso de autenticación siempre siembra dudas sobre la veracidad de la prueba.
  • Adquirir una copia de la evidencia puede ser un proceso difícil y delicado.
  • Las pruebas pueden ser modificadas incluso durante su recolección.
caracter sticas de la evidencia forense digital1
Características de la evidencia forense digital
  • No solo hay que validar las copias sino incluso el momento en que se realizan.
  • La autentificación de la evidencia requiere mecanismos externos como: certificados digitales, autoridades de certificación y cadenas de certificación acordes a las leyes de un país o incluso de una organización.
caracter sticas de la evidencia forense digital2
Características de la evidencia forense digital
  • Pueden ser duplicadas de forma exacta y la copia puede examinarse como si fuera el original.
  • Con las herramientas adecuadas “es muy fácil” determinar si la evidencia ha sido modificada o falsificada comparándola con la original.
  • Es relativamente difícil de destruir, incluso borrándola, la evidencia digital puede ser recuperada de un disco.
organizaci n de los datos
Organización de los Datos

Los SO agrupan varios sectores consecutivos

  • FAT, NTFS: Clusters
  • EXT? (*nix): Blocks

1 sector: Aprox. 512 bytes

particiones dos
Particiones DOS
  • Las particiones tipo DOS se utilizan en la mayoría de los sistemas operativos, incluyendo Linux.

Imagen tomada de: CarrierB. F.S ForensicAnalysis, 2005. modificada por R.Mayol

Sólo 4 entradas

particiones extendidas e p
Particiones Extendidas (E. P)

MBR PartitionTable

  • Con 4 entradas solamente no es posible cubrir las necesidades de los sistemas modernos.
  • Una partición extendida contiene una segunda tabla de particiones y puede describir 2 particiones. ( una para el F. S y otra para otra E.P)

ExtendedPartitionTable

Imagen tomada de: CarrierB. F.S ForensicAnalysis, 2005. modificada por R.Mayol

continuaci n
Continuación

Termina: Sector F8(248) cilindro FF

La partición inicia 56 sectores desde el inicio de la tabla

Partición activa

Sector 1, Cilindro 0

Partición NTFS

80 01 01 00 07 FE F8 FF38 00 00 00

10 B3 FF 04 00 00 00 00 00 00 00 00

00 00 00 00 00 00 00 00 00 00 00 00

00 00 00 00 00 00 00 00 00 00 00 00

00 00 00 00 00 00 00 00 00 00 00 00

00 00 00 00 55 AA

83866384 Sectores * 512B= 40GB

Fin de la Tabla de Particiones

slack space
SlackSpace
  • La unidad mínima de direccionamiento son los clusters.
  • El S.O no puede direccionar sino clusters.
  • Si un archivo es menor que el tamaño del cluster el espacio sobrante se pierde.
  • Este espacio es interesante, desde el punto de vista forense, ya que normalmente puede contener datos de otros archivos que utilizaron anteriormente el cluster.
slide29

NTFS

New Technologies File System

sistema de archivos de ntfs
Sistema de Archivos de NTFS
  • Durante la creación del volumen es creado el Master File Table (MFT), además de otros archivos de control.
  • Existe una entrada de 1KB en la MFT por cada archivo o directorio en el volumen.
  • El archivo $MFT contiene la MFT. Existe una copia llamada $MFTMirr
  • Una entrada MFT tiene una pequeña cabecera fija (42 bytes, 12 campos) y el resto son atributos no previamente definidos.
sistema de archivos ntfs cont
Sistema de Archivos NTFS cont..
  • La localización del MFT está definido en el Boot Sector del F.S
  • Un MFT almacena los atributos de los archivos y subdirectorios incluyendo el nombre, MAC, permisos, flags de estado, entre otros.
  • Si un archivo no puede contener todos sus atributos en una sóla entrada utiliza entradas consecutivas.
  • Adicionalmente el MFT almacena parte ( o su totalidad) de la data (dependiendo del tamaño del archivo, menor a 1500Bytes)
boot sector partici n ntfs
Boot Sector Partición NTFS

Boot Sector

Cluster: Grupo de Sectores Consecutivos.

estructura del mft
Estructura del $MFT
  • Cada entrada al MFT es direccionada usando un valor de 48 bits, comenzando por 0.
  • Cada entrada MFT tiene también un número de secuencia de 16 bits que es incrementado cuando la entrada es utilizada. Este número nunca es decrementado.
  • Combinando ambos valores se forma una dirección de 64 bits (llamada File Reference)
  • El uso del File Reference permite determinar en algunas ocasiones cuando el FS está corrupto.
estructura mft
Estructura $MFT
  • Formalmente las primeras 16 entradas ( en la práctica 24) son para localizar los archivos de metadata del F. S
  • Los archivos de metadata se encuentran en la raiz del F. S y comienzan por $
entradas mft
Entradas MFT
  • Cada entrada es secuencialmente numerada usando un valor de 48 bits.
  • Cada entrada tiene además un número de Secuencia de 16 bits que es incrementado cuando la entrada es localizada.
  • Ambos valores se combinan para formar un valor de 64 bits que se utiliza como reverenciador de los archivos.
entradas mft ejemplo
Entradas MFT ( Ejemplo)

Header MFT

Atributos

Entrada MFT

  • Atribute Header:
  • Tipo
  • Tamaño
  • Nombre

Atribute Header

Espacio no utilizado

Header MFT

$STANDARD_INFORMATION

$FILE_NAME

$DATA

STANDARD_INFORMATION

formato simplificado de una entrada a la mft
Formato Simplificado de una ENTRADA a la MFT
  • Para un archivo:
    • Header
    • $FILE_NAME(48)
    • $ STANDART_INFORMATION(16)
    • $DATA(128)
  • Para un subdirectorio:
    • Header
    • $INDEX_ROOT
    • $INDEX_ALLOCATION
slide42
Ext
  • El F.S comienza con un área reservada y el resto está dividido en sectores llamados grupos de bloques.
  • Todos los grupos de bloques, excepto el último contienen la misma cantidad de bloques.
  • Un bloque es un conjunto de sectores consecutivos(1024,2048,4096 bytes)
  • La información de la estructura del F.S es almacenada en una estructura llamada SuperBlockla cual se encuentra localizada el inicio del F.S
  • Los metadatos de cada archivo o directorio son almacenados en estructuras llamadas inodos
ext cont
Ext cont…
  • Los inodos tienen tamaño fijo, por omisión 128 bytes ( 1024 bits)
  • Existe un inodo por cada archivo o directorio existente
  • Existe una tabla de inodos para cada grupo de bloques.
  • Los primeros 10 inodos tienen funciones fijas y están siempre localizados. El inodo 11 se utiliza para el subdlost +found
  • Los nombres de archivos son almacenados en las entradas de los directorios que los contienen.
  • Esas entradas de directorio son estructuras simples que contienen el nombre de los archivos y un puntero al inodo correspondiente.
inodos
Inodos
  • Cada inodo tiene un número fijo de campos .
  • Un inodo contiene:
    • Tamaño de los archivos ( 64bits => tamaño máximo es 1,84467440737096 1019)
    • Dueños (utilizando el UID y GDI de /etc/passwdy /etc/groups)
    • Información temporal ( último acceso, modificación, borrado, cambio de la metadata)
    • Permisos
    • Tipo de archivos
    • Los tiempos son almacenados en la cantidad de segunsos desde 1ro Enero 1970.
  • Los tiempos son almacenados en la cantidad de segunsos desde 1ro Enero 1970.
inodos1
Inodos
  • Cada inodo puede almacenar las direcciones de los primeros 12 bloques de un archivo. (bloques directos)
  • Si un archivo requiere mas de 12 bloques se localiza un bloque para almacenar los punteros a otros bloques( bloques indirectos)
entradas de directorio inodos y bloques de datos
Entradas de directorio, inodos y bloques de datos

Metadata

Metadata

Metadata

archivo1

Metadata

Metadata

Metadata

Entradas de

Directorio

Inodos

Bloques de Contenido

ext cont1
Ext cont…
  • Ext tiene un grupo de opciones organizadas en 3 categorías basadas en que debe hacer el sistema operativo si alguna de ellas no es soportada.
    • Las opciones compatibles son aquellas que pueden ser ignoradas por el S.O que monta un F. S incluso si no las soporta. EJ. Journals
    • Las opciones incompatibles si no son soportadas el F. S no será montado. Ej. Cifrado
    • Las compatibles de solo lectura implican que el F. S será montado pero solo en modo Read-Only. Ej. Estructuras en arbol en lugar de listas.
superblock y descriptor de bloques
Superblock y Descriptor de Bloques
  • El Superblock es localizado al inicio del F. S ocupando los primeros 1024 bytes ( aunque utiliza sólo unos pocos)
  • Contiene la estructura del F. S ( similar al BootSector en NTFS) y de configuración.
  • Copias de respaldo pueden ser encontradas en el primer bloque de cada grupo de bloques.
  • Información contenida:
    • Tamaño de los bloques
    • Número total de bloques por grupo de bloques
    • Número de bloques reservados antes del primer grupo de bloques.
superblock y descriptor de bloques1
Superblock y Descriptor de Bloques
  • También puede incluir:
    • Nombre del volumen
    • Fechas de montaje y escritura
    • Sitio del último montaje
    • Consistencia del F. S
    • Número total de inodos y bloques disponibles
    • Opciones habilitadas.
superblock y descriptor de bloques2
Superblock y Descriptor de Bloques
  • En Linux una opción llamada SparseSuperblock está siempre habilitada y hace que sólo algunos grupos de bloques contengan copias del Superblock.
  • El Superblock tiene una firma ( 0xef53) en los bytes 56 y 57, desafortunadamente es demasiado pequeña y buscarla conduce a gran cantidad de falsos positivos
buscando la firma
Buscando la firma..

root@bt:~# sigfind -o 56 -l ef53 /dev/sda1

Block size: 512 Offset: 56 Signature: 53EF

Block: 2 (-)

Block: 262144 (+262142) Otrasapariciones

Block: 346505 (+84361)

Primera aparición de la firma

tabla de descriptores de grupos de bloque
Tabla de Descriptores de grupos de bloque
  • En el bloque siguiente del superblock se encuentra la tabla descriptora de grupos de bloque.
  • Comúnmente existe copias de tabla en los bloques de grupo ( ver figura inferior)
  • Un F.S en linux tiene igual número de bloques por grupo que bits en un block. Por lo tanto el BlockBitmap requiere un bloque.

Backup

SuperB.

Tabla desc.

De grupos

Block

Bitmap

InodeBitmap

Tabla de Inodos

Datos

Datos

estructuras ext superblock selecci n de campos cont
Estructuras Ext: SuperBlock (selección de campos) cont..

RECUERDE QUE EL SUPERBLOCK OCUPA 1024 BYTES

Recuerde que esta no es la tabla entera de los campos del Superblock.

Puede ver la descripción entera en: Daniel Robbins (2001-12-01). Advannced filesystem

implementor's guide, Part 8.

una mirada al superblock
Una mirada al SuperBlock

1- Recuerde que los primeros 1024B está reservados al BootCode, por lo tanto el SB debe comenzar en el bit 1024 (0x400).

2-Los bytes 0-3 informan el número de inodos 0000EB00=60160 inodos

3-Los bytes del 4-7 informan el número de bloques=240254 bloques

4- Los bytes 56-57 (0x38) contienen la firma 0xef53

tabla descriptora de grupos
Tabla descriptora de grupos
  • Tiene una entrada por cada grupo de bloques existente en el F. S
  • Comienza en el segundo bloque
cuando se crea un archivo
Cuando se crea un archivo
  • El SO debe utilizar un inodo para el nuevo archivo.
  • Trata de hacerlo en el mismo grupo de bloques del directorio que contiene el archivo
  • Si no es posible se busca un nuevo grupo para localizar el inodo.
cuando se crea un directorio
Cuando se crea un directorio
  • Se trata de localizar en un grupo que no haya sido utilizado mucho ( equilibrando el uso del disco)( mucho es cantidad de inodos ocupados no veces!)
  • Para encontrarlo el S.O puede obtener del superblock el número de inodos y bloques libres.
  • Con este valor se comienza a buscar por los grupos de bloques hasta encontrar a uno que tenga un valor por debajo del valor promedio de utilización.
los inodos y la creaci n
Los inodos y la creación
  • Cuando un inodo es localizado toda su información anterior es borrada.
  • Un atributo llamado link count es puesto a 1 ( en caso de archivos) y 2 para directorios
  • Cuando se borra un archivo el contador es decrementado, si llega a 0 el inodo es considerado libre.
  • Si un archivo es borrado y alguna aplicación lo tiene todavía abierto pasa a ser considerado un orphan file y es inscrito en una lista en el superblock.
  • Cuando la aplicación cierra el archivo o cuando el sistema se reinicia el inodoes liberado.
pero recuerde
Pero recuerde

Hay muchos otros sitios donde buscar

Y sobre todo:

LAS HERRAMIENTAS SON IMPORTANTES PERO NO SUSTITUYEN A LOS RESULTADOS OBTENIDOS POR UN INVESTIGADOR:

-ENTRENADO

-PACIENTE

-DISCIPLINADO

-CREATIVO

sistema de archivos
Sistema de Archivos

# fdisk –l /dev/hda

Disk /dev/hda: 64 heads, 63 sectors, 789 cylinders

Units = cylinders of 4032* 512 bytes

Device Boot Start End Blocks Id System

/dev/hda1 1 9 18112 83 Linux

Tipo de

SA

Disco

IDE A

Partición:1

permisolog a unix
Permisología UNIX

R: Lectura

W: Escritura

X: Ejecución

Permiso Negado

Permiso Otorgado

111 110 111

Resto

Grupo

Propietario

archivos ocultos
Archivos Ocultos
  • En UNIX los archivos ocultos se distinguen por comenzar por un “. “

# ls –a

.home

.stach

.gnome$

suid y sgid
SUID y SGID

_rwsr_xr_x 1 root root 37593 Apr 4 16:00 /usr/bin/at

_rwxr_sr_x 1 root root 343432 Apr 7 11:12 /sbin/netport

SUID

SGID

servicios disponibles
Servicios Disponibles
  • Revisar todo el árbol /etc/ rc*
  • Ejecutar (si es posible) alguna herramienta de búsqueda de puertos abiertos.
  • Tener en cuenta que muchos servicios pueden ser manejados por Superdemonios (inetd)
cuentas de usuarios
Cuentas de Usuarios
  • Revisar /etc/passwd
  • Si existe /etc/shadow
trabajos temporizados
Trabajos temporizados
  • Revisar los archivos relacionados con el cron del sistema
y en windows
Y en Windows??

Algunos sitios donde buscar información adicional en Windows

otras fuentes de informaci n
Otras fuentes de información
  • Los archivos de acceso directo
  • Index.dat
  • Thumbs.db
  • Entradas del registro
el registro
El registro
  • Los registros se encuentran en varios archivos ocultos en: %systemroot%\system32\config y NTUSER.DAT.
  • Un auditor forense debe hacer copias de los archivos del registro y visualizarlos en otro editor.
m s donde buscar systeminfo
Más donde buscar: SystemInfo

C:\>systeminfo

Nombre de host: MEFISTO

Nombre del sistema operativo: Microsoft Windows XP Professional

Versión del sistema operativo: 5.1.2600 Service Pack 2 Compilación 2

600

Fabricante del sistema operativo: Microsoft Corporation

Configuración del sistema operativo: Estación de trabajo independiente

Tipo de compilación del sistema operativo: Uniprocessor Free

Propiedad de: Reinaldo Mayol Arnao

Organización registrada: ULA

Id. del producto: 55274-640-4467482-23960

Fecha de instalación original: 20/11/2007, 10:27:26 p.m.

Tiempo de actividad del sistema: 0 días, 12 horas, 28 minutos, 33 segu

ndos

Fabricante del sistema: CLEVO Co.

Modelo el sistema: M550SE/M660SE

Tipo de sistema: X86-based PC

m s donde buscar systeminfo cont
Más donde buscar: SystemInfoCont…

Procesador(es): 1 Procesadores instalados.

[01]: x86 Family 6 Model 14 Stepping

12 GenuineIntel ~1861 Mhz

Versión del BIOS: MSTEST - 6040000

Directorio de Windows: C:\WINDOWS

Directorio de sistema: C:\WINDOWS\system32

Dispositivo de inicio: \Device\HarddiskVolume1

Configuración regional del sistema: 0c0a

Idioma: 0000040A

Zona horaria: N/D

Cantidad total de memoria física: 894 MB

Memoria física disponible: 168 MB

Memoria virtual: tamaño máximo: 2.048 MB

Memoria virtual: disponible: 2.004 MB

Memoria virtual: en uso: 44 MB

Ubicación(es) de archivo de paginación: C:\pagefile.sys

Dominio: INICIOMS

Servidor de inicio de sesión: \\MEFISTO

Revisión(es): 170 revisión(es) instaladas.

estado de los servicios
Estado de los servicios

C:\>scquery >>sc

SERVICE_NAME: ALG

DISPLAY_NAME: Servicio de puerta de enlace de capa de aplicaci¾n

TYPE : 10 WIN32_OWN_PROCESS

STATE : 4 RUNNING

(STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)

WIN32_EXIT_CODE : 0 (0x0)

SERVICE_EXIT_CODE : 0 (0x0)

CHECKPOINT : 0x0

WAIT_HINT : 0x0

SERVICE_NAME: AudioSrv

DISPLAY_NAME: Audio de Windows

TYPE : 20 WIN32_SHARE_PROCESS

STATE : 4 RUNNING

(STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)

WIN32_EXIT_CODE : 0 (0x0)

SERVICE_EXIT_CODE : 0 (0x0)

CHECKPOINT : 0x0

WAIT_HINT : 0x0

………

conexiones establecidas
Conexiones Establecidas

C:\>netstat

Conexiones activas

Proto Dirección local Dirección remota Estado

TCP mefisto:2852 bd07f3d2.virtua.com.br:https ESTABLISHED

TCP mefisto:2855 wr-in-f189.google.com:http ESTABLISHED

TCP mefisto:2856 by1msg3275906.phx.gbl:1863 ESTABLISHED

TCP mefisto:2876 eo-in-f147.google.com:http CLOSE_WAIT

TCP mefisto:2879 by1msg5082501.phx.gbl:1863 ESTABLISHED

TCP mefisto:2890 wx-in-f83.google.com:http CLOSE_WAIT

en muchos otros sitios
En muchos otros sitios ….
  • Imágenes ( esteganografía )

Vaya al manual de prácticas de criptografía y encontrará una práctica

y mucho mas

Y mucho mas…

Prof. Reinaldo MayolArnao