Tema 2
Tema 2
Tema 2
2 TEMA
Ficheros
Esquema
TEMA 2 – Esquema
Sistema de ficheros Archivos borrados Metadatos
Firmas de archivo:
Se puede asemejar al índice Prácticamente todos los
• Identifican al archivo
en un libro archivos pueden tener
• Independientes de la
extensión
Análisis Forense
Análisis Forense
Ideas clave
En este tema de la asignatura vamos a introducir los conceptos necesarios para entender
todo el tratamiento de los ficheros que realiza un sistema operativo: cómo funcionan los
sistemas a la hora de estructurar la jerarquía de ficheros, la manera en la que los ficheros son
tratados cuando se borran y los metadatos que un fichero puede albergar.
Los objetivos de este tema son:
Dispositivo de almacenamiento
Conjunto de componentes utilizados para leer o grabar datos en un medio
de almacenamiento de datos.
Para facilitar la comprensión del temario, cuando nos refiramos a los dispositivos de
almacenamientos vamos a limitar tal definición a los dispositivos de almacenamiento
modernos como son los discos duros (magnéticos), sistemas de almacenamiento
basados en memorias tipo flash como los discos SSD, las tarjetas de memoria o los
pendrives y sistemas de almacenamientos ópticos como los CD, DVD o Blu-ray.
Las particiones
Participación
Es un área de un dispositivo que se puede formatear con un sistema de
archivos e identificar con una letra del alfabeto. Por ejemplo, la unidad C de la
mayoría de los equipos con Windows es una partición.
No hay ningún tipo de regla que indique cómo debe ser particionado un dispositivo
de almacenamiento, por lo que el esquema de particionado de un dispositivo suele estar
determinado por diversos motivos tales como la flexibilidad deseada, velocidad,
seguridad o las limitaciones propias del espacio disponible. Por norma general, es una
elección propia del usuario, salvo las particiones creadas por defecto durante la
instalación de un sistema operativo.
El concepto de MBR nace en 1983 con el Sistema Operativo PC DOS 2.0 y sigue vigente
hasta nuestros días, aunque dada su antigüedad, las limitaciones de este tipo de tabla de
particiones se hacen cada vez más evidentes. Entre ellas, quizá la más notoria sea la
limitación del espacio de almacenamiento máximo direccionable a 2TB.
Originalmente, MBR solo admitía hasta cuatro particiones. Más tarde, se ampliaron al
introducir particiones lógicas para superar esta limitación. Existen tres tipos de
particiones: primaria, extendida y lógica.
Las particiones primarias pueden ser todas configuradas como particiones de
arranque y están limitadas a cuatro por dispositivo de almacenamiento o volumen
RAID. Si un esquema de particionado necesita más de cuatro particiones, se crea una
partición extendida que sirve para contener particiones lógicas. Las particiones
extendidas están pensadas para contener particiones lógicas. Un disco duro no puede
contener más de una partición extendida. La partición extendida también se cuenta como
una partición primaria, por lo que, si el disco tiene una partición extendida, solo son
posibles tres particiones primarias adicionales. El número de particiones lógicas que
pueden residir en una partición extendida es ilimitado.
En la tabla de particiones solo puede haber una partición extendida, la cual, en la tabla
de particiones se identifica porque en el campo donde se indica el ID del Sistema de
Ficheros de la partición tiene el valor 0x05 o 0x0F que la identifica como partición
extendida. El inicio de una partición extendida es exactamente una tabla de particiones
exactamente igual a la tabla de particiones del propio MBR.
Sistema de ficheros
Es la forma en que se organiza, gestiona y mantiene la jerarquía de
ficheros en los dispositivos de almacenamiento.
El sistema de ficheros permite que los programas que pretenden acceder a los datos
contenidos en un dispositivo no tengan que conocer la ubicación física de dichos
datos, siendo necesario únicamente conocer la ruta de los archivos a los que se pretende
acceder, dejando al sistema de ficheros la labor de traducción.
Parte 3
Parte 1 Parte 2
Índice FIN
video.avi Parte 2
Parte 1
audio.mp3 FIN
documento.pdf Parte 1
FIN
En el esquema anterior vemos como en la tabla índice (que en función del sistema de
ficheros empleado contendrá más o menos información y se encontrará estructurada de
una forma u otra) mantiene la lista de archivos del dispositivo (normalmente, los
sistemas de ficheros tratan las carpetas como un archivo «especial»). En esta tabla
índice, el sistema de ficheros mantiene un enlace a la primera parte de cada uno de
los archivos, la cual a su vez enlaza con la siguiente parte del archivo, hasta llegar al final
del mismo.
Hay que tener en cuenta, que lo que denominamos como «índice», es en realidad un
conjunto de archivos especiales en los cuales el sistema de ficheros mantiene dicha
información.
Boot Sector.
FAT1 y FAT 2 (copia de la FAT1).
Root folder y entradas de directorio.
Para explicar cómo los sistemas de ficheros «borran» los archivos y cómo posteriormente
podemos recuperarlos, vamos a basarnos en un ejemplo.
Imaginad que tenemos un archivo de vídeo en alta definición que ocupa 2GB de espacio
en nuestro disco duro. Este archivo se encontrará dividido en distintas partes a lo largo
del dispositivo tal que así:
... Parte n
Parte 1 Parte 2
Índice FIN
video.avi
... Parte n
Parte 1 Parte 2
Índice FIN
video.avi
Clúster
Es un conjunto contiguo de sectores que componen la unidad más
pequeña de almacenamiento de un disco.
Vamos a verlo mejor con un ejemplo (en el ejemplo vamos a trabajar sobre un FAT16).
Contenido de la tabla FAT1 antes de borrar el único archivo contenido en el directorio
raíz del dispositivo:
Las dos primeras entradas de la FAT (coloreadas en rojo) son utilizadas por el propio
sistema de archivos. La tercera entrada (correspondiente con el clúster 2 y coloreada en
verde) está marcada como utilizada y la cuarta entrada (correspondiente con el clúster 3
y coloreada en naranja) también está marcada como utilizada, siendo además el último
clúster del archivo.
Como vemos, la tercera y cuarta entrada (coloreadas en azul), que antes se correspondían
con los clúster utilizados por el archivo, se encuentran marcadas ahora como
disponibles.
Ahora vamos a ver el contenido del root folder antes de borrar el archivo.
Como vemos, indica que hay un archivo denominado «BALLOON», con extensión
«JPG» que ocupa 971bytes (en azul claro está coloreado CB03, que leyendo al revés es
03CB = 971 en decimal) y que comienza en el clúster 2 (lo indica el valor 02 del offset
00040010A).
Ahora vamos a ver el contenido del root folder tras la eliminación del archivo.
Como vemos, el contenido es el mismo salvo por el primer registro (coloreado en rojo)
que ahora tiene el valor E5, eliminado. Es por ello, que si recuperáramos el archivo lo
recuperaríamos con el nombre «_ALLOON.JPG», ya que hemos perdido el primer
carácter del nombre.
donde se encontraba dicho archivo, lo que conllevaría mucho tiempo y desgaste del
propio dispositivo.
Ahora bien, tras el «borrado» de un archivo, el espacio que dicho archivo ocupaba pasa
a encontrarse como disponible. Por lo tanto, es posible que parte de dicho espacio sea
sobrescrito en operaciones de escritura posteriores quedando el fichero inicial
irrecuperable parcial o completamente.
... Parte n
Parte 1 Parte 2
Índice FIN
Parte 1
video.avi
video2.avi
Veamos con una tabla los posibles escenarios existentes tras la eliminación de un archivo
y la información que se podría recuperar en cada uno de ellos.
El archivo se mueve a la
Toda (el archivo eliminado y los
Eliminación papelera de reciclaje (o
datos asociados al mismo)
similares)
Eliminación, vaciado de la
Similar a borrar el enlace al
papelera (o similares) y Solo el archivo, sin los datos
archivo o eliminar su
sobrescritura del enlace del asociados al mismo
definición de la tabla
índice
En función de la cantidad de
Eliminación, vaciado de la Las zonas físicas donde se
información sobrescrita, es
papelera (o similares) y encontraba el archivo han
posible recuperar una parte del
sobrescritura de los datos sido sobrescritas
archivo o no recuperar nada
Prácticamente todos los archivos tienen una cabecera o firma que los identifica. Esta
firma se encuentra al principio del archivo y es independiente de la extensión que
dicho archivo tenga asignada. Una imagen con extensión .JPG puede tener una cabecera
de una imagen PNG, por lo que en realidad estaríamos ante una imagen PNG.
4D 5A MZ Ejecutable (*.EXE)
Para ver la firma de un archivo, solo tenemos que abrir dicho archivo con un editor
hexadecimal. La firma se encuentra (por norma general) al principio del mismo, aunque
la longitud de la misma suele variar.
Aquí vemos la firma de un archivo de imagen en formato JPG abierto con un editor
hexadecimal:
Metadatos
Son datos que describen otros datos. En el ámbito de la informática, cuando
hablamos de metadatos nos referimos a los datos asociados a los archivos que
aportan información sobre los mismos.
Como vemos, cada tipo de archivo tiene unos metadatos asociados distintos, aunque
algunos de ellos se compartan como pueden ser las fechas de creación y modificación,
el autor o una descripción del archivo.
Aunque prácticamente todos los tipos de archivos pueden contener metadatos, los
archivos en los que más fácilmente se encuentran son: los documentos ofimáticos (hojas
de cálculo, documentos de texto…), las fotografías, los archivos de vídeo y audio y los
mensajes de correo electrónico (las cabeceras del mensaje).
El análisis de los metadatos puede realizarse desde el propio sistema operativo (en
Windows basta con ver las propiedades del archivo), utilizando programas de terceros
(como Metadata Analyzer) o webs (como FOCA on-line, que también tiene su versión
off-line) que realizan el análisis de manera automática.
En febrero de 2003, el gobierno del Reino Unido publicó un dossier sobre la seguridad en
Iraq y organizaciones de inteligencia. El documento se publicó en formato DOC en la propia
web del gobierno Británico y del análisis de los metadatos que contenía se obtuvo:
Que justo antes de la utilización de dicho documento por parte de Colin Powell en un
discurso ante las Naciones Unidas, uno de los autores había copiado el informe de su
ordenador a un disquete para que Powell lo utilizara en la presentación.
Se obtuvo información sobre los autores del mismo: «P. Hamill», «J. Pratt», «A.
Blackshaw» y «M. Khan». Pudiendo averiguar, a partir de sus nombres, cuál era su
cargo y lugar de trabajo. Además, se descubrió que gran parte dicho documento había
sido plagiado de los documentos de un investigador estadounidense.
Todo esto puede sonar a película de acción, pero es real y demuestra la información
que los metadatos pueden proporcionarnos durante nuestra labor de investigación.
Para aclarar los conocimientos adquiridos a lo largo de este tema, vamos a ver un sencillo
ejemplo de cómo un programa recupera de forma automática un archivo
eliminado.
Para ello, vamos a realizar paso a paso los procesos que el programa de recuperación
realiza de forma automática, sobre una imagen preparada para tal propósito. En este
caso, estamos trabajando sobre un Sistema de Ficheros FAT. Por lo que, aunque el
procedimiento sería similar en otros Sistemas de Ficheros, no tiene por qué coincidir.
El primer paso consiste en leer el contenido del directorio raíz del dispositivo a analizar.
Obteniendo algo similar a lo que se observa en la siguiente imagen:
Como se observa, aparecen cuatro entradas, de las cuales, las tres últimas son las que se
corresponden con los archivos contenidos en el dispositivo, mientras que la primera sería
el nombre del volumen FAT (esto es así en FAT pero, como ya hemos comentado al inicio,
no tiene por qué serlo en otros sistemas de ficheros).
En FAT, cada una de las entradas de esta carpeta raíz ocupa 32 bytes, los cuales se
distribuyen de la siguiente manera:
Para saber qué archivos han sido eliminados solo nos tenemos que fijar en que el primer
valor (hexadecimal) de su entrada:
Valor Significado
0x00 La entrada se encuentra sin usar.
0xE5 El archivo al que hacer referencia la entrada ha sido eliminado.
El archivo al que hace referencia la entrada, comienza por el carácter «_», en
0x05
hexadecimal (0xE5).
Por lo tanto, de la lista de entradas del directorio raíz podemos ver que dos de las tres
entradas se encuentran eliminadas. Estas entradas se corresponden con los archivos
«?ORMIGA» y «?EADOW».
Como se observa, se pueden ver las fechas de creación, último acceso y modificación.
Además del clúster en el cual comienzan y el tamaño de los archivos.
Una vez sabemos el clúster de inicio y el tamaño del archivo, es posible calcular el clúster
final mediante una sencilla operación matemática.
Por lo tanto, el archivo ocupa desde el sector 2 al sector 46. En total, 45 clúster.
Lo + recomendado
Lecciones magistrales
No dejes de leer…
TEMA 2 – Lo + recomendado
Análisis Forense
En el artículo How FAT works, publicado por Microsoft, se explica la arquitectura y los
componentes de este sistema de ficheros de los que hemos hablado a lo largo de todo este
tema.
Este otro artículo, How NTFS works, y publicado también por Microsoft explica la
arquitectura y los componentes básicos de este sistema de ficheros.
TEMA 2 – Lo + recomendado
Análisis Forense
Hansen, K. H. y Toolan, F. (2012). Decoding the APFS file system. Digital Investigation,
1-26. Doi: 10.1016/j.diin.2017.07.003
En este artículo, Kurt H. Hansen y Fergus Toolan realizan un estudio del nuevo sistema
de ficheros Apple File System.
Pesce, L. (2008). Document Metadata, the Silent Kiler… Bethesda (Estados Unidos):
SANS Institute.
TEMA 2 – Lo + recomendado
Análisis Forense
No dejes de ver…
Seguridad informática
TEMA 2 – Lo + recomendado
Análisis Forense
+ Información
Webgrafía
Understanding EXT4
(http://digital-forensics.sans.org/blog/2010/12/20/digital-forensics-
understanding-ext4-part-1-extents/)
Bibliografía
Craiger, P. y Burke, P. K. (2005). Mac Forensics: Mac OS X and the HFS+ File System.
Extraído el 12 de febrero de 2013 desde:
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.182.6018&rep=rep1&type=pdf
TEMA 2 – + Información
Análisis Forense
Eckstein, K. (2004). Forensics for Advanced UNIX File Systems. Extraído de:
http://www.researchgate.net/publication/4147570_Forensics_for_advanced_UNIX_f
ile_systems
TEMA 2 – + Información
Análisis Forense
Test
2. Los sistemas de ficheros evitan que los programas tengan que conocer la ubicación
física de un fichero.
A. Verdadero.
B. Falso.
TEMA 2 – Test
Análisis Forense
7. La recuperación en bruto…
A. Consiste en buscar los archivos por la extensión de los mismos.
B. Consiste en leer los espacios del disco duro marcados como libres y buscar en
los mismos, firmas de archivos conocidas.
C. Consiste en leer del índice los archivos marcados como borrados.
D. Ninguna de las anteriores es correcta.
TEMA 2 – Test