La contraseña de escritura protege un disco duro externo (DOK) sin cifrado [duplicado]

0

Estoy entregando un dispositivo USB a los estudiantes y quiero que regresen después de que hayan copiado el material en sus computadoras personales.

Quiero asegurarme de que la devolución del usb no presente ningún daño / malware (de manera intencional o no intencional, es decir, su computadora podría verse afectada por virus).

¿Hay alguna forma de configurar las memorias USB de modo que no sea posible escribir sin conocer una cierta clave / frase de contraseña? la lectura de ella debe ser permitida. No me importa el cifrado, quiero decir, si eso resuelve el problema, no me importa hacerlo, pero por lo que sé, solo cifrar el disco no distingue entre los accesos de lectura y escritura.

En cualquier caso, estoy trabajando con Ubuntu.

    
pregunta Bush 20.11.2017 - 07:49
fuente

1 respuesta

1

Hardware

No es posible proteger contra escritura un dispositivo USB a través del protocolo de almacenamiento masivo USB estándar. Necesitaría encontrar un proveedor de unidades flash que lo proporcione como una característica adicional. Asegúrese de que esté implementado en hardware, y no como un programa tonto que uno tiene que ejecutar para que se apliquen las protecciones. Seguramente hay algunos por ahí, pero probablemente sean costosos, y muchos de ellos pueden ser fáciles de evitar.

Tenga en cuenta que, incluso con hardware, no será necesariamente difícil para un atacante hábil o simplemente inteligente para eludir. Muchas unidades flash pueden tener su firmware sobrescrito, lo que necesariamente deshabilitará cualquier protección contra escritura. Yo recomendaría contra una solución de hardware por esta razón.

Hash lists, almacenadas en su computadora

Si su presupuesto es bajo y su modelo de amenaza no incluye adversarios particularmente avanzados que puedan explotar el firmware de la unidad flash o los controladores del sistema de archivos, entonces la solución puede ser tan simple como generar una lista hash y revisar la lista cuando Se devuelven las unidades. Si alguno de los hashes no coincide, sabrá que se ha modificado un archivo. Una forma sencilla de generar una lista hash utilizando Linux, utilizando rutas relativas para evitar problemas si la ubicación del punto de montaje es diferente:

Para generar una lista hash y guardarla en su casa:

cd /media/usb
find . -type f -exec sha1sum {} + > ~/SHA1SUMS

Para verificar la lista de hash:

cd /media/usb
sha1sum -c ~/SHA1SUMS

Listas hash firmadas, almacenadas en el USB

Si no desea almacenar un archivo separado con una lista hash para cada dispositivo USB, también puede poner una lista hash firmada en la unidad. Esto funciona básicamente de la misma manera, pero en lugar de mantener la lista hash en su propia computadora, la mantiene en el USB, usando una clave de firma para que pueda saber si se ha modificado. Esta es una técnica común utilizada para distribuir software de forma segura también. Deberá crear una clave para firmar con GPG.

Para generar y firmar una lista de hash:

cd /media/usb
find . -type f -exec sha1sum {} + > SHA1SUMS
gpg --clearsign SHA1SUMS -o SHA1SUMS.asc -b

Para verificar la lista de hash:

cd /media/usb
gpg --verify SHA1SUMS.asc
sha1sum -c SHA1SUMS

Es probable que pueda automatizar todo esto con un script.

dm-verity

Otra solución de Linux, mucho más poderosa que los hash trees, implica el uso de una función llamada dm-verity , originalmente diseñado para proteger el proceso de arranque de Android. Cuando se usa una unidad con dm-verity, se usa una clave de firma maestra para firmar el root hash . El hash raíz cambiará si cualquier cosa en la partición con dm-verity cambia, y la clave de firma ya no la validará. De forma predeterminada, cualquier cambio hará que ese archivo no sea legible. Esto es mucho más seguro porque no se puede omitir sin conocer la clave secreta de firma y se puede usar en cualquier dispositivo de almacenamiento.

Esta solución es más eficiente que el uso de una lista hash, ya que los archivos solo se verifican cuando se accede a ellos, lo que elimina la necesidad de verificarlos todos a la vez. Sin embargo, la partición se hará de solo lectura, por lo que agregar un nuevo archivo requerirá volver a formatear la unidad. Esto es genial si escribe una vez, lee muchas situaciones, pero no es tan bueno si tiene que agregar nuevos archivos a la unidad flash y redistribuirlos todo el tiempo.

    
respondido por el guest 20.11.2017 - 09:28
fuente

Lea otras preguntas en las etiquetas