The Information Systems and Computer Applications examination covers material that is usually taught in an introductory college-level business information systems course.

Guía para el borrado seguro de datos en unidades de estado sólido (SSD, Solid-State Drive)

by Sergio Hernando

El avance de la tecnologí­a es siempre un reto para las disciplinas que de ella dependen. El análisis forense no es una excepción, y aquí­ aplica igualmente el adaptarse o morir.

El tema que nos ocupa hoy son las unidades de estado sólido (SSD, Solid-State Drive) que están cada dí­a más cerca de los usuarios. Siguen siendo suficientemente costosas (en torno a 2.5 – 3 Euros por GB) para que no sean un producto tan extendido como los discos de platos tradicionales (donde es frecuente encontrar productos en la franja de los 0,04 Euros por GB) pero es de prever que la tecnologí­a de estado sólido baje fuertemente de precio en el futuro y que eventualmente se convierta en un producto con la misma popularidad y extensión de uso que los discos tradicionales hoy en dí­a. El paulatino desarrollo de mayores y mejores chips de memoria NAND para la construcción de discos SSD, y el más que previsible abaratamiento de sus costes de fabricación parecen indicar que la tecnologí­a SSD tiene mucho recorrido en este sentido, y que esto no ha hecho más que comenzar.

Prueba de la probable futura masificación de la tecnologí­a SSD es la progresiva implementación de métodos de tratamiento específicos en los sistemas operativos. Por citar un ejemplo, Microsoft introdujo soporte especializado para SSDs en Windows 7, desactivando funciones especí­ficas para solventar problemas de rendimiento en unidades tradicionales que ya no son necesarias cuando se emplean unidades de estado sólido, como la desfragmentación del medio, o las tecnologí­as de aceleración y precarga comoprefetching/superfetchingReadyBoost.

Una de los pilares básicos en el análisis forense es el análisis de los medios. Gran parte de los procesos forenses hoy en dí­a giran en torno a la extracción de información de un medio determinado, como por ejemplo, una unidad de disco, con lo que los conceptos de tecnologí­as forenses y antiforenses se ha desarrollado en extremo en este campo. Uno de los conceptos fundamentales en las técnicas antiforenses es el borrado seguro de datos, que puede ser resumido como el conjunto de acciones a realizar sobre un medio determinado para impedir la recuperación posterior de los datos que contení­a el medio antes de ser saneado.

El borrado seguro de datos ha sido tradicionalmente un campo relativamente estable. Cientos de maneras de hacerlo han surgido estos años, desde los métodos extremos como el borrado Gutmann hasta la simple pasada unitaria de ceros bit a bit, que es la que yo particularmente veo más sensata en la gran mayorí­a de escenarios de utilización de discos de platos. Este era un mundo tranquilo, hasta que llegaron las SSD.

El problema

Recientemente, como consecuencia de un trabajo de investigación realizado por el laboratorio de sistemas no volátiles de la UC San Diego, se diseñó un procedimiento mediante el cual es posible acceder directamente a los chips de memoria NAND de las unidades de estado sólido sin tener que pasar por la capa de traslación que correlaciona páginas de memoria flash lineal con las direcciones de bloques de disco, conocida como FTL (Flash Translation Layer). Los resultados aparecen en este gráfico:

ssd recovery

Entender la tabla es sencillo: por cada 1000 MB de datos, es posible recuperar unos 100 MB de media, dependiendo del método, en cualquier unidad SSD, incluso habiendo aplicado un método de borrado seguro. Este estudio tiene una consecuencia inmediata: lo que tan bien funciona en discos de platos, no funciona en SSD. Los detalles del porqué son técnicamente algo complejos y están resumidos con todo lujo de detalles en el paper Reliably Erasing Data from Flash-Based Solid State Drives, para quien quiera ampliar detalles.

La razón de la permanencia de datos en el chip no es otra que las inconsistencias provocadas por las traslaciones entre bloques de disco y chip NAND a través de la capa FTL, que puede provocar que la unidad presente bloques vací­os que sin embargo tienen páginas de memoria asociadas repletas de datos. En estos casos, la FTL escribe nuevos datos en una ubicación distinta y actualiza sus í­ndices con dicha localización, pero los datos originales permanecen donde estaban, estando únicamente desvinculados en la FTL y no fí­sicamente eliminados en el chip. En cierta manera me recuerda a los sistemas EXT2/3, que años atrás no desvinculaban los bloques indirectos de datos al hacer operaciones en el sistema de ficheros, lo que permití­a recuperar información en espacio no asignado.

¿Soluciones?

El problema definitivamente escapa a los usuarios en el sentido que las técnicas de borrado seguro tradicionales no garantizan la desaparición de los datos, tal y como hemos visto, y poco o nada podemos hacer para prevenir el comportamiento erróneo de las implementaciones FTL descritas.

Ante el escenario descrito parece que lo más sensato, si se quiere realizar un borrado seguro de una unidad SSD, es someterla a cifrado completo y luego realizar una limpieza de los datos y las llaves criptográficas, lo que solventarí­a los casos hipotéticos en los que alguien pueda recuperar datos directamente de los chips, puesto que la información estarí­a cifrada. Es por esto que lo más sensato para usuarios de discos SSD es, como punto de partida, realizar cifrados completos de disco nada más instalar el sistema operativo que los gobernará.

El borrado seguro ideal requerirá, cuando se quiera ejecutar, la eliminación de las llaves criptográficas utilizadas para el cifrado del disco y la sobreescritura de cada página de memoria del chip NAND. Habida cuenta que esto requerirá desmantelar la unidad para operar directamente sobre el chip si se quiere realizar un saneado completo en una pasada, podemos intentar que el número de datos remanentes perdidos en los mapeos de la FTL sea mí­nimo aumentando el número de pasadas. De acuerdo al estudio, el grueso de unidades probadas consiguió eliminar completamente los datos tras ejecutar dos pasadas, lo que abre un nuevo frente de problemas: cada pasada requirió entre 58 y 121 horas, lo que harí­a que 2 pasadas puedan hacer que el saneado de la unidad se vaya a las 220 horas (casi 10 dí­as) lo que provoca que el método sea inviable en muchos escenarios.

A modo de resumen estas reglas pueden hacer que se minimice el riesgo de sufrir recuperaciones no deseadas de nuestros discos de estado sólido:

  1. Para todo los casos, cifrar el disco nada más instalar el sistema operativo. Por ejemplo, con TrueCrypt.
  2. Si se quiere reutilizar el disco sin cambiar de propiedad, un formateo convencional o una pasada simple de ceros es suficiente.
  3. Si se quiere reutilizar el disco cambiando de propiedad, por ejemplo, porque vamos a regalarlo o venderlo, realizar dos pasadas con un método seguro. Se puede utilizar alguno de los métodos presentes enDBAN.
  4. Si se quiere desechar el disco, los métodos de desmagnetización no sirven en las SSDs. Recurrid a un servicio de gestión de medios especializado, o desmantelad la unidad y destruid fí­sicamente los chips NAND. Aunque sea rústico, someter a martillazos una unidad es muchas veces la mejor manera de impedir la recuperación de datos🙂

Comments are closed.