La recuperación de archivos es el proceso de reconstruir archivos informáticos a partir de fragmentos en ausencia de metadatos del sistema de archivos .
Se utiliza en informática forense y recuperación de datos. El proceso de recuperación de datos se suele emplear en soportes de almacenamiento con un sistema de archivos dañado o en áreas de almacenamiento que figuran como libres en el sistema de archivos existente.
Introducción y principios básicos
Todos los sistemas de archivos contienen metadatos que describen su estructura. Como mínimo, esto incluye la jerarquía de carpetas y archivos, con sus respectivos nombres. El sistema de archivos también registra la ubicación física de cada archivo en el dispositivo de almacenamiento. Como se explica más adelante, un archivo puede estar fragmentado en distintas direcciones físicas.
La recuperación de archivos es el proceso de intentar recuperar archivos sin estos metadatos. Esto se hace analizando los datos sin procesar e identificando qué son (texto, ejecutable, png, mp3, etc.). Esto se puede hacer de diferentes maneras, pero la más simple es buscar la firma del archivo o "números mágicos" que marcan el principio y/o el final de un tipo de archivo en particular. [ 1 ] Por ejemplo, cada archivo de clase Java tiene como sus primeros cuatro bytes el valor hexadecimal . Algunos archivos también contienen pies de página, lo que hace que sea igual de simple identificar el final del archivo.CA FE BA BE
La mayoría de los sistemas de archivos, como la familia FAT y el Fast File System de UNIX , funcionan con el concepto de clústeres de tamaño fijo e igual. Por ejemplo, un sistema de archivos FAT32 se divide en clústeres de 4 KiB cada uno. Cualquier archivo menor de 4 KiB cabe en un solo clúster, y nunca hay más de un archivo en cada clúster. Los archivos que ocupan más de 4 KiB se distribuyen entre varios clústeres. A veces, estos clústeres son contiguos, mientras que otras veces se encuentran dispersos en dos o incluso muchos más fragmentos , cada uno de los cuales contiene varios clústeres contiguos que almacenan una parte de los datos del archivo. Obviamente, los archivos grandes tienen más probabilidades de estar fragmentados.
Simson Garfinkel [ 2 ] informó estadísticas de fragmentación recopiladas de más de 350 discos que contenían sistemas de archivos FAT , NTFS y UFS . Mostró que, si bien la fragmentación en un disco típico es baja, la tasa de fragmentación de archivos forensemente importantes como correo electrónico, JPEG y documentos de Word es relativamente alta. Se encontró que la tasa de fragmentación de archivos JPEG era del 16%, los documentos de Word tenían una fragmentación del 17%, AVI tenía una tasa de fragmentación del 22% y los archivos PST ( Microsoft Outlook ) tenían una tasa de fragmentación del 58% (la fracción de archivos que se fragmentan en dos o más fragmentos). Pal, Shanmugasundaram y Memon [ 3 ] presentaron un algoritmo eficiente basado en una heurística voraz y poda alfa-beta para reconstruir imágenes fragmentadas. Pal, Sencar y Memon [ 4 ] introdujeron la prueba de hipótesis secuencial como un mecanismo eficaz para detectar puntos de fragmentación. Richard y Roussev [ 5 ] presentaron Scalpel, una herramienta de código abierto para el tallado de archivos [ 6 ] existente desde 2005 e inicialmente basada en Foremost. [ 7 ]
La recuperación de archivos es una tarea sumamente compleja, con un número potencialmente enorme de permutaciones a probar. Para que esta tarea sea manejable , el software de recuperación de archivos suele utilizar ampliamente modelos y heurísticas. Esto es necesario no solo desde el punto de vista del tiempo de ejecución, sino también para la precisión de los resultados. Los algoritmos de recuperación de archivos más avanzados utilizan técnicas estadísticas, como las pruebas de hipótesis secuenciales, para determinar los puntos de fragmentación.
Motivación
En la mayoría de los casos, al eliminar un archivo, se borra la entrada en los metadatos del sistema de archivos, pero los datos reales permanecen en el disco. La recuperación de archivos permite recuperar datos de un disco duro cuyos metadatos se eliminaron o dañaron. Este proceso puede tener éxito incluso después de formatear o reparticionar la unidad.
La recuperación de archivos puede realizarse utilizando software gratuito o comercial y a menudo se lleva a cabo junto con exámenes forenses informáticos o junto con otros esfuerzos de recuperación (por ejemplo, reparación de hardware) por parte de empresas de recuperación de datos . [ 8 ] Si bien el objetivo principal de la recuperación de datos es recuperar el contenido del archivo, los examinadores forenses informáticos a menudo están igualmente interesados en los metadatos, como quién era el propietario de un archivo, dónde se almacenó y cuándo se modificó por última vez. [ 9 ] Por lo tanto, si bien un examinador forense podría usar la recuperación de archivos para probar que un archivo alguna vez se almacenó en un disco duro, es posible que necesite buscar otras pruebas para probar quién lo puso allí.
Esquemas de tallado
Talla de hueco bifragmentario
Garfinkel [ 2 ] introdujo el uso de la validación rápida de objetos para reconstruir archivos divididos en dos partes. Esta técnica se conoce como reconstrucción de huecos de bifragmentos (BGC). Se identifican un conjunto de fragmentos iniciales y un conjunto de fragmentos finales. Los fragmentos se reconstruyen si, en conjunto, forman un objeto válido.
SmartCarving
Pal [ 3 ] desarrolló un método de recuperación de datos que no se limita a archivos bifragmentados. Esta técnica, conocida como SmartCarving, utiliza heurísticas sobre el comportamiento de fragmentación de sistemas de archivos conocidos. El algoritmo consta de tres fases: preprocesamiento, cotejo y reensamblaje. En la fase de preprocesamiento, los bloques se descomprimen o descifran según sea necesario. En la fase de cotejo, los bloques se ordenan según su tipo de archivo. En la fase de reensamblaje, los bloques se colocan en secuencia para reproducir los archivos eliminados. El algoritmo SmartCarving es la base de las aplicaciones Adroit Photo Forensics y Adroit Photo Recovery de Digital Assembly.
Grabación de volcados de memoria
Es posible extraer instantáneas de la memoria volátil (RAM) de los ordenadores. Esta técnica se utiliza habitualmente en la informática forense, permitiendo a los investigadores acceder a pruebas efímeras. Estas pruebas incluyen imágenes y páginas web, documentos, chats y comunicaciones recientes realizadas a través de redes sociales. Por ejemplo, LiME [ 10 ] puede utilizarse junto con Volatility [ 11 ] para realizar esta tarea. Si se utilizó un volumen cifrado ( TrueCrypt , BitLocker , PGP Disk ), se pueden extraer las claves binarias de los contenedores cifrados y utilizarlas para montar dichos volúmenes instantáneamente. El contenido de la memoria volátil se fragmenta. Belkasoft desarrolló un algoritmo de extracción propio para permitir la extracción de conjuntos de memoria fragmentada (BelkaCarving).
Véase también
Referencias
- ↑ "Firmas de archivo" .
- 1 2 Simson Garfinkel , "Carving Contiguous and Fragmented Files with Fast Object Validation" Archivado el 23 de mayo de 2012 en Wayback Machine , en Actas del taller de investigación forense digital de 2007 , DFRWS, Pittsburgh, PA, agosto de 2007
- 1 2 A. Pal y N. Memon, "Reensamblaje automatizado de imágenes fragmentadas mediante algoritmos voraces: la URL ya no es válida" en IEEE Transactions on Image Processing, febrero de 2006, págs. 385–393
- ↑ Pal, T. Sencar y N. Memon, "Detección de puntos de fragmentación de archivos mediante pruebas de hipótesis secuenciales" , Investigaciones digitales, otoño de 2008.
- ↑ Richard, Golden, Roussev, V., "Scalpel: un extractor de archivos frugal y de alto rendimiento" Archivado el 9 de febrero de 2019 en Wayback Machine , en Actas del Taller de Investigación Forense Digital de 2005, DFRWS, agosto de 2005
- ↑ "Sleuthkit/Scalpel" . GitHub .
- ↑ "Foremost" . foremost.sourceforge.net .
- ↑ "Servicios profesionales de recuperación de datos | SERT Data Recovery Company" . Archivado del original el 12 de mayo de 2015. Consultado el 5 de mayo de 2015 .
- ↑ "Comprender los archivos eliminados y su significado - HGExperts.com" . www.hgexperts.com .
- ↑ "504ensicsLabs/LiME" . GitHub .
- ↑ "Volatilityfoundation/Volatility" . GitHub .
- Recuperación de datos