una todos significa que persona para dato aleatorio linux random zero

linux - todos - / dev/zero o/dev/random-¿qué es más seguro y por qué?



que significa random para todos (2)

¿Alguien puede decirme por qué se prefiere / dev / random para seguridad mientras se borran datos de un disco duro?


Estás haciendo la pregunta incorrecta. Intentar borrar de forma segura un disco escribiendo en bloques visibles para el usuario ignora por completo el hecho de que podría haber datos del usuario en sectores marcados como malos (pero que aún contienen datos confidenciales legibles).

Por supuesto, es posible evitarlo emitiendo comandos ATA, pero un solo comando de borrado seguro ATA hará todo lo que quiera desde el principio. Consulte https://ata.wiki.kernel.org/index.php/ATA_Secure_Erase para obtener detalles sobre cómo usar hdparm para emitir el comando Secure Erase con la opción --security-erase .


La respuesta simple, /dev/random no es preferida. Ambos son igualmente seguros. Use /dev/zero para una verificación más sencilla. También menos uso de CPU y posiblemente más rápido.

Respuesta más completa. Para los discos duros modernos, la densidad del plato es tal que es imposible obtener señales de sectores sobrescritos de forma incompleta del disco, algo que mucha gente como Gutmann escribió hace muchos, muchos años. En lo que respecta a los discos duros modernos (lo colocaría como un disco duro cuya capacidad se puede medir en gigabytes o mejor), si se sobrescribe, se va. Fin de la historia. Entonces, no importa a qué cambie la información. Solo que cambiaste los datos.

Para agregar esto, incluso si limpia un disco duro por completo, es posible que aún haya datos en la unidad en sectores que fueron reasignados por el firmware del disco duro, pero estos son relativamente raros, y solo una pequeña cantidad de datos estaría contenida. dentro, sin mencionar que necesitarías un equipo muy especializado para recuperar esos datos (tendrías que editar la G-List dentro del System Area del System Area de la unidad para llegar a ella), sin mencionar que la razón por la cual esos sectores fueron reasignadas en primer lugar es porque estaban fallando.

Para resumir, las toallitas DoD son estúpidas, las toallitas Gutmann son más estúpidas, usan /dev/zero , es bueno en casi el 100% de todos los casos. Y si se trata de un caso límite, entonces necesita tener un conocimiento muy especializado para obtener los datos y también eliminar los datos.

"¡Gracias! ¿Y qué hay de la memoria USB?"

La memoria USB es un animal completamente diferente, necesitaría pasar por alto el controlador de flash para limpiarlo, incluso una toallita Gutmann no eliminará completamente los datos debido a los algoritmos de nivelación de desgaste. Pero al igual que un disco duro, si sobreescribes los datos una vez, desaparecen, el truco es forzar al dispositivo a sobrescribir los datos.

Dicho esto, si tienes una memoria USB barata sin un controlador que usa nivelación, entonces un solo paso de llenado 0 debería ser suficiente para eliminar los datos dentro. De lo contrario, está buscando hardware personalizado y trabajo de soldadura.

Los SSD se deben considerar memorias USB con un controlador que realiza la nivelación del desgaste. Los SSD siempre usarán nivelación, no conozco ninguna excepción a esta regla. Muchas memorias USB no.

¿Cómo se puede saber si una memoria USB usa nivelación? Debe desmontar e inspeccionar el chip del controlador y buscar una hoja de datos en él.

"¿Darías una fuente para la afirmación de que es" imposible obtener señales de sectores del disco que no se han sobrescrito por completo "? No estoy hablando de pruebas de revistas informáticas sobre tiendas de recuperación de datos, estoy hablando del peor de los casos: una laboratorio gubernamental bien equipado. Así que realmente me gustaría saber cómo se puede garantizar esa declaración, preferiblemente un documento científico ".

Daré alguna justificación e información con respecto al almacenamiento analógico de datos digitales en medios magnéticos. Lo siguiente es principalmente cosas que me enseñaron mientras estaba en el trabajo en una compañía de recuperación de datos, y pueden ser parcialmente inexactas en algunos lugares. Si es así, avíseme, lo corregiré. Pero esta es mi mejor comprensión del material.

Después de que se fabrica un disco duro, lo primero que sucede es que recibe las etiquetas servo de una máquina de escritura de etiquetas servo. Esta es una máquina separada cuyo único trabajo es tomar un disco duro completamente vacío y arrancarlo. (Esta es la razón por la cual los discos duros tienen agujeros cubiertos con cinta de aluminio, ahí es donde la servo etiquetadora coloca sus cabezales de escritura). Si alguna vez tuvo una unidad que cuando la encendió generó un "clic clic". es porque no podía leer las etiquetas servo. Cuando se enciende un disco duro, lo primero que intenta hacer es arrojar sus cabezas de lectura a alguna parte del plato y adquirir una pista. Las servo etiquetas definen las pistas. Si no puede ver una servoetiqueta, llega al medio, hace un sonido metálico, tira del brazo hacia atrás y lo intenta de nuevo.

La razón por la que menciono esto, es que es prácticamente la única instancia que un dispositivo externo lee y escribe en el disco duro y describe aproximadamente el límite de que el hardware externo a las unidades de lectura puede funcionar con los datos en un plato. Si fuera posible hacer las servoetiquetas más pequeñas y los fabricantes de discos duros más eficientes en el uso del espacio lo harían. Las servoetiquetas son comparativamente ineficientes en el espacio por dos razones.

  1. Es absolutamente crítico que no fallen. Si una servoetiqueta falla, cada vez que la cabeza pasa por encima de esa servoetiqueta en particular perderá la pista, esto pragmáticamente significa que toda la pista no se puede usar.
  2. Hace una idea de cuánto mejor es el hardware del disco duro para tratar la información en bandejas que la maquinaria externa.

Un anillo de servoetiquetas define una pista. Hay algunas cosas que debes saber sobre pistas.

  1. No son necesariamente circulares. Son imperfectos y pueden contener warps. Esto se debe a que la máquina de etiquetado servo no es precisa.
  2. No son necesariamente concéntricos. Ellos pueden y se cruzan. Esto significa que ciertos sectores o pistas completas pueden ser inutilizables solo porque la máquina de etiquetado servo sea inexacta.

Después de escribir las etiquetas servo, aparece el formato de bajo nivel. Un formato real de bajo nivel de 1980 de un disco, excepto más complicado. Debido a que los platos son circulares pero las velocidades del disco duro son constantes, la cantidad de área que pasa debajo del cabezal de lectura es una función variable de la distancia al centro del plato. Por lo tanto, en un esfuerzo por exprimir hasta la última gota de almacenamiento de un plato, la densidad del plato es variable y se define en las zonas. En un disco duro típico de 3.5 "habrá varias docenas de zonas con diferentes densidades de platos.

Uno de los cuales es densidad especial y muy baja llamada System Area . El área del sistema es donde se almacenan todos los ajustes de firmware y configuración en la unidad. Tiene una densidad muy baja porque esa información es más importante. Cuanto menor es la densidad, hay menos posibilidades de que algo se enrede al azar. Ocurre todo el tiempo, por supuesto, pero con menos frecuencia que algo en el área de usuario.

Después de formatear el disco en un nivel bajo, el firmware se escribe en el Área del sistema. El firmware es diferente para cada unidad. Con el fin de optimizar el disco para los requisitos ridículamente finos de los platos, cada unidad debe ser ajustada. (En realidad, esto tiene lugar antes del formato de bajo nivel, por supuesto, porque debe saber qué tan bueno es el equipo para decidir qué tan denso es hacer los platos). Estos datos se conocen como adaptives y se guardan en el Área del sistema. La información en el área de adaptaciones es algo así como "cuánto voltaje debería usar para corregirme cuando las etiquetas servo me dicen que me estoy desviando de la pista", y otra información necesaria para que el disco duro realmente funcione. Si los adaptativos están apagados, podría ser imposible acceder al área de usuario. El área del sistema es más fácil de acceder, por lo que se requieren muy pocos adaptativos para ser almacenados en el PCB CMOS.

Alejarse de este párrafo:

  1. Menor densidad significa más fácil de leer.
  2. Cuanto mayor es la densidad, más probable es que las cosas se arruinen aleatoriamente.
  3. El área de usuario tiene la mayor densidad que el fabricante del disco duro puede tener.
  4. Si esto parece slamdash y descuidado, es porque realmente lo es. Los fabricantes de discos duros compiten y ganan en precio por GB. El diseño del disco duro no se trata de fabricar piezas de equipo cuidadosamente fabricadas y armarlas con mucho cuidado, porque eso ya no es suficiente. Claro, todavía hacen eso, pero también tienen que hacer que las piezas funcionen juntas en el software porque las tolerancias de hardware son demasiado amplias para ser competitivas.

Asi que. Debido a que el usuario tiene una densidad tan alta, en realidad es muy (muy, muy) probable que se arruinen en el curso normal de las cosas. Esto puede ser causado por muchos, muchos factores, incluyendo problemas de sincronización muy leves y degradación del plato. Un buen porcentaje de sectores de su disco duro en realidad contienen bits dañados. (Puede verificarlo usted mismo al emitir un comando ATA28 READLONG a su unidad (solo válido para los primeros 127 GB más o menos. No hay equivalente de ATA48 ) varias veces en muchos sectores y comparando la salida. Encontrará que no es raro que ciertos bits se porten mal y actúen como si estuvieran chupando o apagando o incluso volteando al azar). Es un hecho de la vida. Por eso tenemos ECC.

ECC es una suma de comprobación contenida después de los 512 (o 4096 en unidades más nuevas) bytes de datos que corregirán esos datos si tiene pocos bits incorrectos suficientes. El número exacto depende del firmware y el fabricante, pero todas las unidades lo tienen y todas las unidades lo necesitan (y es sorprendentemente más alto de lo que cabría esperar, algo así como 48-60 bytes que pueden detectar y corregir hasta 6-8 bytes de error. las matemáticas están pasando.) Esto se debe a que la densidad de los platos es demasiado alta, incluso para el equipo de disco duro interno altamente especializado y sintonizado.

Finalmente, quiero hablar sobre el chip de preamplificador. Está ubicado en el brazo del disco duro y actúa como un megáfono. Debido a que las señales se generan desde campos magnéticos muy pequeños, actuando sobre cabezas muy pequeñas tienen un potencial muy pequeño. Por lo tanto, no puede usar el cabezal del disco duro para el método Gutmann, porque no puede obtener una lectura lo suficientemente precisa para hacer que la técnica de Gutmann valga la pena.

Pero supongamos que la NSA tiene una pieza de equipo mágico, y pueden obtener una lectura muy precisa (lo suficientemente precisa para calcular el potencial y derivar los datos escritos previamente) de cualquier bit en particular en 1 ms. ¿Qué necesitan primero?

Primero, necesitan el área del sistema. Porque ahí es donde se almacena el Traductor (el traductor es lo que convierte una dirección de LBA en una dirección de PCHS (Sector de Cilindro Físico en comparación con la dirección lógica de CHS que es falsa y solo por razones heredadas). El tamaño del Sistema El área varía, y puede obtenerla sin recurrir a herramientas mágicas. Normalmente, es solo alrededor de 50-100 MB. El diseño del traductor es específico del firmware, por lo que debe revertirlo (pero ya se ha hecho antes, no es gran cosa).

Entonces primer problema, señal a ruido. Como se mencionó, la densidad del plato está ajustada mucho más arriba y es estrictamente segura. El método de Gutmann requiere una variación muy baja en la actividad de lectura / escritura normal para calcular los estados previos de los bits con cualquier precisión. Si la varianza en la señal es significativa, puede arruinar estos intentos. Y la variación es lo suficientemente significativa como para arruinarlo por completo (es por eso que ECC está tan loco en las unidades modernas). Una analogía sería como tratar de escuchar perfectamente a alguien susurrándote mientras alguien te está hablando en medio de una habitación ruidosa.

Segundo problema, tiempo. Incluso si el microscopio electrónico es muy rápido y preciso (1 ms por bit! Eso es un rayo para un microscopio electrónico. También es más lento que un módem de 1200 baudios), hay MUCHOS datos en un disco duro y una imagen completa tomará una muy largo tiempo. (WA dice 126 años para un disco duro completo de 500GB, y eso NO incluye datos ECC (que necesita). También hay muchos otros metadatos asociados con los sectores de disco duro que no mencioné, como campos de ID y marcadores de direcciones, pero estos no se sobrescriben, ¿tal vez se te ocurra una forma más rápida de crear una imagen de ellos normalmente? Sin duda, hay formas de acelerar este proceso (como imágenes de forma selectiva de partes de la unidad) pero incluso eso te llevará meses de 24 / 7 durante todo el día funcionan solo para obtener el archivo $MFT en un disco duro estándar (por lo general, alrededor de 50-300 MB en una unidad con Windows instalado)).

Tercer problema, admisibilidad. Si el gobierno está detrás de ti, te persiguen por unas pocas razones, quieren saber algo que tú sabes, o quieren arrestarte y encarcelarlo. Hay formas más sencillas de obtener el primero (criptografía con manguera de goma), y el segundo requerirá procedimientos de pruebas regulares. Volviendo a la analogía, si alguien atestigua que alguien le dijo algo en un susurro, mientras que otra persona estaba hablando con ellos en el medio de una habitación llena de gente y ruidosa, hay mucho espacio para dudas allí. Nunca sería el tipo de evidencia sólida que quisiera gastar mucho tiempo y dinero.