¿Estaría seguro el cifrado de las matrices RAID6 de SSD?

2

Dada la incertidumbre acerca de que se dejen los datos en claro, he dudado en usar SSD donde necesito cifrado de disco completo. Si bien algunos SSD emplean cifrado de hardware, son bastante caros, y hay transparencia inadecuada sobre la implementación .

Me he estado preguntando si las matrices RAID6 de SSD podrían cifrarse de forma segura utilizando dm-crypt / LUKS. De acuerdo con Wikipedia, RAID6 "usa bandas a nivel de bloques con dos bloques de paridad distribuidos en todos los discos miembros". Si bien algunos datos pueden dejarse en claro en cada uno de los SSD miembros, parece poco probable que esos restos se puedan ensamblar y descifrar correctamente. ¿Es una suposición plausible?

Editar: estaría cifrando el volumen RAID6, conteniendo todo excepto boot, usando dm-crypt / LUKS. El volumen RAID6 encriptado se utiliza para LVM2, con volúmenes para swap y / o home. Un volumen pequeño (sin cifrar) RAID6 contiene inicio.

Editar: En Preguntas frecuentes sobre cryptsetup , veo que la clave El problema con los SSD y dm-crypt / LUKS es que el SSD puede mover un sector que contiene claves y slots y el encabezado LUKS a un conjunto de sectores descartados, y que estos sectores descartados pueden permanecer indefinidamente antes de ser borrados. Esto podría interrumpir la desactivación de una ranura de clave comprometida (frase de contraseña) o hacer que todo el volumen no esté disponible al sobrescribir el encabezado LUKS con datos aleatorios.

Sin embargo, aparentemente no hay riesgo de que se filtren directamente datos encriptados, porque el texto sin formato solo existe en la RAM. Solo se descartarían los sectores cifrados (excepto las ranuras de clave y el encabezado LUKS, que obviamente no están cifrados).

Editar: Después de reflexionar, casi he vuelto a la pregunta original. Dado que las ranuras clave y el encabezado LUKS residen en el volumen RAID6, solo una franja de ellas podría permanecer en sectores descartados en cualquier disco miembro. A menos que eso ocurriera de manera consistente en los miembros de la N-2, lo que parece poco probable, nada sería recuperable. Derecho?

    
pregunta mirimir 20.01.2014 - 03:05
fuente

2 respuestas

1

No hay seguridad implementada en RAID6. Por lo que deduzco a su pregunta, está sugiriendo que la disposición de los datos en los discos puede hacer que sea difícil obtener datos significativos, pero no del todo imposible. Si es una matriz saludable, entonces es completamente posible.

La idea errónea principal sobre el cifrado en SSD es que las personas creen que es imposible de lograr sin la "fuga de datos". Esto se debe al hecho de que, a diferencia de las unidades de disco duro, el sistema operativo generalmente no puede abordar sectores del SSD directamente para leer / escribir. Esto se debe a que el firmware en el SSD implementa un algoritmo de nivelación de desgaste que elige dónde almacenar realmente los datos en función de qué bloques flash se han escrito o no, en un intento de extender las escrituras a todos los bloques flash de la manera más uniforme posible ( prolongando así sus SSDs MTBF). Esto se realiza independientemente de donde el sistema operativo lo solicite por LBA.

En última instancia, esto significa que si elige cifrar un SSD después de que ya tiene datos almacenados en texto sin formato, usted, como forastero del firmware de SSD, no tiene forma de asegurarse de que los datos almacenados en los bloques flash crudos no lo hagan. t tiene información sensible Pero si nunca se escriben datos de texto sin formato en el SSD, nunca puede haber una fuga de información confidencial porque el SSD nunca ve texto en claro. Por lo tanto, es irrelevante que el algoritmo de nivelación del desgaste resuma la información de ubicación de datos reales, porque todos los datos están protegidos.

Creo que se han escrito otros ataques a SSD, como la capacidad de recuperar datos de otros invitados de VM en entornos virtualizados, pero nuevamente si el contenedor de VM está empleando cifrado de disco completo (FDE), entonces sin las claves de descifrado de otros invitados Sólo veremos basura.

    
respondido por el deed02392 20.01.2014 - 13:05
fuente
0

En una especie de respuesta a la respuesta deed02392 , hay maneras de solucionar estos problemas, pero depende en gran medida sobre cómo se configura su matriz. Estoy totalmente de acuerdo en que RAID-6 por sí solo está en absolutamente de ninguna manera segura , la gente quiere poder agregar y eliminar unidades de una matriz RAID y desea recuperarse en caso de que una unidad muera, por lo que si eso es posible, puede estar seguro de que un adversario con acceso físico a los discos podría obtener lo que quiere una vez que descubra en qué orden están las unidades.

Si tuviera que configurar un RAID-5, RAID-6 (o 1, 10, 50 o 60) y valorara la confidencialidad de los datos, esto es lo que haría.

Emite borrados seguros

Inmediatamente después de recibir los dispositivos, emita los comandos de borrado seguro de SATA en todas las unidades. No escriba nada en los discos en absoluto. Si eres innecesariamente paranoico, dd if=/dev/zero of=/path/to/device . Recuerda hacer esto en todos tus dispositivos.

Configurar la matriz RAID

Su proceso se dividirá en varias posibilidades aquí.

Hardware RAID

Si está usando hardware RAID, deberá desconectar todas las unidades después de emitirles el comando de borrado seguro SATA (y escribir ceros, lo cual es bastante innecesario y solo lo hace sentir más seguro) y enchúfelos a su controlador RAID. Ingrese a su BIOS RAID o configure la configuración RAID desde el sistema operativo que elija, aunque generalmente es más fácil trabajar con el BIOS RAID que ejecutar una serie de comandos que parecen estar diseñados para ser confusos. Configure su nivel de RAID, luego reinicie en un Linux seguro, tal vez Kali si está paranoico.

Software RAID

Esto es más complicado y aquí tienes varias opciones. LVM? ZFS? BTRFS? Hay varias formas de configurar el software RAID, por lo que no puedo ser de mucha ayuda aquí, búscalo por ti mismo. Solo asegúrese de que al final de toda la configuración, tenga un solo dispositivo (virtual, probablemente) en el que pueda escribir, que abarque correctamente la longitud de la matriz.

Aleatorizar todo el intervalo de la matriz

Este paso es opcional, pero muy recomendable. Protege contra ciertas inquietudes de negación, que explicaré a continuación. No te protegerá si estás obligado a descifrar la matriz de alguien. La forma más sencilla de hacer esto es usar /dev/urandom o otro cifrado seguro con dd para sobrescribir todo:

dd if=/dev/urandom of=/dev/mapper/raid6blockdevice bs=SECTOR_SIZE

Utilice parted /dev/mapper/raid6blockdevice print para determinar SECTOR_SIZE . Esto podría tardar bastante tiempo en completarse.

El resultado de este paso es que cada bit en la matriz tal como existe en el SSD es efectivamente aleatorio. Alguien no puede decir "cuán lleno" está su sistema de archivos, ya que todo es bits aleatorios, como el resultado de un buen cifrado debe ser indistinguible de los datos aleatorios .

Configuración de LUKS / TrueCrypt / VeraCrypt / Tu disco de encriptación de elección

Utilizando el arma de encriptación de su disco, encripte su dispositivo de bloqueo, luego instale un sistema de archivos en su interior.

En respuesta a sus inquietudes sobre el SSD que almacena secretamente el encabezado del volumen LUKS, tiene razón en que es posible. Compre un dispositivo flash USB de $ 5 y almacene el encabezado LUKS allí en lugar de en la matriz SSD. Creo que hay una manera de hacer eso.

Sin eso, tenga en cuenta que si alguna vez tuvo que quemar la casa (¡destruya todo!), tendría que tener acceso físico para sacar todos los SSD del servidor, conectarlos a SATA y protegerlos. borrar. Incluso con eso dicho, es difícil estar completamente seguro de que todo se ha borrado realmente. Comience a trabajar en el campo de recuperación de datos y encuentre un SSD que se borre de forma segura, o al menos pregunte a un amigo en ese campo. Sin garantías y en un enlace, probablemente solo escribiría un bucle que siempre vuelve a escribir el encabezado LUKS con datos aleatorios con la esperanza de que el SSD con toda esa escritura eventualmente reemplazaría cualquier dato secuestrado con datos nuevos de aleatoriedad.

    
respondido por el Naftuli Kay 21.01.2015 - 19:25
fuente

Lea otras preguntas en las etiquetas