Peritaje Informático forense con Autopsy

Una de las herramientas de análisis forense y peritaje informático más conocidas del mercado es Autopsy. Autopsy es una herramienta de análisis forense distribuida bajo licencia de software libre y, por tanto, cualquier perito informático puede utilizarla. El artículo fue elaborado hace tiempo y algunas de las capturas de pantalla que lo acompañan, puede que ya no coincidan exactamente con la interfaz de la versión actual o de las últimas versiones de Autopsy, pero las funcionalidades del software son las mismas. La página web del proyecto es www.sleuthkit.org/autopsy/.

Creación de un caso y adición de una fuente de datos

Cuando se crea un caso en Autopsy, es necesario otorgarle un nombre y añadir una fuente de datos (una imagen forense). Esta imagen forense podrá ser de un disco duro, de un pendrive, de una tarjeta de memoria, etc. Una vez se han ejecutado estas acciones, la fuente de datos se añade al caso y ya se puede trabajar con ella, como se puede observar a continuación.



Configuración global

Existe una rueda dentada en la parte superior del árbol, para poder configurar de manera general la interfaz de usuario.

Configuración del repositorio central

Al objeto de preservar la información entre los diferentes casos, es relevante configurar un repositorio central de información, en el que, por ejemplo, se almacenarán las huellas digitales de los ficheros informáticos analizados por Autopsy, así como otra información de interés, de tal manera que, en siguientes ejecuciones de sucesivos casos, con otras evidencias y con la ayuda de los diversos módulos de la herramienta, se puedan establecer relaciones entre casos y determinar, por ejemplo, si existen archivos que ya han sido analizados en casos anteriores.

La configuración del repositorio central se realiza desde el submenú de “Options” del menú “Tools”, como se observa a continuación.



También es posible configurar un repositorio central en un servidor, para ejecutar Autopsy en modo multiusuario, el cual admite con ciertos requerimientos de hardware. En una organización o despacho en la que trabajen varios peritos informáticos, esta configuración es ideal para trabajar de manera colaborativa, sobre los mismos casos.

Fuentes de Datos (Data Sources) y Vistas (Views)

En el panel superior izquierdo se muestran las fuentes de datos que se han añadido al proyecto, organizadas por particiones, que incluyen los denominados archivos huérfanos (Orphan Files), para cada una de las particiones. Estos archivos huérfanos son aquellos archivos borrados de los que sólo han podido recuperarse algunos metadatos, sin que haya podido recuperarse su contenido. A continuación, se observa la carpeta de archivos huérfanos de una partición.



Asimismo, las Vistas (Views), organizan los archivos por extensión o por MIME/Type (es necesario ejecutar el módulo correspondiente para que los archivos se organicen por MIME/Type).



Se pueden crear nuevos elementos MIME/Type en el menú “Options”, en la pestaña “File Extension Mismatch”, añadiendo tipos personalizados y la extensión de cada uno de los ficheros asociados a cada tipo (pueden ser varios, por ejemplo, existen varias extensiones referenteds a imágenes, o a audios, o a vídeo). En las Vistas, asimismo, se incluyen los ficheros borrados (Deleted Files), recuperados realizando el proceso conocido como carving, comprobando la cabecera del fichero, así como los ficheros de gran tamaño organizados por rango de tamaños (File Size). Igualmente, se pueden añadir ficheros personalizados en el menú “Options”, en la pestaña “File Types”, añadiendo ficheros personalizados y la cabecera de los mismos.

Listado de Ficheros (Listing)

En la parte superior derecha de la interfaz de usuario, se muestra el listado de ficheros para cada categoría del panel izquierdo. Existen tres flags (S, C y O), para cada fichero. El flag S, señala si el fichero es interesante o notable (inducido a partir del cálculo de su huella digital o código hash, como se verá más adelante). El flag C señala si el fichero tiene un comentario del usuario. El flag O señala el número de fuentes de datos del repositorio central en los que aparece el fichero. A continuación, se muestra un pantallazo con el listado de los ficheros ejecutables encontrados en la fuente de datos.



Visor de Contenido (Content Viewer)

El visor de contenido está situado en la parte inferior derecha de la interfaz de usuario y en él existen varias pestañas que muestran el contenido del fichero en hexadecimal, se extraen las cadenas de texto que existen en el fichero, los metadatos del fichero, los resultados, el texto indexado, existe un visor multimedia donde se puede previsualizar el fichero (una fotografía, un audio, un vídeo, etc.), así como una pestaña denominada “Other Occurrences”, en la que se muestra un listado de todas las veces en que el fichero aparece en el caso actual o en otros casos anteriores (gracias a la información de los códigos hash almacenada en el repositorio central). A continuación, se muestra un pantallazo con un ejemplo de visualización de contenido en el visor.



Ejecución de módulos forenses

Autopsy incorpora una elevada cantidad de módulos forenses, muy útiles para el perito informático, que se ejecutan de forma lineal, al estilo “pipeline” o tubería, siendo que la salida de un módulo engarza con la entrada de otro, salvo algunos módulos que son independientes y se ejecutan en paralelo. El perito informático puede ejecutar los módulos forenses cuando incorpora la fuente de datos o a posteriori, en la siguiente interfaz.



Existen módulos nativos y plug-ins desarrollados en Python. Los módulos que están señalados con un signo de admiración o warning, son los que ya han sido ejecutados sobre la fuente de datos. A continuación, se explica el funcionamiento de algunos de los módulos más relevantes.

Hash Lookup

Este módulo calcula el código hash de cada elemento y lo añade al repositorio central previamente configurado en Autopsy. El módulo se puede configurar para que compare los códigos hash de todos los ficheros de la fuente de datos, con códigos hash conocidos (“known”), que serían los de los archivos del sistema operativo y similares (librerías, ejecutables, etc.), o notables (“notable”), que se pueden añadir en la configuración del módulo, como se observa a continuación.



Una vez ejecutado el módulo, las coincidencias se muestran en el árbol de resultados, como se puede comprobar, bajo la sección de “Hashset Hits”.



El código hash es, como se ha insistido en tantos artículos en esta página web, fundamental en el peritaje informático. Este módulo de Autopsy es especialmente relevante para los peritos informáticos porque, como se ha indicado, permite la comparativa entre ficheros contenidos en la fuente de datos, con ficheros ya conocidos, por lo que sería muy útil, por ejemplo, en el peritaje informático de casos de pornografía infantil, sabiendo que ya existen bases de datos de códigos hash de ficheros positivos, que pueden ser importadas en Autopsy para comparar los códigos hash de las fuentes de datos con los códigos hash de las bases de datos de códigos hash conocidos o notables.

EXIF Parser

La ejecución del módulo EXIF se muestra en el árbolde resultados, como se observa a continuación, bajo la sección “Extracted Contents”.



Este módulo muestra los metadatos EXIF más relevantes de las fotografías contenidas en la fuente de datos. La información de metadatos EXIF mostrada no es la totalidad de los metadatos EXIF, sino un conjunto de los mismos, el más relevante. A continuación, se muestra un pantallazo del resultado de la ejecución del módulo EXIF en el listado de ficheros.



Como puede observarse, la información mostrada se corresponde con la fecha de creación de la fotografía, las coordenadas GPS donde fue tomada la misma, la altitud, el modelo del dispositivo, el fabricante del mismo y la fuente de datos origen, así como un campo para etiquetas.

Extension Mistmatch Detected

Básicamente, se trata de un módulo que identifica dicheros cuya cabecera no se corresponde con su extensión y que pueden resultar interesantes a nivel forense. Pueden producir muchos falsos positivos, especialmente en ficheros de texto temporales cuya extensión es “tmp” o similar, motivo por el cual se pueden configurar excepciones, como obviar los archivos conocidos o sólo comprobar los ficheros multimedia y los ejecutables, como se puede observar a continuación, en panel de configuración del módulo.



El resultado del mismo se muestra en el árbol, bajo la sección “Extracted Contents”, como se puede comprobar seguidamente.



El resultado de la ejecución del módulo se puede observar en el listado de ficheros. Se comprueba cómo la extensión de cada fichero (segunda columna), no coincide con el tipo de cada fichero o MIME/Type (tercera columna).



Embedded File Extractor

Este módulo extrae la información de ficheros comprimidos que contienen otros ficheros, introduciéndolos en un directorio que cuelga del fichero. A continuación, se muestra un ejemplo.



Interesting Items

El módulo Interesting Items, permite localizar ficheros concretos en la fuente de datos, buscándolos por diversos patrones, como pudiera ser el nombre. Para ello, en la interfaz del módulo, es necesario añadir un set de reglas y unas reglas, como se observa a continuación.



Según la configuración anterior, el módulo buscará los ficheros denominados “truecrypt.exe” y “veracrypt.exe”. Una vez ejecutado el módulo, el resultado se muestra en el árbol. A continuación, se observa que se ha obtenido un resultado.



El resultado es que se ha encontrado un fichero con el nombre “veracrypt.exe”, lo cual se puede observar en el listado.



Recent Activity

El módulo relativo a la actividad reciente, extrae diferentes artefactos, como información sobre cuentas en el equipo, ficheros eliminados y enviados a la Papelera de Reciclaje (marcando la fecha de eliminación de cada fichero, así como señalando el directorio de origen, en el que se mostrará un aspa señalando el fichero eliminado), los ficheros abiertos recientemente, las Shellbags, los dispositivos USB conectados al equipo, los marcadores, las cachés, las cookies, las descargas, los formularios, el historial de los navegadores, las búsquedas, etc. Se trata de información muy relevante para el perito informático, puesto que recopila la última actividad del usuario del equipo, muy importante en el análisis forense de una evidencia informática.

La información de cada artefacto se muestra segregada en el árbol, dentro de la sección “Extracted Content”, como se observa a continuación.



Keyword Search

El módulo de búsqueda permite encontrar ocurrencias de una cadena de caracteres dentro del texto de cada uno de los archivos que se encuentran en la fuente de datos. Para el peritaje informático, esta característica es esencial, ya que permite las denominadas “búsquedas ciegas”. Las ocurrencias se pueden buscar de manera exacta, mediante subcadena o mediante expresión regular, siendo la búsqueda exacta, la que aparece configurada por defecto.

Al ejecutar el módulo, se genera un índice ordenado mediante Apache Solr, con todas las palabras de todos los archivos del equipo, que incluye la palabra y el archivo. Al realizar la búsqueda, una vez el índice ha sido creado, aquélla se produce en el índice ordenado y, por tanto, la complejidad del proceso de búsqueda es logarítmica. El módulo es capaz, incluso, de indexar palabras de archivos de código fuente, como HTML.

En la configuración del módulo, en el menú “Options”, en la pestaña “Keyword Search”, se puede crear un set de búsqueda con distintas cadenas, como se observa a continuación.



Cada búsqueda puede ser configurada como exacta, mediante subcadena o mediante expresión regular, como se puede comprobar a continuación.



Es posible configurar varias codificaciones y alfabetos, como se puede observar a continuación, lo que demorará el proceso de generación del índice.



Asimismo, es posible configurar la exclusión de los archivos conocidos (librerías de Windows y similares), a través de las tablas de códigos hash conocidos (“known”), que fueron explicadas en el módulo Hash Lookup. Por otra parte, una característica muy importante del módulo es que se puede configurar el intervalo de tiempo en que la interfaz de usuario mostrará nuevas coincidencias de la búsqueda que vayan surgiendo, según va avanzando el proceso.



Cuando se está ejecutando el módulo y cuando termina de ejecutarse, los resultados se muestran en el árbol, bajo la sección “Extracted Content”, como puede comprobarse a continuación.



El listado puede visualizarse en la parte derecha de la interfaz, como se observa a continuación.



Finalmente, es necesario reseñar que existe, en la parte superior de la interfaz de usuario, un cajetín de búsqueda en el que se puede realizar cualquier tipo de búsqueda exacta, mediante subcadena o mediante expresión regular, una vez, lógicamente, se ha ejecutado el módulo Keyword Search. A continuación, se muestra el cajetín.



El resultado de la búsqueda también se mostrará en el árbol, bajo la sección “Extracted Content”, así como el listado de ficheros en la parte derecha de la interfaz de usuario.

Central Repository (antes llamado Correlation Engine)

Este módulo es útil para aflorar ficheros previamente analizados en otras fuentes de datos y/u otros casos, conociendo, por tanto, en la fuente de datos que se está analizando, la existencia de archivos que ya habían sido previamente analizados. Al ejecutar este módulo, las huellas digitales de los archivos de la fuente de datos, que han debido ser calculadas previamente ejecutando el módulo “Hash Lookup”, se copian a la base de datos del repositorio central y serán detectados en sucesivas ejecuciones del módulo para otras fuentes de datos. Si se desean aflorar archivos importantes en otras fuentes de datos, es necesario que dichos archivos que se desea que afloren en sucesivos análisis de nuevas fuentes de datos y/o casos, sean etiquetados como “notable”, es decir, como notables. A continuación, se muestra el etiquetado como “notable” de un fichero perteneciente a una fuente de datos.



El etiquetado como “notable” de un fichero genera una marca en la tupla del repositorio central en la que se almacenan las propiedades del archivo, entre las que se incluyen su huella digital, su fuente de datos, el caso al que pertenece, etc., de tal forma que, cuando se ejecuta el módulo “Central Repository” sobre una nueva fuente de datos, se consulta al repositorio central para comprobar si alguno de los ficheros de la nueva fuente de datos, había sido etiquetado como “notable” y, por tanto, reseñarlo (si no se ha reseñado el archivo como “notable”, también se detectará la presencia del archivo y se marcará, en el repositorio central, el nuevo caso en el que se ha encontrado, pero no se hará aflorar el archivo como “notable”). El resultado cuelga bajo la sección “Interested Items”, como se observa a continuación.



En el listado de archivos, en la parte derecha de la interfaz, se puede consultar el fichero o ficheros encontrados y marcados previamente como “notable” (o aquellos que no se marcaron como “notable” y que, aunque no se hayan reseñado como tal, también han sido encontrados en otras fuentes de datos, para lo cual, en principio, ni siquiera haría falta ejecutar el módulo “Central Repository”, pero sí el módulo “Hash Lookup”).



Es importante reseñar que el número de ocurrencias que aparecen en el flag O, no es el número de veces que se ha encontrado el archivo en las distintas fuentes de datos, sino las fuentes de datos en las que se ha encontrado el archivo. Esto se puede comprobar fácilmente observando la figura anterior, en la que se muestra que existen un total de dos ocurrencias del fichero, mientras que, en el “visor de contenido”, se muestran tres ocurrencias.



Así pues, en realidad, las dos ocurrencias que aparecen en el flag O del listado, revelan que se trata de las distintas fuentes de datos en las que se ha encontrado el fichero, la fuente del caso actual y la fuente “device1_laptop.e01”, del caso “case1”. Es importante, pues, reseñar también que, en el listado “Other Occurrences” del “visor de contenido”, no se refleja la ocurrencia actual que está siendo analizada en este caso, sino todas las demás.

Interfaces

Timeline Interface

La interfaz Timeline Interface permite visualizar los eventos que se han producido en el equipo, en una gráfica de escala vertical logarítmica (aunque puede configurarse lineal), y escala horizontal temporal, que permite poner de relieve los eventos del equipo en una línea temporal. La interfaz arranca pulsando en el botón Timeline de la aplicación y, lo primero que se muestra en la ventana emergente que se abre, es la vista de “barras”, como se puede observar a continuación.



En la parte izquierda de la interfaz, existe un panel de filtros al objeto de seleccionar el tipo de actividad que interesa (sistema de ficheros, actividad web, miscelánea o tipos personalizados), mientras que en la parte inferior aparece el listado de los ficheros seleccionados en el gráfico (en función del bloque seleccionado).

Si se realiza doble clic en uno de los periodos, la interfaz se redimensiona para mostrar ese periodo al completo (de años a meses, de meses a días, de días a horas), pudiendo ir hacia atrás en todo momento. A continuación, se muestra un pantallazo con el redimensionado tdel mismo tras haber realizado doble clic en uno de los periodos.



La segunda de las vistas es la de “detalle”. En esta vista, los eventos se muestran organizados por intervalos temporales y por carpetas, como se observa a continuación.



Como se puede observar en la figura anterior, existen archivos que cuelgan de la carpeta “Windows” 661151 creados, accedidos o modificados -tiempos MAC(b) en el peritaje informático-, entre 2001 y 2019. Sin embargo, 661091 de estos archivos se crean, acceden o modifican en 2019, como se observa a continuación.



Si existen grupos de elementos que se superponen con un grupo anterior, el sistema genera una nueva fila para ese grupo. Si se selecciona un grupo (en este caso se ha seleccionado un grupo de 1453 archivos, ya que la interfaz no permite visualizar más de 5000, dando la oportunidad al usuario de exportarlos a CSV en tal caso), se puede visualizar el desglose del evento y el tipo en la tabla inferior izquierda de la interfaz, que se muestra a continuación.



Image Gallery

La interfaz “Image Gallery” o “Galería de Imágenes” constituye una ayuda muy importante para cualquier peritaje informático sobre contenido multimedia. Esta interfaz es accesible directamente desde el submenú “Images/Videos” del menú “Tools”. La interfaz necesita de la ejecución previa de diversos módulos que ya han sido analizados. La pestaña que se abre se observa a continuación.



Este módulo de Autopsy es capaz de determinar, a partir de ciertos parámetros como la densidad de códigos hash o el número de imágenes en un directorio, qué directorios tienen más prioridad para ser visualizados por el usuario. El sistema muestra los ficheros en miniatura y el usuario puede visualizar, en la parte derecha de la interfaz, los detalles y metadatos del archivo.

Para pasar al siguiente directorio prioritario, sólo es necesario pulsar en el botón “Next Unseen Group”, en la parte de debajo de la interfaz, a la derecha, pudiendo volver hacia atrás en los directorios en cualquier momento, pulsando en el botón “Back”, en la parte inferior de la interfaz, a la izquierda (o hacia delante, en el botón “Forward”).

Si alguna de las fotografías o imágenes se encontraba en el set de hashes etiquetada como “notable”, su miniatura aparecerá rodeada de un rectángulo intermitente de color morado, como se observa a continuación.



También se puede utilizar una categorización personalizada de imágenes y, en tal caso, las miniaturas aparecerán rodeadas de un rectángulo amarillo. Por otra parte, se pueden importar bases de datos de códigos hash de las Fuerzas y Cuerpos de Seguridad del Estado, muy útiles en peritajes informáticos sobre casos de pornografía infantil, a través de los proyectos “Project Vic Integration” y “C4ALL”, que se pueden configurar desde Autopsy a través del “Law Enforcement Bundle”.

Communications Interface

La interfaz “Communications Interface” o “Interfaz de Comunicaciones” permite filtrar por cuentas (de usuario), y no por tipos de datos. Es una interfaz muy importante para encontrar información referente a cuentas de usuario y comunicaciones entre las mismas.

Para poder ejecutar la interfaz, es necesario la ejecución previa de los módulos “Email” y “Android Analizer”, que no han sido analizados en este artículo pero que, básicamente, extraen la información relativa a todos los correos electrónicos, así como sus interrelaciones, que existan en la fuente de datos, en el caso del módulo “Email”, y la información de cuentas en redes sociales en el caso del módulo “Android Analyzer”.

El módulo extrae la información de todas las cuentas y de los mensajes enviados y recibidos por cada cuenta. A continuación, se muestra una captura de pantalla relativa a la información de las cuentas de correo electrónico de una fuente de datos.



Como puede observarse, aparecen todas las cuentas de correo electrónico encontradas en la fuente de datos. En la columna de más a la derecha, en la pestaña “Summary”, aparecen los mensajes enviados y/o recibidos por cada cuenta.

En la parte derecha de la interfaz, se puede visualizar el resumen de los correos electrónicos, llamadas, ficheros multimedia y adjuntos relacionados con la cuenta de correo. Asimismo, si se pulsa en la pestañan “Messages”, se puede observar la retahíla de mensajes organizados por hilo de conversación, como se observa a continuación.



Se puede entrar en cada uno de los hilos para visualizar los mensajes, tal y como puede observarse a continuación.



Una vez el usuario ha accedido a un hilo de correo electrónico, los mensajes pueden seleccionarse y se visualizan en la parte inferior, así como también exportarse a una unidad externa, como se observa a continuación.



Pulsando en el botón “Threads” de la parte derecha, se puede volver a la pantalla de los hilos de correo electrónico.

Una de las propiedades más interesantes, muy útiles para el peritaje informático, ya que ayuda a la visualización de la información, es la herramienta “Visualize”, que muestra las cuentas y sus interrelaciones en modo gráfico. Para ello, es necesario seleccionar, con el botón derecho, la cuenta que se desea visualizar, como se observa a continuación.



Una vez seleccionada la opción de visualización, se muestran las relaciones en la pestaña “Visualize”, como se observa seguidamente.



Esta captura de pantalla se puede agregar al peritaje informático para una mejor comprensión, por parte de los juristas que van a leer el informe, de las relaciones entre diferentes cuentas de correo electrónico o de redes sociales (para lo cual habría que ejecutar el módulo “Android Analyzer”, obviamente sobre una extracción física de datos de Android obtenida con una herramienta apropiada de extracción -diferente a Autopsy, que no soporta las extracciones forenses-).

File Discovery Interface

Esta interfaz permite encontrar archivos (imágenes, vídeos o documentos), en función de una variedad de filtros, como el tamaño del fichero, la fuente de datos, las ocurrencias anteriores del archivo en otros casos, etc.



Etiquetado, comentarios e informes

Algunas de las funcionalidades más importantes de Autopsy son el etiquetado de ficheros, los comentarios de usuario que se pueden insertar en cada archivo y la generación de informes.

El etiquetado de un archivo permite su almacenamiento como destacado en la base de datos del caso o como “notable” en el repositorio central. Si se marca como “notable”, el fichero será reconocido a posteriori por el sistema cuando se ejecute el módulo “Central Repository” sobre otra fuente de datos en la que también se encuentre el fichero. El etiquetado de un fichero como “notable”, por tanto, se almacena en el repositorio central.

Para etiquetar un fichero, basta pulsar en el botón derecho del ratón sobre el fichero y seleccionar una etiqueta en el menú “Add File Tag”, como se observa a continuación.



Los comentarios son notas de texto que pueden adicionarse a cada uno de los ficheros, al objeto de que el analista forense pueda recordad la utilidad o motivo de cada fichero. Dicha nota se almacenará en el espacio local asignado al caso.

Para adicionar un comentario a un fichero, basta pulsar en el botón derecho del ratón sobre el fichero y pulsar en “Add/Edit Central Repository Comment”, escribiendo el comentario en el cajetín emergente y pulsando en “OK”, como se observa a continuación.



Los informes se pueden generar pulsando en el botón “Generate Report”, del menú principal. Una vez pulsado el botón, se abre un menú en el que se puede seleccionar el tipo de formato de salida del informe, incluyendo HTML, Excel, etc. A continuación, puede observarse dicho menú.



Los informes son personalizables, pudiendo incluir todos los resultados, sólo los resultados etiquetados, o una selección específica de dichos resultados etiquetados, como se observa a continuación.



Algunos tipos de informes también pueden personalizarse con el escudo de la organización, o con una cabecera y un pie de página, etc.

Integración con módulos de terceros

Autopsy se puede integrar con módulos de terceros (third party), por ejemplo, desarrollados por los Cuerpos de Policía o por empresas o gabinetes especializados en análisis forense y peritaje informático, utilizando para ello el lenguaje de programación Python (también se pueden desarrollar módulos en Java).

Fuente: este post proviene de perito informatico colegiado, donde puedes consultar el contenido original.
¿Vulnera este post tus derechos? Pincha aquí.
Creado:
¿Qué te ha parecido esta idea?

Esta idea proviene de:

Y estas son sus últimas ideas publicadas:

Etiquetas: blog

Recomendamos