File Carving: Ausencia de metadatos

Este proceso es utilizado principalmente en la informática forense para extraer información a partir de una cantidad de datos en bruto sin necesidad de conocer el sistema de ficheros con el que se han creado los ficheros.

En general, todos los tipos de ficheros tienen características comunes. Por ejemplo, atendiendo a su estructura, todos los ficheros JPG/JFIF empiezan por FF D8 FF E0 y terminan por FF D9, como se puede observar en la siguiente imagen.

File Carving - BLOG - 2

Sabiendo esto, en bloques de datos, se pueden localizar aquellos que correspondan a JPGs en base al comienzo y fin de su estructura.

Esta técnica es realmente útil en multitud de casos, como por ejemplo aquellos en los que los dispositivos de almacenamiento se hayan corrompido o dañado, o como se ha indicado anteriormente, en casos en los que se realice una investigación en la que se utilice un análisis forense como por ejemplo para la gestión de un incidente. Un ejemplo práctico de uso bastante ilustrativo es el análisis que se llevó a cabo con los discos duros y unidades removibles incautados por los U.S. Navy Seals en el campamento de Osama Bin Laden.

Todos los tipos de ficheros tienen una estructura similar. Utilizan una constante conocida como Magic Number, la cual permite identificar el correspondiente tipo de fichero. En la siguiente tabla se indican una serie de magics numbers representativos con el tipo de fichero asociado:

File Carving - BLOG - 3

Es posible consultar un listado más extenso en el siguiente enlace.

Existen diferentes técnicas de «file carving»:

– Basadas en la cabecera de un fichero y en el final o, si se desconoce éste, en el tamaño máximo de archivo (dato disponible en la cabecera).

– Basadas en la estructura de un fichero: cabecera, pie, cadenas significativas, tamaño, etc.

– Basadas en el contenido del fichero: entropía, reconocimiento del lenguaje, atributos estáticos, etc. Ejemplo: HTML, XML, etc.

File Carving - BLOG - 4

Así mismo, existen multitud de herramientas tanto software libre como software privativo que permiten realizar el proceso de «file carving» con mayor o menor efectividad y utilidad. A continuación, se describen algunas de ellas:

Foremost

File Carving - BLOG - 5

– Es una herramienta de código abierto desarrollada por la Oficina de Investigaciones Especiales de las Fuerzas Aéreas estadounidenses. Permite trabajar tanto con imágenes de dispositivos (dd, encase, etc.) como directamente sobre el dispositivo. Está orientada a la recuperación de información en entornos Linux. Presenta la limitación de que únicamente es capaz de procesar ficheros de hasta 2 GB.

– Scalpel – 

File Carving - BLOG - 6

– Es una herramienta de código abierto, basada en Foremost, aunque mucho más eficiente, incluida en The Sleuth Kit. Está orientada a la recuperación de información tanto en entornos tanto Linux, OSX incluido, como Windows.

– Forensic Toolkit (FTK) AccessData – 

File Carving - BLOG - 7

– Ees una suite muy completa para realizar análisis forenses. Una de las muchas funcionalidades que incorpora es la de «carving» avanzado que le permite especificar criterios de búsqueda como tamaño de archivo, tipo de datos y tamaño de pixel, para reducir la cantidad de datos irrelevantes extraídos.

– X-Way Forensics (WinHex) – 

File Carving - BLOG - 8

– Al igual que FTK es una suite completa para realizar análisis forenses. Su prestaciones de «carving» no son demasiado configurables, si bien si potentes.

Ejemplo práctico

File Carving - BLOG - 9

La especificación PCAP «packet capture» o «captura de datos» corresponde al formato de fichero utilizado para almacenar capturas de tráfico de red. Existen multitud de herramientas tanto de código abierto como comerciales: analizadores de protocolo, monitores de red, sistemas de detección de intrusos, programas de captura de las tramas de red (packet sniffers), generadores de tráfico, etc. que manejan este formato de archivo.

Así mismo, existen repositorios online gratuitos desde los cuales se pueden descargar capturas de tráfico para realizar pruebas sobre ellas:

Contagio Dump

– WireShark SampleCaptures

– NETRESEC Publicly available PCAP files

– Blog de Chris Sanders

El contexto del ejemplo es un equipo que se ha determinado, mediante un análisis con el servicio antibotnet que está involucrado en la actividad de una botnet. Los sistemas de detección instalados en el equipo no identifican ningún tipo de malware, si bien por la lentitud de la conexión sí que se sospecha que puede estar comprometido por lo que se ha procedido a obtener una pequeña captura del tráfico de red.

Partiendo de un fichero PCAP, disponible en el siguiente enlace, se ha procedido a su análisis y se han encontrado ciertas anomalías como la existencia de tráfico SMTP que no debería existir. Es por ello que se ha decidido identificar y extraer los emails que contiene la captura para concretar qué tipo de correos son: phishing, malware, etc. y obtener información en detalle de la amenaza.

Para ello ha utilizado Python por tratarse de un lenguaje muy flexible, potente y sencillo. Existen diferentes librerías implementadas en este lenguaje, entre las que destaca Scapy, que permiten manejar y trabajar ficheros PCAP. El código utilizado es el siguiente:

File Carving - BLOG - 10

Y el resultado obtenido es este email:

File Carving - BLOG - 11

Las evidencias obtenidas demuestran que el equipo envía emails suplantando a una aerolínea y adjuntando un fichero malicioso por lo que tras analizarlo se puede confirmar que está comprometido con un malware relacionado con la botnet conocida como Asprox y por tanto tomar las medidas necesarias para su desinfección.

Es importante tener presente ciertos aspectos relacionados con el «file carving» que hacen que sea un proceso dificultoso.

– Los volúmenes de datos sobre los que se trabaja suelen ser muy extensos.

– La gran cantidad de tiempo que requiere el proceso.

– En muchos casos los resultados son parciales o incompletos y hay gran cantidad de información irrecuperable.

– Un gran número de falsos positivos.

– Se puede recuperar el contenido de los archivos pero no sus metadatos ni la estructura de directorios.

– Es posible engañar a este tipo de herramientas mediante técnicas antiforense.


Incibe & TonyHAT - logos

Anuncios

Un comentario en “File Carving: Ausencia de metadatos”

Responder

Por favor, inicia sesión con uno de estos métodos para publicar tu comentario:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s