Scalpel herramienta de recuperación del sistema archivos borrados y carpetas en Linux. Esta herramienta se utiliza para recuperar archivos del sistema, es una herramienta de código abierto para sistemas operativos Linux. Para la recuperación de datos borrados es un fork actualizado de foremost, aunque más rápida y más eficiente en el rastreo y búsqueda de patrones de archivos.
Scalpel utiliza una base de datos que almacena patrones de bytes conocidos de archivos e identifica los archivos borrados y recuperar los recupera de manera instantánea. Muchas veces sucede que por accidente o por error de sistema se pide información de archivos o carpetas que son importantes. Scalpel es una herramienta que nos permite restaurar información que puede haber eliminado. Cuando eliminamos información el sistema operativo normalmente sólo elimina los metadatos del archivo, tales como nombre de archivo, propietario y ubicación. Los datos del usuario se mantiene en el medio de almacenamiento hasta que se sobrescribe.
Scalpel analiza un disco o un dispositivo de almacenamiento buscando patrones de bytes que responden a las cabeceras de archivos y pies de archivos, de esta manera intentara recuperar los datos pertenecientes al archivo. Scalpel puede detectar diversos tipos de archivos. Soporta distintas estructura de disco y formatos de archivos para ello utiliza una base de datos con encabezados y pies de de archivos con reglas de expresión para detectar que formato puede recuperar.
Muchas distribuciones tienen Scalpel en sus repositorios aunque conviene tener Scalpel actualizado para añadir nuevas expresiones regulares para los encabezados y pies de archivos. Scalpel brinda un rendimiento de escaneo a gran velocidad, durante el rastreo lee una base de datos de encabezado y pie de los formatos de archivos y extrae los archivos que coinciden entre un conjunto de de definiciones y expresiones regulares de un dispositivo.
Scalpel soporta formatos de disco desde FAT, NTFS, ext2 o particiones sin formato. Es útil tanto para la investigación forense digital, como para recuperación de archivos. Esta herramienta es parte de Seulkit que se integra con Autopsy que vimos en el tutorial de análisis forense de discos duros y particiones con Autopsy.
Para instalarlo podremos ir a una ventana de terminal y escribir el siguiente código:
sudo apt-get install scalpel
A continuación deberemos configurar Scalpel para ello podemos ubicar el archivo de instalación mediante el siguiente comando:
whereis scalpel
A continuación abrimos el archivo con algún editor de texto como nano o vi. Por defecto, todas las líneas de las expresiones se comentan con # en el archivo de configuración. En el archivo de configuración scalpel.conf, hay algunas líneas que contienen los tipos de archivos que podemos recuperar. Por ejemplo jpg, png, doc, etc.
Aquí descomentamos las extensiones de archivos que queremos que Scalpel busque, sino están descomentadas esos archivos serán ignorados.
Un paso importante, si encontramos un error al ejecutar debemos crear manualmente la carpeta /et/scalpel y dentro copiar el archivo scalpel.conf.
A continuación ejecutamos scalpel desde su carpeta, indicamos la carpeta donde se guardan los archivos recuperados.
scalpel -c /etc/scalpel/scalpel.conf /dev/sda -o prueba
En la imagen podemos observar como se han recuperado 16 GB en apenas un 3% del total del disco. El parámetro -o es output, indica un directorio de salida, en la que desea restaurar los archivos borrados. Debemos verificar que este directorio está vacío antes de ejecutar cualquier comando de lo contrario nos dará un error.
Scalpel comenzará el proceso de escaneo y en función del espacio de disco o dispositivo que está intentando escanear y recuperar, por lo que puede tomar mucho tiempo para recuperar los archivos borrados.
Si queremos recuperar datos de un pendrive o un dispositivo externo debemos conocer cual es la partición mediante el comando fdsik, si es un pendrive o memoria flash generalmente se ubicará como partición sdb.
scalpel -c /etc/scalpel/scalpel.conf /dev/sdb -o recu
Dentro de la carpeta se guarda en archivo denominado audit.txt que contiene información de todo el proceso y los archivos recuperados.
Podemos observar en este caso que se han recuperado archivos png desde el pendrive y los tenemos a disposición en la carpeta que denominamos recu. Una de las utilidades de Scalpel es copiar el contenido de un dispositivo externo USB roto o con fallas y crear una imagen de disco img o dd, así luego podemos verlo desde otros software o montarlo, el código para generar la imagen de disco es la siguiente:
scalpel -c -c /etc/scalpel/scalpel.conf /dev/sdb -o recuperados.ddScalpel es ideal para trabajar en servidor con Centos para recuperar archivos desde la ventana de terminal en forma remota. Scalpel funciona en otras distribuciones de Linux orientadas a servidores, incluyendo:
- Red Hat
- Fedora
- Debian.
Una de las desventajas que tiene Scalpel es que hay que conocer muy bien como es la estructura de un disco o un dispositivo de almacenamiento y los comandos para gestionar sus particiones, ademas cómo funciona el sistema de archivos.
Cada archivo eliminado permanece en algún lugar de su disco duro. siendo el sistema operativo el que mantiene un puntero a la lista de bloques del dispositivo de almacenamiento ue contiene los datos de los archivos,
Normalmente en Windows tenemos muchas herramientas muy simples de utilizar como Recuva que se utiliza para recuperación de datos perdidos, pero en Linux sólo unos pocos si lo queremos utilizar a nivel servidor con seguridad.
Scalpel se ejecuta a través de todo el disco duro, funciona muy bien con dispositivos de almacenamiento externo y recupera archivos perdidos segun expresiones regulares lo que lo hace muy versátil.
Buen aporte, Gracias