Borrado seguro de archivos con Secure Delete

srmComo muchos sabéis el hecho de mandar un archivo a la papelera y darle a eliminar, no significa que ese archivo no esté accesible utilizando algún software de recuperación de datos.

Para evitar esto existen programas que trituran y/o sobreescriben con datos aleatorios varias veces el contenido que permanece en el disco, protegiéndolo esa información de miradas no deseadas.

Uno de los más antiguos pero todavía muy efectivo es Secure Delete, el cual además incluye técnicas avanzadas para eliminar cualquier resto de información en la memoria RAM, en el espacio del disco que está libre, así como los que se almacenan de manera temporal en la memoria de intercambio (swap).

Secure Delete se basa principalmente en el conocido método Gutman, un algoritmo para eliminar el contenido de un disco duro sobreescribiendo varias veces la región con los archivos que se quieren borrar.

Esta es la secuencia de acontecimientos que llevan al borrado seguro del archivo o partición en Secure Delete:

  • 1 pasada con 0xff
  • 5 pasadas aleatorias con /dev/urandom, que es un archivo que seguro os suena porque se utiliza mucho en GNU/Linux para labores de generar entropía y número aleatorios a la hora de cifrar.
  • Se sobreescribe 27 veces utilizando los valores definidos por Peter Gutmann
  • Otras 5 pasadas con /dev/urandom
  • Se renombra el archivo a un valor aleatorio
  • Se trocea el archivo
Instalación en Linux

Antes de ponernos con su funcionamiento, vamos a ver como instalarla en alguna de las principales distribuciones GNU/Linux:

  • En openSUSE, la podemos instalar mediante 1 click install seleccionando nuestra versión de la distro (Tumbleweed en mi caso )
  • En Arch Linux y derivadas como Manjaro, Antergos o ArchBang
yaourt -S secure-delete
  • En Debian y distros de la familia como Ubuntu, Linux Mint o Elementary
sudo apt-get install secure-delete
  • En Fedora
su -c

yum install srm
Funcionamiento

Como habréis adivinado Secure Delete se ejecuta desde la linea de comandos.

Para borrar un archivo ejecutaremos el comando srm seguido del nombre del archivo, por ej:

srm secrets.txt

Si lo queremos en modo verbose le añadimos el parámetro -v

srm -v secrets.txt

Que oímos que están echando la puerta abajo y no tenemos mucho tiempo…con el parámetro -l hacemos un borrado rápido con una sola pasada de escritura sobre los datos (y por lo tanto mucho más inseguro)

srm -l secrets.txt

Puede que hace tiempo hayamos “borrado” un archivo y ahora eses bits de información, andén sueltos por el espacio marcado como libre de alguna partición o memoria USB.

Utilizando sfill escribimos esa partición de modo que no se pueda recuperar absolutamente nada de dicho espacio libre (en este ejemplo la partición home, lo que puede llevar muchas horas…)

sudo sfill /home

Algo similar podemos hacer con la memoria swap. Para ello tenemos que saber primero cual es la partición correspondiente a esta memoria de intercambio

swapon -s

Deshabilitarla

sudo swapoff /dev/sda5

por último borramos su contenido

sudo sswap /dev/sda5

y la volvemos a habilitar

sudo swapon /dev/sda5

De la misma manera con la memoria RAM, en este caso utilizando el módulo sdmen. Como este proceso es más lento se recomienda utilizarlo con el parámetro -ll que le proporciona 2 pasadas de escritura con 0x00. Sería algo así:

sudo sdmem --ll

Por último como siempre que hablamos de trabajar con particiones y borrar datos, se recomienda mucha precaución a la hora de ejecutar los comandos.

Otras opciones que os pueden interesar para eliminar archivos de forma segura son wipe, Bleachbit y Shred.

9 thoughts on “Borrado seguro de archivos con Secure Delete”

  1. Kendiu says:

    Interesante aunque eso me deja una duda, si se sobreescriben los datos utilizando ese proceso ¿ no significaría un desgaste considerable para el sector del disco duro en el cual se ejecute la operación ?

    1. tannhausser says:

      Es posible, supongo que también dependerá si borras un solo archivo o pretendes sobreescribir el espacio libre de una partición entera que se te puede ir la vida esperando…en todo caso lo de las 35 veces me parece una exageración.

      El propio Gutmann dice que en realidad no hace falta tanto en los sistemas actuales:

      “In the time since this paper was published, some people have treated the 35-pass overwrite technique described in it more as a kind of voodoo incantation to banish evil spirits than the result of a technical analysis of drive encoding techniques. As a result, they advocate applying the voodoo to PRML and EPRML drives even though it will have no more effect than a simple scrubbing with random data. In fact performing the full 35-pass overwrite is pointless for any drive since it targets a blend of scenarios involving all types of (normally-used) encoding technology, which covers everything back to 30+-year-old MFM methods (if you don’t understand that statement, re-read the paper). If you’re using a drive which uses encoding technology X, you only need to perform the passes specific to X, and you never need to perform all 35 passes. For any modern PRML/EPRML drive, a few passes of random scrubbing is the best you can do. As the paper says, “A good scrubbing with random data will do about as well as can be expected”. This was true in 1996, and is still true now.”

      En shred ese aspecto se puede personalizar mejor

  2. carlosky77 says:

    Uso shred con 3 a 5 pasadas. Siempre encontré que 35 veces era una exageración. Aunque la otra vez estaba leyendo que en los discos de estado sólido no sirve las herramientas de borrado seguro. No me acuerdo cual era el motivo. Podrías indagar en eso mi estimado Replicante para refutar o si estoy en lo correcto

    1. tannhausser says:

      Con los SSD también funciona, pero siempre ha habido el temor de que excesivos borrados de seguridad podrían acortar la vida útil de la unidad.

      Con esas 3 o 5 pasadas que tu comentas amigo carlosky y realizadas de forma ocasional no deberías tener problemas

      1. carlosky77 says:

        Me puse yo mismo a investigar (tuve un poco de tiempo libre en mi trabajo, mientras estaba buscando una info en mi disco de 4TB) y efectivamente el borrado seguro no es aplicable en discos de estados sólidos ya que se puede recuperar información borrada. Recomiendan encriptar el disco. Pueden revisar los sgtes. links:

        https://www.ccn-cert.cni.es/index.php?option=com_content&view=article&id=2659%3Ael-borrado-seguro-de-informacion-en-dispositivos-de-estado-solido-ssd-no-es-fiable-cos-herramientas-actuales&catid=80&Itemid=197&lang=va

        http://www.sahw.com/wp/archivos/2011/02/27/guia-para-el-borrado-seguro-de-datos-en-unidades-de-estado-solido-ssd-solid-state-drive/

        Así que ojo, ya están advertidos

        1. tannhausser says:

          He estado leyendo un poco el paper en que están basados eses artículos y es como tu dices…con los SSD la única solución es un buen cifrado con LUKS y si te quieres deshacer de el, martillo y taladro 🙂

          Un saludo y gracias por los enlaces!

  3. Kendiu says:

    Gracias por la respuesta. En caso de que la NSA te este buscando Replicante deja que sobreescriba 35 veces la evidencia ¬_¬

    1. tannhausser says:

      De nada Kendiu! Bah por la NSA no creo que haya que preocuparse y lo del drone que estoy viendo por la ventana seguro que es una coinc………………….

      1. Anger Pulido says:

        XD jajaja.

Deja un comentario