Forma especial del sistema de archivos para evitar la recuperación después de un borrado seguro de datos

7

Estoy buscando un sistema de archivos con correcciones de error razonables, pero resistente contra forense después de borrado.

Digamos, contenedor cifrado mediante un bucle montado como ext4 - sistema de archivos de diario. Este es un buen rendimiento y seguro de muchas maneras.

La limpieza en este escenario es una destrucción al menos de inicio de crypto-container (diario de ext4). Es rápido. La recuperación requiere una gran cantidad de energía: clave + contraseña + destruye el prefijo del contenedor de cifrado.

¿Existe un sistema de archivos especial con cifrado y una función de borrado excelente? "Genial", me refiero a rápido e irrecuperable.

Por ejemplo, el diario al inicio del sistema de archivos no contiene una dirección de archivos, sino un mapa clave de bloques ubicados aleatoriamente en el área de memoria. Destruir esta clave significa destruir una secuencia de todo el sistema de archivos. El archivo en dicho sistema de archivos se encuentra en la secuencia de la memoria no fragmentada. Más todo el sistema de archivos encriptado.

La eliminación requiere volver a escribir el diario (mapa) del sistema de archivos solamente.

Diga, reescriba el mapa y la clave 30 intentos, y ningún NSA, ninguna NASA, ninguna CIA puede recuperar el sistema de archivos borrado.

    
pregunta trankvilezator 20.09.2013 - 17:16
fuente

4 respuestas

13

La forma correcta de "borrar" los datos es utilizar encriptación : nunca permita que datos sin cifrar lleguen al disco. Si lo hace, entonces destruir la clave de descifrado es suficiente para destruir los datos. La clave de descifrado es pequeña y, en muchos casos, puede mantenerla solo en la memoria RAM (por ejemplo, la escribe al inicio, como una "contraseña", que realmente significa "una clave que un humano recuerda"); Si la clave está en la RAM y permanece solo en la RAM, destruirla es tan simple como apagar la alimentación (sin embargo, tenga en cuenta que el contenido de la RAM puede resistir la pérdida de potencia para un unos segundos o minutos ).

Eliminación de archivos es lo que haces cuando no hiciste las cosas de la manera correcta. Usted escribió información confidencial en un medio físico, sin ningún tipo de cifrado. Y te gustaría "arreglar" eso. Hay tres problemas principales con eso:

  • Eliminación de archivos no sobrescribe los datos en el medio físico; simplemente lo marca como reutilizable para otros archivos.
  • A veces, incluso escribir sobre los datos puede no destruirlos. Aquí es donde intervienen los llamados "destructores de archivos", al sobrescribir los datos varias veces con patrones especiales que deberían destruir todos los rastros de los datos pasados. Sin embargo, tales trituradoras son bastante específicas de la tecnología de disco real y, en la práctica, bastante específicas de la tecnología utilizada por los discos hace 12 años; en los discos modernos, las destructoras son probablemente sea inútil e innecesario. A la inversa, con SSD, muchos datos pueden permanecer fuera del alcance de las trituradoras más exhaustivas. Por lo tanto, las destructoras de archivos son excesivas o insuficientes, sin un punto intermedio.
  • Las copias de partes de los datos del archivo se pueden almacenar en otras áreas. Esto puede suceder con memoria virtual porque los datos del archivo, antes de estar en los archivos, estaban en la RAM. Esto también puede suceder con sistema de archivos de registro por diario (dependiendo de la implementación y configuración del sistema de archivos).

Es probable que cualquier solución basada en el "borrado" de archivos sea ineficiente e incompleta. De todos modos, a pesar de lo incompleto, algunas personas han tratado de hacer algún tipo de destrucción automática. Esto se puede hacer en varios niveles; this lo hace parcheando la biblioteca unlink() C Llamada de función (a través de un truco LD_PRELOAD). Sin embargo, el proceso vinculado estáticamente aún lo evitaría (pero hay muy pocas aplicaciones vinculadas estáticamente en una instalación típica de Linux). No lo recomendaría (y el propio autor se muestra cauteloso); En particular, la destrucción de archivos en un SSD no solo es inefectiva (ver más arriba), sino que también reduce notablemente la vida útil de dicho SSD.

    
respondido por el Thomas Pornin 20.09.2013 - 18:04
fuente
1

No hay un sistema de archivos [línea principal] disponible que realice la forma en que lo describe / desea, principalmente porque no es muy eficiente como sistema de archivos. No significa que sea imposible, sino que simplemente no se hace a menudo y no ha alcanzado un escenario de uso común. De hecho, lo que describe es más parecido a un sistema de archivos encriptado que a uno borrado rápidamente; más sobre eso en un segundo.

Si bien no es tan "rápido" como creo que estás describiendo, el software DBaN (Darik's Boot and Nuke, dban.org) proporciona una limpieza extremadamente exitosa de datos de medios magnéticos físicos. Lo sé por experiencia en la recuperación de datos, incluso con escáneres magnéticos de bajo nivel. Una vez que suficientes datos aleatorios han sobrescrito sus datos de destino, los medios magnéticos físicos son inútiles para fines de recuperación.

Para los métodos "rápidos" tiene que utilizar el cifrado completo del disco (piense en TrueCrypt o BitLocker de Microsoft o una destrucción del disco físico. El cifrado "confunde" los datos por lo que es inutilizable sin la clave privada. La destrucción elimina los medios físicos, por lo que no hay datos recuperables (normalmente desmagnetizando las superficies magnéticas y luego alterándolos físicamente para que permanezcan inutilizables permanentemente) Garner es un buen destructor que primero desmagnetiza antes de perforar los platos. Nadie va a obtener datos de una unidad después de eso.

    
respondido por el Ruscal 20.09.2013 - 20:32
fuente
0

Con un sistema como el de las mangueras de goma sería extremadamente fácil destruir un sistema de archivos. Simplemente elimine la clave maestra para una partición de manguera de goma y ya no se puede descodificar ni detectar.

    
respondido por el WAR10CK 17.09.2015 - 19:54
fuente
0

¿Está buscando una manera de borrar un sistema de archivos completo o archivos individuales? Borrar un sistema de archivos completo de forma segura es fácil. Use algo como LUKS, que usa "bandas anti-forenses", una técnica para extender su contraseña a aproximadamente 256 KiB, lo que hace más probable que un intento de destruir la clave tenga éxito. Todo lo que se necesita son unos pocos bytes para ser destruido para que sea imposible de recuperar, y ningún sector reasignado podría provocar que partes de la clave queden atrás. Destruir todo el sistema de archivos se vuelve tan simple como ejecutar cryptsetup erase /dev/mapper/sda_crypt , para destruir de forma instantánea y segura todo lo que hay en ese volumen.

Si está buscando la capacidad de hacer eso por archivo para que la eliminación cause la destrucción instantánea y segura de archivos y metadatos, no creo que tenga mucha suerte. No conozco ningún sistema de archivos que sea capaz de hacer eso. Los sistemas de archivos que admiten el cifrado pueden borrarse por completo, pero los archivos individuales aún están cifrados con su clave maestra. Sin embargo, algunos sistemas de archivos admiten el atributo de archivo 's' (establecido por chattr), que le dice al controlador del sistema de archivos que sobrescriba todos los bloques en ese archivo con ceros cuando está desvinculado. Sin embargo, los populares sistemas de archivos ext4 y btrfs no lo admiten. Tampoco elimina los metadatos, por lo que aún puede haber fuga de información en forma de nombre de archivo, tamaño, número de inodo y otros atributos de metadatos.

Un sistema de archivos ideal almacenaría una clave de cifrado aleatoria en cada inodo de archivo y cifraría cada bloque con esa clave. Una vez eliminado, el inodo podría borrarse de manera segura, junto con la clave, haciendo que todos los bloques que apunta a inútiles. Esto proporcionaría una forma sencilla para que los sistemas de archivos como ext4 soporten el atributo 's', como mínimo.

    
respondido por el guest 24.12.2016 - 11:15
fuente

Lea otras preguntas en las etiquetas