El problema con la eliminación de archivos es que los datos del archivo son solo una pequeña parte de lo que realmente se guarda en su disco. En un sistema de archivos moderno habrá muchos metadatos y otros artefactos dispersos alrededor del disco:
- Entradas de diario en sistemas de archivos de diario, por ejemplo, NTFS, ext3, ext4.
- Buscar entradas de índice.
- Entradas de caché de captura previa / superfetch.
- Copias de sombra.
- cachés de imágenes en miniatura, por ejemplo, Thumbs.db / Win7 de la base de datos de miniaturas de WinXP.
- Archivos temporales, por ejemplo, de la extracción ZIP / RAR.
- Flujos de datos alternativos (ADS), por ejemplo, Descriptores EFS FEK.
- Datos de registro de objetos COM / .NET.
- Use sectores de nivelación en SSD / unidades flash USB.
Esto presenta un desafío. Simplemente eliminando los datos del archivo de forma segura solo se eliminarán esos datos. No hay garantía de que los metadatos no contengan datos confidenciales, ni que sean suficientes para reconstruir todo el archivo o hacer coincidir su hash con el de un texto plano conocido.
Por ejemplo, incluso si se elimina el archivo, podríamos detectar lo siguiente:
- El nombre del archivo y cuándo fue creado / eliminado / modificado.
- Un hash criptográfico (o suma de comprobación, por ejemplo, CRC32) del archivo, desde una base de datos de indexación.
- Aparición de ciertas palabras o frases dentro del archivo desde un índice de contenido de búsqueda.
- Nombre de la compañía, nombre del producto, interfaces de objetos COM, espacios de nombres .NET, etc. si fuera un ejecutable de PE.
- Una miniatura si el archivo era una imagen.
- Varios metadatos de flujos de datos alternativos latentes.
- Texto plano parcial de archivos temporales y sectores de nivelación de desgaste.
- Recuperación completa de texto plano de instantáneas o archivos temporales.
Identificar las ubicaciones de estos y eliminarlos de manera adecuada es engorroso e incluso puede que no sea posible en algunos casos. Lo mejor que puede hacer es revisar y borrar manualmente todas las copias de seguridad, eliminar los archivos, borrar sus cachés, borrar su base de datos de miniaturas, luego hacer un pase de cipher /W
para asegurarse de que se borre la mayor parte. Desafortunadamente, incluso esto no garantiza nada, ya que algunos de ellos se almacenan en archivos y estructuras que solo se recortan o modifican en lugar de eliminar adecuadamente, lo que da como resultado bloques de datos que se desvinculan de la estructura pero no se borran.
Entonces, ¿cómo podemos solucionar esto? La única forma real de hacerlo es con el cifrado completo del disco. Use un estándar de la industria como TrueCrypt para cifrar todo su disco duro, usando una contraseña segura. Incluso esto no es 100% a prueba de fallas en SSD con nivelación de desgaste (en cuyo caso TRIM y Secure Erase son buenas opciones) pero lo protege contra todos los ataques prácticos relevantes, siempre y cuando no esté preocupado de que los gobiernos lancen un presupuesto ridículo recuperando tus datos.
Por supuesto, si está realmente paranoico, la única solución garantizada es destrucción física completa . Esto generalmente se logra utilizando una trituradora de discos industrial que corta físicamente el disco en pequeños cubos y, a menudo, implica un pase a través de un campo magnético fuerte. Para fines gubernamentales y militares, estos cubos a menudo se funden en un horno después de una buena medida.