¿Cómo puedo separar los archivos de dos sistemas operativos con cifrado sin usar TrueCrypt?

3

Quiero crear un arranque dual para que el contenido de cada sistema operativo se separe del otro mediante el cifrado. El punto principal sería probar el software potencialmente dañino en un sistema operativo y seguir siendo capaz de confiar en la integridad del otro sistema operativo.

El usuario A usa el sistema operativo A y el usuario B usa el sistema operativo B. Supongamos que:

  • ambos sistemas operativos son Windows 7.
  • dos particiones diferentes, una para cada copia de Windows.
  • una unidad de almacenamiento físico disponible, como en una computadora portátil
  • los usuarios de cada sistema operativo desean utilizar la fuerza bruta (no en comparación con los demás) mediante el uso de hardware adjunto o el uso de software de terceros con lectores de tarjetas
  • es aceptable que cada usuario pueda destruir las ventanas de otros usuarios borrando o sobrescribiendo una partición.

Sin embargo, ninguno de los usuarios debe poder acceder o modificar los datos de texto sin formato de la partición del otro usuario.

En el pasado he arreglado esto con TrueCrypt y Hidden OS. Estoy buscando otras ideas que sean fáciles de implementar y, lo que es más importante, que no lleven mucho tiempo. Preferiría un acuerdo que incluyera solo software de código abierto.

¿Es esto posible? Si es así, ¿cómo?

    
pregunta Simply G. 30.05.2014 - 11:32
fuente

2 respuestas

0

La respuesta correcta a esto es que realmente no puedes.

Hay varias formas de aproximar la solución que usted describe, pero de ninguna manera puede estar seguro al 100%. Hay un adagio en el mundo de la seguridad de que el acceso físico es del 75% * del juego. Este es un gran estudio de caso por mucho que eso es cierto.

El escenario que describe y la solución que cree que está buscando funcionará, para todos los propósitos prácticos, la mayor parte del tiempo. Habrás hecho muy difícil para cualquiera de los usuarios comprometer al otro. Pero difícil es diferente de lo imposible.

No importa lo que haga con cada partición y el software que contiene, no cambia el hecho de que en algún momento el otro usuario vendrá a descifrar su propia partición y ejecutará su Software propio. Con acceso físico a la máquina y el entorno de software de bajo nivel en ella, es posible comprometer el sistema.

El problema teórico aquí es el mismo que el de un escenario de virtualización con un host y un invitado. Como sistema operativo invitado, nunca debe asumir que su caja es completamente independiente del host. Es posible que no pueda comprometer al host, pero es casi seguro que el host le puede comprometer a usted. Si no confías en tu máquina host, tampoco deberías confiar en tu invitado.

Vuelve a tu escenario. Aunque no está utilizando la virtualización, el efecto es aproximadamente el mismo. Tanto el Usuario A como el Usuario B tienen acceso directo y pueden ponerse en el rol de anfitrión. Todo lo que tienen que hacer para comprometer al otro es jugar algunos trucos en la otra partición y el sistema operativo para que juegue inadvertidamente el papel de un invitado.

La forma más obvia de hacer esto sería comprometer el cargador de arranque con un rootkit. Otros vectores de ataque también vienen a la mente, pero por mucho tiempo y por lo menos es que NUNCA debe asumir que el hardware bajo el control total de otro usuario y el entorno de software se puede usar sin modificar sin que pueda comprometerse.

Lo más probable es que la solución aquí sea dar acceso ni a A ni a B al metal y darles a ambos un entorno de invitado de lado a lado. Suponiendo que ninguno de ellos tenga acceso al host. Esta sería una manera más segura de ir. (No es perfecto, ya que se basa en la calidad de su sistema de virtualización, pero es mejor que saber que su host está siendo utilizado por otro host).

Hablando de manera pragmática, rara vez existe un caso en el que una máquina virtual no pueda hacer lo que necesita, incluido el acceso a lectores de tarjetas u otros dispositivos de hardware. En el caso poco frecuente de que ese no sea el caso, deberá separar sus entornos de la única manera: físicamente. Si el usuario A y el usuario B no confían el uno en el otro y ambos necesitan un acceso de bajo nivel al hardware, ¡entonces dales a cada uno su propio hardware!

* Donde el porcentaje exacto es un número alto aleatorio creado en el lugar.

    
respondido por el Caleb 03.06.2014 - 07:58
fuente
2

Basándose en una sola unidad física, puede dividirla en dos particiones. Instale Windows 7 en cada uno, y luego use BitLocker (asumiendo que tiene Professional Enterprise o Ultimate [felicitaciones a paulmorriss]) para cifrar los respectivos volúmenes del sistema.

Cuando instale el segundo sistema operativo Windows 7 en la otra partición, le pedirá que modifique el cargador de arranque para reflejar ambos sistemas operativos. Puede cambiar el nombre que aparece durante el inicio con la herramienta de línea de comandos bcdedit (disponible en Windows Vista y posteriormente, reemplazó la configuración boot.ini ).

Editar : Mis disculpas, acabo de ver el requisito de código abierto. Al revisar las opciones enumeradas aquí , no hay muchas opciones que cumplan con sus requisitos. El que lo hace es ProxyCrypt , pero para el propósito de cifrar particiones, debe usarse con otros terceros. herramientas (por ejemplo, afirman que Arsenal Image Mounter también deberían usarse).

Si desea que sea rápido y fácil, use BitLocker y particiones separadas. Si quieres código abierto, echa un vistazo a ProxyCrypt.

    
respondido por el technica.scholaris 30.05.2014 - 16:16
fuente

Lea otras preguntas en las etiquetas