comando de Linux para borrar archivos en una tarjeta SD?

1

¿Existen comandos, herramientas o bibliotecas de Python para borrar de forma segura archivos específicos de una tarjeta SD o micro SD (dispositivos que utilizan memoria flash)?

Por ejemplo, con un disco duro magnético normal, puede utilizar el comando de limpieza para eliminar archivos de forma segura.

Tengo dificultades para encontrar este tipo de herramientas.

    
pregunta SomeRandomGuy12 07.08.2018 - 21:10
fuente

2 respuestas

1
  

¿Hay comandos, herramientas o bibliotecas de Python para borrar archivos de una tarjeta SD (memoria flash)?

Hay muchas herramientas que pueden "de forma segura" borrar archivos del disco de "nivel de bloque" (es decir, el disco que se expone al sistema operativo como un dispositivo de nivel de bloque, como a través de "/ dev / sdX " expediente). En términos forenses, este tipo de borrado significa que una "extracción física" típica de la tarjeta SD no mostrará ninguna evidencia de que los archivos estuvieran en el disco. Una sencilla herramienta que se puede usar para sobrescribir de forma segura los clústeres asignados, así como las entradas de directorio (aquí supongo que la tarjeta SD es FAT32) es el comando "dd" de Linux.

Su pregunta también parece indicar el hecho de que los datos en una tarjeta SD normalmente se almacenarán en un chip de memoria Flash, que se controla a través de un controlador de memoria. El controlador de memoria puede reservar partes de la memoria flash y asignar diferentes partes de la memoria flash al mismo bloque / sector lógico del dispositivo de bloque.

Por lo tanto, si alguien fuera "más allá" de la imagen forense a nivel de disco ordinario y realizara un análisis de "chip-off" de la tarjeta SD, es posible que los archivos que parecen estar completamente sobrescritos a un "nivel de disco" puedan En realidad, tienen algunos restos en el nivel de flash. Este tipo de análisis de "chip off" es a menudo costoso y propenso a errores, pero si desea asegurarse de que ni siquiera este tipo de análisis pueda recuperar datos de su chip de memoria Flash, puede probar algunas cosas diferentes. Por ejemplo, podría usar "dd" para sobrescribir la tarjeta SD varias veces con la esperanza de que el controlador de memoria no "guarde" ninguna parte de la memoria Flash (sin embargo, esto depende de saber cómo funciona realmente el controlador de memoria, que es a menudo de propiedad).

    
respondido por el hft 07.08.2018 - 23:03
fuente
1

El almacenamiento flash es intrínsecamente diferente del almacenamiento en disco giratorio a nivel físico y operativo. A diferencia de los discos giratorios, el almacenamiento flash tiene una cantidad limitada de ciclos de escritura. La solución para aumentar la vida útil de los medios a algo utilizable que los creadores de almacenamiento hayan creado se llama nivelación de desgaste . Esencialmente, lo que esto significa es que cuando escribe dos veces en un bloque lógico en el disco, es muy probable que escriba en dos bloques físicos diferentes en el medio de almacenamiento.

Las respuestas que afirman que simplemente reescribir en los bloques es suficiente no tienen esto en cuenta. Usted preguntó específicamente sobre las tarjetas SD, que de acuerdo con esta respuesta a veces se implementa en tarjetas SD, y otras veces no. Así que no es tan fácil darte una respuesta directa.

Además, antes de que se pueda reescribir el bloqueo físico, primero debe borrarse. Esto toma algún tiempo extra y reduce el rendimiento. Para empeorar las cosas, el dispositivo flash no tiene idea de qué bloques están en uso y cuáles no, a menos que se le indique. Esto es lo que trim se utiliza para. En pocas palabras, le indica al medio subyacente qué bloques puede liberar para que el medio de almacenamiento pueda realizar la operación de borrado en segundo plano durante el tiempo de inactividad. El comando de ajuste es específico del bus ATA / SCSI, y nuevamente, le preguntó acerca de las tarjetas SD. No sé si hay un comando equivalente para el mercado de tarjetas SD, pero es algo que debe tener en cuenta.

El resultado final es que el borrado en el almacenamiento Flash no es tan simple como borrar un disco duro giratorio. El hecho de que no pueda estar seguro de que está escribiendo en el mismo sector físico complica mucho las cosas. Lo mejor que puede esperar para borrar un archivo en una tarjeta SD es escribir en cada sector en la unidad.

Incluso esto no es perfecto. Algunos fabricantes tienen sectores de repuesto disponibles cuando un sector desgasta el bloque lógico que se asigna a un nuevo sector. Por lo tanto, es posible que incluso sobrescribir todos los sectores lógicos no sobrescriba todos los sectores físicos. (Por cierto, lo mismo ocurre con los discos giratorios).

    
respondido por el Steve Sether 08.08.2018 - 03:53
fuente

Lea otras preguntas en las etiquetas